MCP---FastApi
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
API de Inventario con MCP y Chat con IA
Sistema completo de gestión de inventario integrado con inteligencia artificial y el protocolo MCP (Model Context Protocol), ejecutándose en contenedores Docker.
📋 Descripción
API REST para gestión de inventario con capacidades de IA mediante Ollama y soporte MCP para integración con clientes como Claude Desktop y VS Code. El sistema permite gestionar empresas y productos, con persistencia en PostgreSQL, y ofrece un chat interactivo con IA que puede usar las herramientas del inventario.
Related MCP server: MCP Inventory Manager
🏗️ Estructura de Carpetas
Prueba_fastAPI/
├── app/
│ ├── __init__.py
│ ├── main.py # Aplicación principal FastAPI
│ ├── database.py # Configuración de base de datos
│ ├── models.py # Modelos SQLAlchemy
│ ├── crud.py # Operaciones CRUD
│ ├── api/
│ │ ├── __init__.py
│ │ ├── rutas_usuarios.py # Endpoints de usuarios
│ │ ├── rutas_inventario.py # Endpoints de inventario
│ │ ├── rutas_generals.py # Endpoints generales
│ │ └── rutas_chat.py # Endpoint de chat con IA
│ └── schemas/
│ ├── usuario.py # Schemas de usuarios
│ └── inventario.py # Schemas de inventario
├── Dockerfile # Imagen Docker para FastAPI
├── Dockerfile.mcp-inspector # Imagen Docker para MCP Inspector
├── docker-compose.yml # Orquestación de contenedores
├── nginx.conf # Configuración de Nginx
├── requirements.txt # Dependencias Python
└── chat_ia.py # Script original de chat (legacy)🛠️ Tecnologías
Backend
FastAPI: Framework web moderno para Python
SQLAlchemy: ORM para base de datos
Pydantic: Validación de datos
Uvicorn: Servidor ASGI
Base de Datos
PostgreSQL 15: Base de datos relacional
psycopg2-binary: Driver PostgreSQL para Python
Inteligencia Artificial
Ollama: Plataforma para ejecutar modelos LLM
llama3.2:3b: Modelo de lenguaje local
fastapi-mcp: Integración MCP con FastAPI
Infraestructura
Docker & Docker Compose: Contenedores
Nginx: Proxy reverso y balanceador
Node.js 22: Para MCP Inspector
🐳 Contenedores Docker
El proyecto utiliza 5 contenedores:
web-api: Aplicación FastAPI principal
ollama: Modelo de IA llama3.2:3b
postgres: Base de datos PostgreSQL
nginx: Proxy reverso con soporte SSE
mcp-inspector: Herramienta de desarrollo para MCP (opcional)
🚀 Instalación y Uso
Requisitos Previos
Docker instalado
Docker Compose instalado
Clonar el Proyecto
git clone <url-del-repositorio>
cd Prueba_fastAPIIniciar el Sistema
# Iniciar todos los contenedores
docker-compose up -d
# Ver logs de todos los servicios
docker-compose logs -f
# Detener todos los servicios
docker-compose down📡 Endpoints Disponibles
API REST
POST /usuarios/- Crear usuarioGET /usuarios/- Listar usuariosPUT /usuarios/{id}- Actualizar usuarioDELETE /usuarios/{id}- Eliminar usuarioPOST /inventario/empresas- Crear empresaGET /inventario/empresas- Listar empresasPOST /inventario/productos- Crear productoGET /inventario/productos- Listar productos
Chat con IA
POST /chat/chat- Chat interactivo con Ollama
MCP
GET /sse- Endpoint Server-Sent Events para MCP
Documentación
GET /docs- Documentación interactiva Swagger UIGET /redoc- Documentación ReDoc
🔍 Ver Funcionalidad
1. Documentación API
Abre en tu navegador:
http://localhost:8000/docs2. Chat con IA
Usa el endpoint /chat/chat en la documentación Swagger:
{
"mensaje": "Crea una empresa llamada TestEmpresa"
}3. Ver Datos en Base de Datos
docker exec -it postgres_container psql -U postgres -d inventario -c "SELECT * FROM empresas;"4. MCP Inspector (Opcional)
Si el servicio mcp-inspector está activo, verifica los logs para obtener el token de acceso:
docker logs mcp_inspector_container🔧 Configuración
Variables de Entorno
Las variables de entorno se configuran en docker-compose.yml:
OLLAMA_HOST: URL del servicio OllamaDATABASE_URL: URL de conexión PostgreSQLAPI_URL: URL interna de la API
Puertos
8000: Nginx (API principal)11434: Ollama5432: PostgreSQL6274-6275: MCP Inspector (si está activo)
📝 Notas Importantes
El modelo
llama3.2:3btarda ~1 minuto en responder por ejecutarse en CPUMCP Inspector es opcional y puede eliminarse del docker-compose
Los datos persisten en volúmenes Docker incluso al reiniciar contenedores
Nginx está configurado para soportar Server-Sent Events (SSE) para MCP
Si se desea probar desde docker en MCP inspector se coloca Nginx como ruta ya que maneja e trafico y la comunicacion (/nignx/sse)
🤝 Contribución
Este proyecto es un sistema de demostración para integrar MCP con FastAPI y Ollama.
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
Hosted PostgreSQL MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
Analytical memory for AI agents: a real Postgres queried in plain English over MCP. One command.
Hosted SQL Server MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA comprehensive Model Context Protocol (MCP) server for product inventory management with PostgreSQL database backend, enabling natural language queries for product information across multiple AI platforms.-
- FlicenseNot gradedqualityDmaintenanceAn AI-powered inventory management system with a natural language interface, enabling CRUD operations on items and suppliers, stock transfers, and supplier management via MCP tools.-
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server that lets Claude AI manage a real PostgreSQL inventory database using natural language.-
- FlicenseNot gradedqualityDmaintenanceEnables natural language queries to PostgreSQL through an Ollama-powered agent, using MCP protocol to connect the backend to the database and a web interface.-