ThinMCP
ThinMCP
ThinMCP es una pasarela MCP que expone muchos servidores MCP ascendentes a través de una interfaz estable de dos herramientas:
search()execute()
En lugar de cargar cada definición de herramienta ascendente en el contexto del modelo, ThinMCP mantiene un catálogo local, permite que el modelo descubra herramientas bajo demanda y reenvía solo las llamadas que necesita realizar.
Por qué ThinMCP
Conectar múltiples servidores MCP directamente a un modelo aumenta el tamaño del contexto a medida que crece el número de herramientas. ThinMCP mantiene fija la superficie orientada al modelo mientras permite el acceso a un gran ecosistema de herramientas.
El resultado es un punto de integración más sencillo para los clientes y una forma de ejecución más predecible para despliegues en producción.
Arquitectura
flowchart LR
A["LLM or MCP Client"] --> B["ThinMCP Gateway"]
B --> C["Local Catalog"]
B --> D["Execution Layer"]
D --> E["Schema Validation"]
E --> F["Upstream MCP Servers"]
G["Sync Process"] --> F
G --> C
G --> H["Snapshots"]Capacidades clave
Interfaz fija de dos herramientas para el modelo
Soporte para servidores ascendentes HTTP y stdio
Catálogo local respaldado por SQLite para el descubrimiento
Validación de entrada antes de la ejecución ascendente
Ejecución en entorno aislado para llamadas a herramientas de la pasarela
Transporte HTTP con puntos finales de salud y métricas
Sincronización periódica de metadatos de herramientas ascendentes
Inicio rápido
npm install
npm run build
cp config/mcp-sources.example.yaml config/mcp-sources.yamlEdite config/mcp-sources.yaml, luego sincronice e inicie:
npm run sync
npm startModo HTTP:
npm start -- --transport http --port 8787Valide la configuración:
npm run doctorConfiguración
ThinMCP lee config/mcp-sources.yaml. Cada servidor ascendente puede usar transporte http o stdio.
Ejemplo mínimo:
servers:
- id: exa
name: Exa MCP
transport: http
url: https://mcp.exa.ai/mcp
auth:
type: bearer_env
env: EXA_API_KEY
allowTools: ["*"]
- id: local-fs
name: Local Filesystem MCP
transport: stdio
command: npx
args:
- -y
- "@modelcontextprotocol/server-filesystem"
- /tmp
cwd: .
allowTools:
- "filesystem.*"
sync:
intervalSeconds: 300
onStart: true
runtime:
codeTimeoutMs: 15000
maxCodeLength: 20000
maxResultChars: 60000
catalog:
dbPath: ../data/thinmcp.db
snapshotDir: ../snapshotsUse allowTools para mantener cada servidor ascendente limitado a las herramientas que realmente desea exponer a través de la pasarela.
Ejecución de ThinMCP
Desarrollo:
npm run devCompilación de producción:
npm run build
npm startModo HTTP:
npm start -- --transport http --host 127.0.0.1 --port 8787Puntos finales HTTP disponibles:
/mcp/healthz/metrics
Operaciones
Comandos comunes:
npm run build
npm run sync
npm run doctor
npm test
THINMCP_RUN_E2E=1 npm run test:e2eGuía operativa:
Mantenga las credenciales ascendentes en variables de entorno
Restrinja
allowToolsa la superficie útil más pequeña posibleHabilite la autenticación HTTP y la limitación de tasa al exponer la pasarela más allá del desarrollo local
Ejecute
npm run synccomo parte del despliegue o la validación de inicio si la frescura del catálogo es importante
Integración de clientes
Los ejemplos de clientes están documentados en docs/CLIENT_INTEGRATIONS.md.
Licencia
ISC
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/VenkatGGG/ThinMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server