Servidor MCP
Este proyecto es un servidor MCP (Protocolo de conversación multiagente) para la URL OpenAPI dada: https://api.apis.guru/v2/specs/apisetu.gov.in/edistrictodishasp/3.0.0/openapi.json , generada automáticamente mediante el generador MCP de AG2.
Prerrequisitos
- Python 3.9+
- pip y uv
Instalación
- Clonar el repositorio:
- Instalar dependencias: El script .devcontainer/setup.sh gestiona la instalación de dependencias mediante
pip install -e ".[dev]"
. Si no utiliza el contenedor dev, puede ejecutar este comando manualmente.Alternativamente, puedes utilizaruv
:
Desarrollo
Este proyecto utiliza ruff
para control de linting y formateo, mypy
para verificación de tipos estáticos y pytest
para pruebas.
Pelusa y formato
Para comprobar si hay problemas de pelusa:
Para formatear el código:
Estos comandos también están disponibles a través del script scripts/lint.sh .
Análisis estático
Para ejecutar un análisis estático (mypy, bandit, semgrep):
Este script también se configura como un gancho previo a la confirmación en .pre-commit-config.yaml .
Ejecución de pruebas
Para ejecutar pruebas con cobertura:
Esto ejecutará pytest y generará un informe de cobertura. Para un informe y una limpieza combinados, puede usar:
Ganchos de pre-confirmación
Este proyecto utiliza ganchos de pre-confirmación definidos en .pre-commit-config.yaml . Para instalar los ganchos:
Los ganchos se ejecutarán automáticamente antes de cada confirmación.
Ejecución del servidor
El servidor MCP se puede iniciar mediante el script mcp_server/main.py . Admite diferentes modos de transporte (p. ej., stdio
y sse
).
Para iniciar el servidor (por ejemplo, en modo stdio):
El servidor se puede configurar mediante variables de entorno:
CONFIG_PATH
: Ruta a un archivo de configuración JSON (por ejemplo, mcp_server/mcp_config.json ).CONFIG
: Una cadena JSON que contiene la configuración.SECURITY
: Variables de entorno para parámetros de seguridad (por ejemplo, claves API).
Consulte el bloque if __name__ == "__main__":
en mcp_server/main.py para obtener detalles sobre cómo se cargan.
El archivo tests/test_mcp_server.py demuestra cómo iniciar e interactuar con el servidor mediante programación para realizar pruebas.
Construcción y publicación
Este proyecto utiliza Hatch para compilar y publicar. Para compilar el proyecto:
Para publicar el proyecto:
Estos comandos también están disponibles a través del script scripts/publish.sh .
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Un servidor MCP que permite la interacción con los servicios eDistrict de Odisha a través de la interfaz API Setu, lo que permite a los usuarios acceder y utilizar los servicios digitales del gobierno de Odisha a través del lenguaje natural.
Related MCP Servers
- -securityAlicense-qualityAn MCP server implementation that integrates with Odoo ERP systems, enabling AI assistants to interact with Odoo data and functionality through the Model Context Protocol.Last updated -78PythonMIT License
- -securityFlicense-qualityAn MCP Server that enables interaction with Maharashtra's Motor Vehicle Department API, allowing users to access transportation-related services through natural language requests.Last updated -Python
- -securityFlicense-qualityThis MCP server enables interaction with the Punjab State Board of Technical Education and Industrial Training API, allowing access to technical education services and information through natural language.Last updated -Python
- -securityFlicense-qualityAn MCP server that enables interaction with the Transport Department of Puducherry's API services through natural language, providing access to transportation-related data and operations.Last updated -Python