{
  "$schema": "https://modelcontextprotocol.io/schemas/webmcp.json",
  "webmcpVersion": "1.0.0",
  "info": {
    "title": "Prefeitura Municipal de Poços de Caldas - WebMCP Portal",
    "description": "Especificação WebMCP (Web Model Context Protocol) para integração do Portal de Serviços da Prefeitura Municipal de Poços de Caldas com assistentes de Inteligência Artificial e Agentes de IA.",
    "version": "1.0.0",
    "website": "https://servicos.pocosdecaldas.mg.gov.br",
    "author": "Prefeitura Municipal de Poços de Caldas (PMPC)",
    "license": "Proprietary"
  },
  "server": {
    "endpoint": "/api/webmcp.php",
    "protocol": "json-rpc-2.0",
    "transport": "http-post"
  },
  "tools": [
    {
      "name": "buscar_servicos",
      "description": "Pesquisa os serviços públicos disponibilizados pela Prefeitura de Poços de Caldas por palavras-chave ou secretaria responsável.",
      "endpoint": "/api/carregar_busca.php",
      "method": "GET",
      "parameters": {
        "type": "object",
        "properties": {
          "q": {
            "type": "string",
            "description": "Termo ou palavra-chave de busca para localizar o serviço."
          },
          "secretaria": {
            "type": "integer",
            "description": "ID numérico da secretaria ou órgão responsável pelo serviço."
          }
        },
        "required": ["q"]
      }
    },
    {
      "name": "buscar_orgaos",
      "description": "Consulta órgãos, secretarias municipais e departamentos da Prefeitura de Poços de Caldas.",
      "endpoint": "/api/carregar_busca.php",
      "method": "GET",
      "parameters": {
        "type": "object",
        "properties": {
          "q": {
            "type": "string",
            "description": "Nome, sigla ou termo de busca do órgão ou secretaria."
          }
        },
        "required": ["q"]
      }
    },
    {
      "name": "buscar_leis",
      "description": "Pesquisa leis, decretos, resoluções e atos normativos no acervo de legislação de Poços de Caldas.",
      "endpoint": "/api/listaleis.php",
      "method": "GET",
      "parameters": {
        "type": "object",
        "properties": {
          "q": {
            "type": "string",
            "description": "Número da lei ou termo relativo ao assunto da legislação."
          },
          "tipo": {
            "type": "integer",
            "description": "Tipo do ato normativo (ex: 1 para Lei Ordinária, 2 para Decreto)."
          }
        },
        "required": ["q"]
      }
    },
    {
      "name": "consultar_eventos",
      "description": "Consulta a agenda de eventos públicos, atividades culturais e avisos municipais.",
      "endpoint": "/api/listaeventos.php",
      "method": "GET",
      "parameters": {
        "type": "object",
        "properties": {
          "q": {
            "type": "string",
            "description": "Título ou palavra-chave do evento."
          },
          "categoria": {
            "type": "integer",
            "description": "Categoria do evento."
          }
        }
      }
    },
    {
      "name": "obter_previsao_tempo",
      "description": "Obtém a previsão do tempo oficial e condições meteorológicas para a cidade de Poços de Caldas.",
      "endpoint": "/api/previsao_tempo.php",
      "method": "GET",
      "parameters": {
        "type": "object",
        "properties": {
          "unidade": {
            "type": "string",
            "description": "Unidade de medida ('metric' para Celsius). Default: 'metric'."
          },
          "qtd": {
            "type": "integer",
            "description": "Quantidade de períodos de previsão a retornar. Default: 10."
          }
        }
      }
    },
    {
      "name": "consultar_ouvidoria",
      "description": "Consulta o andamento de uma manifestação registrada na Ouvidoria Municipal por protocolo.",
      "endpoint": "/api/dados_ouvidoria.php",
      "method": "GET",
      "parameters": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "ID ou número identificador da manifestação na Ouvidoria."
          },
          "usuario": {
            "type": "integer",
            "description": "ID do usuário logado (opcional)."
          }
        },
        "required": ["id"]
      }
    },
    {
      "name": "registrar_ouvidoria",
      "description": "Registra uma nova manifestação (denúncia, reclamação, elogio, sugestão, solicitação) na Ouvidoria.",
      "endpoint": "/api/processar_ouvidoria.php",
      "method": "POST",
      "parameters": {
        "type": "object",
        "properties": {
          "categoria": {
            "type": "integer",
            "description": "Tipo de manifestação (1: Reclamação, 2: Denúncia, 3: Elogio, 4: Sugestão, 5: Solicitação)."
          },
          "secretaria": {
            "type": "integer",
            "description": "ID da secretaria municipal de destino."
          },
          "manifestacao": {
            "type": "string",
            "description": "Texto detalhado descrevendo a manifestação."
          },
          "sigilosos": {
            "type": "integer",
            "description": "1 para identificada, 2 para manifestação sigilosa."
          }
        },
        "required": ["categoria", "secretaria", "manifestacao"]
      }
    },
    {
      "name": "consultar_sic",
      "description": "Consulta pedidos de informação pública cadastrados no Serviço de Informação ao Cidadão (SIC - LAI).",
      "endpoint": "/api/dados_sic.php",
      "method": "GET",
      "parameters": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "ID ou número do protocolo SIC."
          }
        },
        "required": ["id"]
      }
    },
    {
      "name": "listar_modulos_dados_abertos",
      "description": "Lista todos os módulos de dados abertos governamentais disponíveis no portal (serviços, convênios, emendas, contratos, etc.) com suas descrições e links de download.",
      "endpoint": "/api/webmcp.php",
      "method": "POST",
      "parameters": {
        "type": "object",
        "properties": {}
      }
    },
    {
      "name": "obter_dados_abertos",
      "description": "Acessa o catálogo de conjuntos de dados abertos municipais (arquivos CSV, JSON, XLS).",
      "endpoint": "/api/dados_abertos.php",
      "method": "GET",
      "parameters": {
        "type": "object",
        "properties": {
          "modulo": {
            "type": "integer",
            "description": "ID numérico do módulo de dados abertos desejado."
          },
          "q": {
            "type": "string",
            "description": "Termo para busca ou filtragem de conjuntos de dados abertos."
          }
        }
      }
    },
    {
      "name": "chamar_ia_gemini",
      "description": "Consulta o modelo Google Gemini integrado para auxílio com RAG e respostas institucionais.",
      "endpoint": "/api/chamar_ia.php",
      "method": "POST",
      "parameters": {
        "type": "object",
        "properties": {
          "corpo": {
            "type": "string",
            "description": "String JSON contendo a pergunta ou prompt estruturado para a IA."
          },
          "modeloIA": {
            "type": "integer",
            "description": "ID do modelo Gemini (1: 3.5-flash-lite, 2: 3.1-flash-lite, 3: 3.6-flash, 4: 3.5-flash, 5: flash-lite-latest)."
          }
        },
        "required": ["corpo", "modeloIA"]
      }
    },
    {
      "name": "consultar_diagnostico_habitacional",
      "description": "Consulta cadastros e informações do Programa de Diagnóstico Habitacional de Poços de Caldas.",
      "endpoint": "/api/consultar_diagnostico_habitacional.php",
      "method": "GET",
      "parameters": {
        "type": "object",
        "properties": {
          "cpf": {
            "type": "string",
            "description": "CPF do munícipe cadastrado no sistema habitacional."
          }
        },
        "required": ["cpf"]
      }
    },
    {
      "name": "listar_convenios_transferencias",
      "description": "Lista convênios, parcerias e transferências de recursos da prefeitura para Organizações da Sociedade Civil (OSCs).",
      "endpoint": "/api/lista_convenios_e_transferencias.php",
      "method": "GET",
      "parameters": {
        "type": "object",
        "properties": {
          "q": {
            "type": "string",
            "description": "Nome da OSC, objeto do convênio ou termo de busca."
          },
          "ano": {
            "type": "integer",
            "description": "Ano do convênio ou parceria."
          }
        }
      }
    },
    {
      "name": "listar_emendas_parlamentares",
      "description": "Consulta as emendas parlamentares destinadas a Poços de Caldas e sua execução financeira.",
      "endpoint": "/api/lista_emendas_parlamentares.php",
      "method": "GET",
      "parameters": {
        "type": "object",
        "properties": {
          "q": {
            "type": "string",
            "description": "Nome do autor da emenda, área ou valor."
          },
          "ano": {
            "type": "integer",
            "description": "Ano do exercício orçamentário."
          }
        }
      }
    }
  ],
  "resources": [
    {
      "uri": "pocosdecaldas://servicos/carta",
      "name": "Carta de Serviços ao Cidadão",
      "description": "Catálogo completo de todos os serviços prestados pela Prefeitura de Poços de Caldas.",
      "mimeType": "text/html"
    },
    {
      "uri": "pocosdecaldas://transparencia/dados-abertos",
      "name": "Portal de Dados Abertos",
      "description": "Repositório governamental de arquivos e bases de dados públicos.",
      "mimeType": "application/json"
    },
    {
      "uri": "pocosdecaldas://prefeitura/organograma",
      "name": "Organograma Municipal",
      "description": "Estrutura hierárquica e órgãos componentes da administração municipal.",
      "mimeType": "text/html"
    },
    {
      "uri": "pocosdecaldas://duvidas/faq",
      "name": "Perguntas Frequentes (FAQ)",
      "description": "Dúvidas e respostas mais recorrentes sobre atendimento e serviços da prefeitura.",
      "mimeType": "text/html"
    },
    {
      "uri": "pocosdecaldas://legislacao/leis",
      "name": "Leis e Atos Normativos",
      "description": "Acervo atualizado das leis ordinárias, complementares e decretos de Poços de Caldas.",
      "mimeType": "text/html"
    },
    {
      "uri": "pocosdecaldas://governo/plano",
      "name": "Plano de Governo",
      "description": "Metas, ações e acompanhamento do Plano de Governo Municipal.",
      "mimeType": "text/html"
    }
  ],
  "prompts": [
    {
      "name": "atendimento_cidadao",
      "description": "Prompt para orientar o assistente de IA na prestação de informações claras, precisas e cordiais sobre os serviços municipais.",
      "arguments": [
        {
          "name": "duvida_cidadao",
          "description": "Dúvida ou solicitação feita pelo munícipe.",
          "required": true
        }
      ]
    },
    {
      "name": "orientacao_ouvidoria",
      "description": "Prompt para orientar o munícipe sobre como encaminhar reclamações, elogios ou denúncias à Ouvidoria Municipal.",
      "arguments": [
        {
          "name": "tipo_manifestacao",
          "description": "Tipo de manifestação que o munícipe deseja realizar.",
          "required": true
        }
      ]
    },
    {
      "name": "consulta_transparencia",
      "description": "Prompt para auxiliar na navegação e busca por dados de transparência orçamentária e convênios municipais.",
      "arguments": [
        {
          "name": "topico_transparencia",
          "description": "Tópico de interesse (ex: emendas, convênios, salários, despesas).",
          "required": true
        }
      ]
    }
  ]
}
