{
  "name": "EditalMD",
  "description": "Encontre compras públicas, confira prazos, leia editais e consulte requisitos. Acompanhe oportunidades e mudanças. Busca grátis, sem cadastro.",
  "url": "https://editalmd.com",
  "provider": {
    "organization": "EditalMD",
    "url": "https://editalmd.com",
    "email": "contato@editalmd.com"
  },
  "documentationUrl": "https://editalmd.com/llms.txt",
  "protocol": "mcp",
  "protocolUrl": "https://modelcontextprotocol.io",
  "interfaces": [
    {
      "transport": "streamable-http",
      "url": "https://editalmd.com/mcp"
    }
  ],
  "capabilities": {
    "streaming": true,
    "pushNotifications": false,
    "authentication": "none"
  },
  "defaultInputModes": [
    "application/json"
  ],
  "defaultOutputModes": [
    "application/json",
    "text/markdown"
  ],
  "skills": [
    {
      "id": "api_index",
      "name": "api_index",
      "description": "Índice da API do EditalMD: rotas, regime de cobrança e preço.",
      "endpoint": "GET /api/"
    },
    {
      "id": "health",
      "name": "health",
      "description": "Saúde da origem e tamanho do acervo (compras e documentos com texto).",
      "endpoint": "GET /api/health"
    },
    {
      "id": "buscar_licitacao",
      "name": "buscar_licitacao",
      "description": "Busca compras públicas do PNCP por termo. Grátis. Devolve objeto, órgão, UF, modalidade e o id da compra.",
      "endpoint": "GET /api/busca"
    },
    {
      "id": "prazos",
      "name": "prazos",
      "description": "Prazos da compra: fim das propostas (do PNCP) e último dia de impugnação (estimado: 3 dias úteis antes da sessão, Lei 14.133 art. 164, feriados nacionais). Grátis.",
      "endpoint": "GET /api/compra/:id"
    },
    {
      "id": "compra",
      "name": "compra",
      "description": "Ficha da compra e a lista de documentos com texto extraído, com o preço de cada um. Grátis.",
      "endpoint": "GET /api/compra/:id"
    },
    {
      "id": "edital_markdown",
      "name": "edital_markdown",
      "description": "Documento do PNCP em markdown com front-matter de procedência e hash. Grátis quando a compra foi publicada há 30+ dias; pago por requisição (x402, sem cadastro) quando é recente.",
      "endpoint": "GET /api/documento/:id/markdown"
    },
    {
      "id": "habilitacao",
      "name": "habilitacao",
      "description": "Lista de habilitação do edital (jurídica, fiscal/social/trabalhista, econômico-financeira, técnica), cada item com o trecho literal do texto. Pago por documento (x402 ou crédito); mesmo texto não paga de novo.",
      "endpoint": "POST /api/documento/:id/habilitacao"
    },
    {
      "id": "criar_dono",
      "name": "criar_dono",
      "description": "Cria o token de dono (edm_…) que abre alertas e vigias, e o segredo whsec_… que assina os webhooks. Sem cadastro; o token é mostrado uma única vez — guarde e mande em Authorization: Bearer nas tools de alerta e vigia.",
      "endpoint": "POST /api/dono"
    },
    {
      "id": "dono",
      "name": "dono",
      "description": "Estado do dono (precisa do token edm_…): e-mail confirmado, franquia e o segredo whsec_… que assina cada webhook (Standard Webhooks: webhook-id, webhook-timestamp, webhook-signature).",
      "endpoint": "GET /api/dono"
    },
    {
      "id": "rotacionar_segredo_webhook",
      "name": "rotacionar_segredo_webhook",
      "description": "Troca o segredo que assina os webhooks (precisa do token edm_…). O anterior ainda assina por 24 h, para trocar sem janela de falha.",
      "endpoint": "POST /api/dono/segredo"
    },
    {
      "id": "criar_alerta",
      "name": "criar_alerta",
      "description": "Alerta de compra nova por termos do objeto e UF (precisa do token edm_…). Canal pull (ler por alertas_compras), webhook (POST https assinado com o whsec_… do dono) ou email. O primeiro é grátis; os seguintes custam por 30 dias (x402 ou crédito).",
      "endpoint": "POST /api/alertas"
    },
    {
      "id": "alerta_por_cnpj",
      "name": "alerta_por_cnpj",
      "description": "Alertas de compra nova pelo CNPJ da empresa (precisa do token edm_…): as atividades (CNAE) viram famílias de termos e sai um alerta por família, principal primeiro, até max_familias. O que passa da franquia é cobrado numa vez só (x402 ou crédito). CNAE fora do dicionário vem listado na resposta com familia nula.",
      "endpoint": "POST /api/alertas"
    },
    {
      "id": "cnaes",
      "name": "cnaes",
      "description": "A lista de CNAE como o alerta por CNPJ a lê: descrição oficial (IBGE), família e termos do dicionário e fornecedores ativos no SICAF. Sem q, o ranking de quem mais vende para o governo. Grátis.",
      "endpoint": "GET /api/cnaes"
    },
    {
      "id": "alertas_compras",
      "name": "alertas_compras",
      "description": "Compras que já casaram com um alerta (canal pull), com prazos e status de entrega. Precisa do token edm_….",
      "endpoint": "GET /api/alertas/:id/compras"
    },
    {
      "id": "vigiar_compra",
      "name": "vigiar_compra",
      "description": "Vigia uma compra (precisa do token edm_…): fotografa agora e registra eventos de retificação, documento novo, suspensão, prazo adiado e valor, mais avisos de prazo. A primeira é grátis; as seguintes custam até 30 dias após o encerramento.",
      "endpoint": "POST /api/vigias"
    },
    {
      "id": "vigia_eventos",
      "name": "vigia_eventos",
      "description": "Eventos de uma compra vigiada (o que mudou, de quê para quê, quando) e a fotografia atual. Precisa do token edm_….",
      "endpoint": "GET /api/vigias/:id/eventos"
    },
    {
      "id": "credito_saldo",
      "name": "credito_saldo",
      "description": "Saldo e extrato do crédito pré-pago (precisa do token `cred_…`).",
      "endpoint": "GET /api/credito"
    },
    {
      "id": "credito_recarregar",
      "name": "credito_recarregar",
      "description": "Recarrega crédito: paga uma vez com x402 (pacotes de 1, 5, 10 ou 25 dólares) e devolve o token que desconta em qualquer API da casa.",
      "endpoint": "POST /api/credito"
    },
    {
      "id": "recibo",
      "name": "recibo",
      "description": "Recibo de uma entrega: preço, modo de pagamento e hash do conteúdo entregue.",
      "endpoint": "GET /api/recibo/:id"
    }
  ],
  "discovery": {
    "openapi": "https://editalmd.com/openapi.json",
    "llms": "https://editalmd.com/llms.txt",
    "okf": "https://editalmd.com/okf/index.md",
    "numbers": "https://editalmd.com/api/vitrine",
    "partnerships": "https://editalmd.com/api/partners",
    "api_catalog": "https://editalmd.com/.well-known/api-catalog",
    "x402": "https://editalmd.com/.well-known/x402",
    "pricing": "https://editalmd.com/pricing",
    "docs": "https://editalmd.com/docs"
  },
  "updated": "2026-09-10"
}