MCP Mercado Público
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Mercado Público Show me today's active licitaciones"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
🇨🇱 MCP Mercado Público
Servidor Model Context Protocol (MCP) para la API pública de Mercado Público / ChileCompra. Permite que asistentes de IA consulten licitaciones, órdenes de compra y empresas del Estado chileno en tiempo real.
🔑 Paso 1: Obtener tu ticket gratuito
Antes de usar el servidor necesitas tu propio ticket (API key):
Iniciar sesión con Clave Única
Completar el formulario → el ticket llega a tu correo
El servidor no almacena credenciales. El ticket se pasa como parámetro en cada consulta.
Related MCP server: chile-procurement
⚙️ Paso 2: Configurar en tu IDE
No necesitas clonar ni compilar nada. Usa npx directamente.
Tienes dos formas de pasar tu ticket:
Método | Cuándo usarlo |
Variable de entorno | Configuras el ticket una sola vez en el IDE — el asistente nunca te lo pedirá |
Parámetro | Si no configuraste la env var, pásalo directamente en cada consulta |
Se recomienda usar la variable de entorno para una experiencia fluida.
Claude Desktop
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"mercado-publico": {
"command": "npx",
"args": ["-y", "mcp-mercado-publico"],
"env": {
"MERCADO_PUBLICO_TICKET": "TU-TICKET-AQUI"
}
}
}
}Reinicia Claude Desktop después de guardar.
Cursor
Global ~/.cursor/mcp.json · Por proyecto .cursor/mcp.json
{
"mcpServers": {
"mercado-publico": {
"command": "npx",
"args": ["-y", "mcp-mercado-publico"],
"env": {
"MERCADO_PUBLICO_TICKET": "TU-TICKET-AQUI"
}
}
}
}Verifica en Settings → MCP que el servidor aparezca con punto verde.
VS Code (GitHub Copilot)
Requiere VS Code 1.99+ y Copilot en Agent mode.
Por proyecto .vscode/mcp.json:
{
"servers": {
"mercado-publico": {
"type": "stdio",
"command": "npx",
"args": ["-y", "mcp-mercado-publico"],
"env": {
"MERCADO_PUBLICO_TICKET": "TU-TICKET-AQUI"
}
}
}
}Global en settings.json:
{
"mcp": {
"servers": {
"mercado-publico": {
"type": "stdio",
"command": "npx",
"args": ["-y", "mcp-mercado-publico"],
"env": {
"MERCADO_PUBLICO_TICKET": "TU-TICKET-AQUI"
}
}
}
}
}Antigravity (Google DeepMind)
C:\Users\<usuario>\.gemini\antigravity\claude_desktop_config.json
{
"mcpServers": {
"mercado-publico": {
"command": "npx",
"args": ["-y", "mcp-mercado-publico"],
"env": {
"MERCADO_PUBLICO_TICKET": "TU-TICKET-AQUI"
}
}
}
}Windsurf (Codeium)
C:\Users\<usuario>\.codeium\windsurf\mcp_config.json
{
"mcpServers": {
"mercado-publico": {
"command": "npx",
"args": ["-y", "mcp-mercado-publico"],
"env": {
"MERCADO_PUBLICO_TICKET": "TU-TICKET-AQUI"
}
}
}
}Desarrollo local (sin publicar en npm)
Si estás modificando el código fuente, compila primero y apunta al binario local:
npm install && npm run build{
"mcpServers": {
"mercado-publico": {
"command": "node",
"args": ["D:\\PROGRAMACION\\NEST-JS\\mcp-mercado-publico\\dist\\main.js"]
}
}
}🛠️ Herramientas disponibles
Tool | Descripción |
| Lista licitaciones por fecha, estado, proveedor u organismo (nombre o código) |
| Busca licitaciones en un rango de fechas (máximo 30 días) |
| Detalle completo de una licitación por su código |
| Lista órdenes de compra por fecha, estado, proveedor u organismo (nombre o código) |
| Detalle completo de una OC por su código |
| Busca un proveedor por su RUT |
| Lista todos los organismos públicos disponibles |
| Busca un organismo público por nombre — retorna su CodigoOrganismo |
| Retorna la estructura de respuesta JSON de la API nativa para cualquier entidad |
| Retorna los parámetros funcionales y diccionarios de anexos para consultar la API |
| Muestra ejemplos reales de URIs HTTP de la API y los distintos formatos soportados |
| Muestra la guía completa de uso del MCP, referencias de códigos y límites operativos |
💬 Ejemplos de uso
Una vez configurado, puedes preguntarle al asistente cosas como:
¿Cuáles son las licitaciones activas de hoy?
Mi ticket es F8537A18-6766-4DEF-9E59-426B4FEE2844Busca la licitación con código 1509-5-L114 usando mi ticket ABC123-...¿Qué órdenes de compra aceptadas existen para el 01042026?Busca las licitaciones de la Municipalidad de Alto del CarmenBusca el proveedor con RUT 70.017.820-k📋 Referencia de estados
Licitaciones — parámetro estado
Valor para | Código en respuesta |
| Todas las publicadas hoy |
| 5 |
| 6 |
| 7 |
| 8 |
| 18 |
| 19 |
| Todos los estados |
Órdenes de Compra — parámetro estado
Valor para | Código en respuesta |
| 4 |
(sin query param) | 5 (En proceso, solo en respuesta) |
| 6 |
| 9 |
| 12 |
| 13 |
| 14 |
| 15 |
| Todos los estados |
Formato de fecha
La API usa ddmmaaaa. Ejemplos: 07042026 → 7 de abril de 2026.
📦 Publicar en npm
npm login
npm publish # ejecuta npm run build automáticamente (prepublishOnly)🏗️ Estructura del proyecto
src/
├── main.ts # Bootstrap (modo stdio)
├── app.module.ts
├── common/
│ └── constants/
│ └── api.constants.ts # BASE_URL, endpoints, códigos de estado
├── mercado-publico/
│ ├── interfaces/mercado-publico.interfaces.ts # Tipos de parámetros
│ ├── helpers/query-builder.helper.ts # Construcción de query params
│ ├── mercado-publico.service.ts # Cliente HTTP
│ └── mercado-publico.module.ts
└── mcp/
├── constants/tool-schemas.constants.ts # Campos Zod reutilizables
├── tools/
│ ├── licitaciones.tools.ts
│ ├── ordenes-compra.tools.ts
│ ├── empresas.tools.ts
│ ├── estructura.tools.ts
│ └── ayuda.tools.ts
├── mcp-server.ts
├── mcp.service.ts
└── mcp.module.ts⚠️ Limitación importante: archivos de licitaciones
Este MCP no tiene acceso a los archivos adjuntos de las licitaciones ni de las órdenes de compra (bases de licitación, anexos, especificaciones técnicas, resoluciones, etc.).
La API de Mercado Público no retorna links de descarga ni el contenido de los documentos. Solo expone los datos estructurados (metadatos) de cada proceso: montos, fechas, estados, ítems, organismos, etc.
Para acceder a los documentos debes ingresar directamente al portal: mercadopublico.cl
📝 Políticas y condiciones de uso de la API
Las limitaciones descritas a continuación no son impuestas por este servidor MCP, sino por la API oficial de Mercado Público (ChileCompra). Este servidor las respeta y documenta para que los usuarios las conozcan antes de usar el servicio.
Uso del ticket
El ticket se solicita mediante formulario oficial seleccionando la opción "Solicitud de Ticket".
Debe completarse con datos reales: nombre, apellido, RUT y correo electrónico.
Se entrega un único ticket por persona. Datos inconsistentes pueden derivar en limitación o suspensión del acceso.
ChileCompra usa los datos personales únicamente para operación, control y administración del servicio — no los comparte con terceros, salvo mandato judicial.
Límites de uso
10.000 solicitudes diarias por ticket — no modificable.
El uso excesivo o abusivo puede derivar en suspensión temporal o bloqueo permanente.
La API incluye validaciones por dirección IP: múltiples solicitudes desde la misma IP pueden generar restricciones.
Para procesos de alta demanda o descarga masiva, usar horario nocturno (22:00–07:00 hrs, Chile).
Soporte
Soporte únicamente a través del formulario de sugerencias del sitio web de ChileCompra.
Plazo de respuesta: máximo 3 días hábiles.
No se atienden solicitudes informales ni por correo institucional directo.
Responsabilidad
La API es un servicio adicional y voluntario — ChileCompra puede modificarla, suspenderla o darla de baja sin previo aviso.
ChileCompra no se hace responsable de la información publicada por terceros mediante aplicaciones que usen la API.
Al publicar datos obtenidos desde la API sin modificarlos, debe indicarse que la fuente es la Dirección ChileCompra.
Documentación oficial: chilecompra.cl/api
🤝 Fuente de datos
Datos de Mercado Público, Dirección ChileCompra, Ministerio de Hacienda, Gobierno de Chile.
Available Tools
12 toolsayudaAyuda — Guía completa del MCPA
Muestra la guía completa de uso del MCP Mercado Público: todas las herramientas disponibles, sus parámetros, ejemplos de uso, referencia de estados y límites de la API.
Inputs: no named parameters.
buscar_licitacionesBuscar LicitacionesA
Busca licitaciones en Mercado Público (ChileCompra). Sin parámetros opcionales retorna las licitaciones del día actual. Puedes filtrar por fecha, estado, proveedor u organismo. Para buscar por organismo usa nombreOrganismo (nombre o parte) o codigoOrganismo (código numérico). Sin fecha y con organismo/proveedor, busca automáticamente los últimos 30 días. Estados válidos: activas (publicadas hoy), publicada, cerrada, desierta, adjudicada, revocada, suspendida, todos. Códigos en la respuesta: Publicada=5, Cerrada=6, Desierta=7, Adjudicada=8, Revocada=18, Suspendida=19.
Inputs: ticket, fecha, estado, codigoProveedor, +2 more.
buscar_licitaciones_rangoBuscar Licitaciones por Rango de FechasA
Busca licitaciones en un rango de fechas (máximo 30 días). Realiza una consulta por cada día del rango y consolida los resultados en un solo listado. Útil para análisis históricos o reportes de períodos específicos. IMPORTANTE: cada día consume una solicitud del cupo diario (10.000 requests/ticket). Para rangos grandes se recomienda horario nocturno (22:00–07:00 hrs Chile).
Inputs: fechaInicio (required), fechaFin (required), ticket, estado, +2 more.
buscar_ordenes_de_compraBuscar Órdenes de CompraA
Busca órdenes de compra en Mercado Público (ChileCompra). Sin parámetros opcionales retorna todas las OC del día actual. Puedes filtrar por fecha, estado, proveedor u organismo. Para buscar por organismo usa nombreOrganismo (nombre o parte) o codigoOrganismo (código numérico). Sin fecha y con organismo/proveedor, busca automáticamente los últimos 30 días. Valores válidos para el parámetro estado: enviadaproveedor, aceptada, cancelada, recepcionconforme, pendienterecepcion, recepcionaceptadacialmente, recepecionconformeincompleta, todos. NOTA: el estado "en proceso" (código 5) solo aparece en la respuesta, no es filtrable como query param. Códigos en respuesta: EnviadaProveedor=4, EnProceso=5, Aceptada=6, Cancelada=9, RecepcionConforme=12, PendienteRecepcion=13, RecepcionadaParcialmente=14, RecepcionConformeIncompleta=15.
Inputs: ticket, fecha, estado, codigoProveedor, +2 more.
buscar_organismoBuscar Organismo Público por NombreA
Busca organismos públicos (municipios, ministerios, servicios, etc.) por nombre o parte del nombre. Útil para encontrar el CodigoOrganismo de una institución o municipio específico, como "Alto del Carmen", "Municipalidad de Santiago" o "Ministerio de Salud". El CodigoOrganismo retornado puede usarse directamente en buscar_licitaciones y buscar_ordenes_de_compra.
Inputs: nombre (required), ticket.
buscar_proveedorBuscar Proveedor por RUTA
Busca un proveedor en el registro de Mercado Público por su RUT. Retorna el código numérico interno, nombre y datos de registro del proveedor. El código retornado (CodigoProveedor) puede usarse en buscar_licitaciones y buscar_ordenes_de_compra.
Inputs: rut (required), ticket.
consultasConsultas y Parámetros (API Mercado Público)B
Devuelve CÓMO realizar las consultas: qué parámetros lógicos se aceptan y los anexos/diccionarios (ej: qué número es "Licitación Pública").
Inputs: entidad (required).
ejemplos_urlEjemplos de URLs (API Mercado Público)B
Muestra ejemplos reales de URLs y rutas soportadas (JSON, XML) con sus combinaciones, para saber cómo se arma exactamente una ruta HTTP hacia la API.
Inputs: entidad (required).
estructuraEstructura de Respuesta JSON (API Mercado Público)A
Devuelve única y exclusivamente la anatomía del JSON de respuesta que entrega la API (qué campos retornan, sus tipos, y estructura de anidación).
Inputs: entidad (required).
listar_compradoresListar Organismos CompradoresA
Retorna la lista completa de organismos públicos (compradores) registrados en Mercado Público. Incluye nombre y código numérico de cada organismo. El código (CodigoOrganismo) puede usarse en buscar_licitaciones y buscar_ordenes_de_compra. Para buscar por nombre de municipio o institución usa la herramienta buscar_organismo.
Inputs: ticket.
obtener_licitacionObtener Licitación por CódigoA
Obtiene el detalle completo de una licitación específica por su código único. Formato del código: XXXX-X-XXXXX (ej: 1509-5-L114). Retorna info detallada: ítems, fechas, montos, organismo comprador, adjudicación y estado.
Inputs: codigo (required), ticket.
obtener_orden_de_compraObtener Orden de Compra por CódigoA
Obtiene el detalle completo de una orden de compra por su código único. Formato del código: XXXX-XXX-XXXXX (ej: 2097-241-SE14). Retorna ítems, montos, proveedor, organismo comprador y estado.
Inputs: codigo (required), ticket.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 12 tools
Each tool has a clearly distinct purpose: help, searching licitaciones (daily and range), purchase orders, organizations, suppliers, plus detail retrieval and auxiliary documentation tools. No two tools overlap in functionality, and descriptions are precise.
Tool names use consistent Spanish snake_case style. Most follow a verb_noun pattern (buscar_*, listar_*, obtener_*), though a few are noun-only (ayuda, consultas, estructura, ejemplos_url). This minor deviation is still predictable and readable.
12 tools is well-scoped for a public procurement data server. It covers essential operations: search, detail retrieval, and lookups, along with helpful documentation tools, without being overwhelming or too sparse.
The tool set covers the full lifecycle of procurement data querying: searching licitaciones and orders by various filters, retrieving details, looking up organizations and suppliers, listing buyers, and providing API reference tools. No obvious gaps for the intended domain.
Maintenance
Related MCP Connectors
Public procurement for AI agents: Chile tenders and Compra Ágil, fit, buyer and supplier history.
Chile Government Procurement MCP — Mercado Público / ChileCompra (keyless-ish).
Chile DTE for AI agents - boleta/factura electronica via OpenFactura or LibreDTE. Stateless BYO.
Query Brazil's public procurement portal (PNCP): tenders, contracts and price records.
Related MCP Servers
- AlicenseAqualityBmaintenanceEnables AI agents to query, filter, and audit Chilean government procurement processes by integrating with the Compra Ágil v2 and Purchase Orders APIs. Provides tools for searching tender opportunities, tracking high-value bids with zero bidders, and enriching purchase order details.2443 npm2MIT
- AlicenseNot gradedqualityBmaintenanceEnables access to Chile's government procurement data (Mercado Público / ChileCompra) via MCP, allowing AI agents to query public procurement information.95 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to query Colombian government procurement data via MCP tools or natural language questions.91 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to query Ecuador government procurement (SERCOP/Compras Públicas) data without API keys, via natural language or direct tools.122 npmMIT