0%
Escribir un servidor MCP: dos herramientas, un recurso, una prueba

Escribir un servidor MCP

Del archivo vacío al servidor que un host puede conectar, en un centenar de líneas

10-15 min

El primer servidor MCP que se escribe rara vez funciona a la primera, y casi nunca por el motivo que uno imagina. El problema no es el protocolo: las bibliotecas se encargan de él. Es un print de depuración que acaba en la salida estándar y destruye el flujo JSON-RPC; es una herramienta que lanza una excepción en lugar de devolver un error legible; es un servidor que arranca perfectamente a mano y que el host no consigue lanzar porque no encuentra el intérprete del entorno virtual correcto.

Esta lección construye un servidor completo (dos herramientas y un recurso sobre un dominio de facturación) y después lo prueba sin agente, sin modelo y sin host. El orden es lo que importa: mientras no haya visto con sus propios ojos las respuestas JSON-RPC, conectar un agente equivale a depurar a la vez dos sistemas no deterministas. Un servidor MCP es un programa corriente, se prueba como un programa corriente, y eso es precisamente lo que hace que el protocolo resulte agradable de implementar.

Puesta en marcha

python -m venv .venv
.venv/bin/pip install "mcp[cli]>=1.9"

El paquete oficial ofrece dos niveles de API. FastMCP genera los esquemas JSON a partir de sus anotaciones de tipo y de sus docstrings; el servidor de bajo nivel le deja escribir a mano los manejadores de tools/list y tools/call. Utilice el primero, salvo que necesite explícitamente un control total sobre los esquemas.

Comentarios

Los comentarios funcionan con GitHub Discussions

Inicia sesión con GitHub para participar en la discusión

¡Enlace copiado!