¿Qué es FastAPI-MCP?
FastAPI-MCP es una extensión nativa para el framework FastAPI que expone los puntos finales de tu API como herramientas MCP, que pueden ser descubiertas e invocadas dinámicamente por agentes LLM compatibles con MCP. A diferencia de los convertidores tradicionales, FastAPI-MCP se integra profundamente con la pila ASGI de FastAPI, soporta autenticación y preservación de documentación desde el inicio, y permite modelos de implementación unificados y separados para mayor flexibilidad.
Cómo Configurar FastAPI-MCP
- Instala FastAPI-MCP usando tu gestor de paquetes preferido:
- Con uv:
uv add fastapi-mcp
- Con pip:
pip install fastapi-mcp
- Con uv:
- Importa FastAPI-MCP e inicialízalo con la instancia de tu aplicación FastAPI.
- Usa el método
.mount()
para exponer tu servidor MCP, que generará automáticamente los puntos finales de herramientas MCP basados en tus rutas de FastAPI existentes. - Opcionalmente, configura la autenticación usando la inyección de dependencias de FastAPI (por ejemplo,
Depends()
), y personaliza la documentación o implementación según tus necesidades.
Cómo Usar FastAPI-MCP
- Agrega lo siguiente a tu aplicación FastAPI:
from fastapi import FastAPI from fastapi_mcp import FastApiMCP app = FastAPI() mcp = FastApiMCP(app) mcp.mount()
- Una vez montado, tu servidor MCP estará disponible en
/mcp
bajo la URL base de tu aplicación. - Todos los puntos finales de FastAPI compatibles se convertirán automáticamente en herramientas MCP, listas para ser descubiertas e invocadas por clientes MCP, incluyendo agentes LLM.
- Los puntos finales mantienen su esquema original, lógica de validación y autenticación, y cualquier cambio en tu aplicación FastAPI se reflejará en tus herramientas MCP.
- Explora la documentación en fastapi-mcp.tadata.com y revisa los ejemplos para demostraciones prácticas.
Características Clave
- Integración de autenticación: Reutiliza el modelo de seguridad y dependencias existente de FastAPI para los puntos finales de MCP.
- Configuración mínima: Expón instantáneamente todos tus puntos finales de FastAPI como herramientas MCP con una llamada de método.
- Soporte nativo de FastAPI: Aprovecha el transporte ASGI para una comunicación eficiente y directa.
- Preservación de esquemas y documentación: Mantiene la documentación OpenAPI, modelos y validación de campos.
- Despliegue flexible: Despliega el servidor MCP dentro de tu aplicación o como un servicio independiente.
- Ecosistema integral: Integra LLM y herramientas externas compatibles con MCP fácilmente.
Casos de Uso
- Haz que las API REST de tu negocio estén disponibles de inmediato como herramientas seguras accesibles por LLM para flujos de trabajo de agentes inteligentes.
- Construye automatización de flujos de trabajo personalizados permitiendo a los LLMs llamar a tus puntos finales de FastAPI como herramientas MCP.
- Prototipa y comparte nuevas características impulsadas por IA sin necesidad de envolver o duplicar manualmente los puntos finales.
- Conecta datos empresariales y API externas en un conjunto de herramientas unificado y accesible por modelos.
Preguntas Frecuentes
Q1: ¿Necesito cambiar mi código de FastAPI para usar FastAPI-MCP?
A: No, puedes exponer tus puntos finales existentes como herramientas MCP sin cambios o con cambios mínimos, simplemente inicializando y montando FastAPI-MCP.
Q2: ¿Puedo usar la autenticación y dependencias de FastAPI con herramientas MCP?
A: Sí, FastAPI-MCP soporta completamente la autenticación y la inyección de dependencias a través de Depends()
de FastAPI, por lo que tu modelo de seguridad permanece intacto.
Q3: ¿Es posible desplegar el servidor MCP por separado de mi aplicación FastAPI?
A: Sí, FastAPI-MCP soporta modos de despliegue unificados y separados, permitiéndote montar el servidor MCP dentro de tu aplicación o como un servicio ASGI independiente.
Q4: ¿Cómo se manejan los esquemas de solicitud y respuesta?
A: Los esquemas y la documentación de todos los puntos finales se preservan, asegurando una validación de entrada consistente y facilidad de descubrimiento a través de herramientas MCP.