Consulta contratación pública de Colombia (SECOP I y II) desde datos.gov.co
Servidor MCP (Model Context Protocol) para consultar la contratación pública de Colombia a través de SECOP I y SECOP II.
Los datos se obtienen en tiempo real desde datos.gov.co (API SODA de Socrata) y son 100% públicos. No se almacena ningún dato localmente.
Este servidor permite que modelos de lenguaje como Claude consulten directamente los datos de contratación pública del Estado colombiano. Esto facilita:
| Dataset | Descripción | Fuente |
|---|---|---|
| SECOP I - Procesos | Datos históricos de procesos de compra pública | datos.gov.co |
| SECOP II - Procesos | Procesos de contratación transaccionales | datos.gov.co |
| SECOP II - Contratos | Contratos electrónicos con valores pagados/facturados | datos.gov.co |
| SECOP II - Proveedores | Proveedores registrados en la plataforma | datos.gov.co |
| Tool | Descripción |
|---|---|
buscar_secop1 | Buscar procesos en SECOP I por entidad, contratista, objeto, departamento, rango de fechas, etc. |
buscar_procesos_secop2 | Buscar procesos de contratación en SECOP II con filtros temporales |
buscar_contratos_secop2 | Buscar contratos electrónicos en SECOP II con filtros temporales |
buscar_proveedores | Buscar proveedores registrados en SECOP II |
buscar_por_persona | Buscar en TODOS los datasets por cédula/NIT o nombre de una persona |
resumen_contratacion | Vista condensada de contratos (campos clave: entidad, proveedor, valor, estado, fecha) |
agregaciones_contratacion | Totales agrupados por proveedor, entidad, departamento o modalidad |
consulta_libre | Consulta SoQL avanzada sobre cualquier dataset |
listar_datasets | Ver todos los datasets y sus campos disponibles |
# Con uv (más rápido)
uvx secop-mcp-server
# Con pip
pip install secop-mcp-server
uvx --from git+https://github.com/juandavidsernav/secop-mcp-server secop-mcp
git clone https://github.com/juandavidsernav/secop-mcp-server.git
cd secop-mcp-server
uv sync
# Instalación rápida desde PyPI
claude mcp add secop-colombia -- uvx secop-mcp-server
# O desde código fuente
claude mcp add secop-colombia -- uv run --directory /ruta/al/secop-mcp-server secop-mcp
Edita el archivo de configuración:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json{
"mcpServers": {
"secop-colombia": {
"command": "uvx",
"args": ["secop-mcp-server"]
}
}
}
Sin token funciona, pero con rate-limiting agresivo (~60 peticiones/hora). Obtén uno gratis:
Configúralo como variable de entorno:
{
"mcpServers": {
"secop-colombia": {
"command": "uvx",
"args": ["secop-mcp-server"],
"env": {
"SOCRATA_APP_TOKEN": "tu-token-aqui"
}
}
}
}
Una vez configurado, puedes pedirle a Claude cosas como:
secop-mcp-server/
├── secop_mcp/
│ ├── __init__.py # Documentación del paquete
│ ├── server.py # Servidor MCP y definición de herramientas (tools)
│ ├── client.py # Cliente HTTP para la API SODA de Socrata
│ └── datasets.py # Catálogo de datasets SECOP y sus metadatos
├── pyproject.toml # Configuración del paquete Python
├── LICENSE # Licencia MIT
└── README.md # Este archivo
Claude (LLM) <--MCP/stdio--> secop-mcp-server <--HTTP/SoQL--> datos.gov.co (API SODA)
buscar_contratos_secop2).Todo corre localmente en tu máquina. No hay servidor intermedio ni se almacenan datos.
Las contribuciones son bienvenidas:
git checkout -b feature/nueva-funcionalidad)git commit -m 'Agrega nueva funcionalidad')git push origin feature/nueva-funcionalidad)MIT - Libre para uso personal, comercial, modificación y redistribución.
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
uvx secop-mcp-serverMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-juandavidsernav-secop-mcp-server": {
"command": "uvx",
"args": [
"secop-mcp-server"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referencesecop-mcp-serverpypiio.github.juandavidsernav/secop-mcp-server works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.