ThinMCP
Provides a gateway to interact with upstream Cloudflare MCP servers, allowing for operations such as listing DNS zones and managing cloud resources through compressed search and execution tools.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ThinMCPsearch for Cloudflare tools and list my active zones"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ThinMCP
ThinMCP is an MCP gateway that exposes many upstream MCP servers through a stable two-tool interface:
search()execute()
Instead of loading every upstream tool definition into model context, ThinMCP keeps a local catalog, lets the model discover tools on demand, and forwards only the calls it needs to make.
Why ThinMCP
Connecting multiple MCP servers directly to a model increases context size as tool count grows. ThinMCP keeps the model-facing surface area fixed while still allowing access to a large tool ecosystem.
The result is a simpler integration point for clients and a more predictable runtime shape for production deployments.
Architecture
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"]Key Capabilities
Fixed two-tool interface for the model
Support for HTTP and stdio upstream servers
Local SQLite-backed catalog for discovery
Input validation before upstream execution
Sandboxed execution for gateway tool calls
HTTP transport with health and metrics endpoints
Periodic sync of upstream tool metadata
Quick Start
npm install
npm run build
cp config/mcp-sources.example.yaml config/mcp-sources.yamlEdit config/mcp-sources.yaml, then sync and start:
npm run sync
npm startHTTP mode:
npm start -- --transport http --port 8787Validate the setup:
npm run doctorConfiguration
ThinMCP reads config/mcp-sources.yaml. Each upstream server can use either http or stdio transport.
Minimal example:
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 to keep each upstream server scoped to the tools you actually want exposed through the gateway.
Running ThinMCP
Development:
npm run devProduction build:
npm run build
npm startHTTP mode:
npm start -- --transport http --host 127.0.0.1 --port 8787Available HTTP endpoints:
/mcp/healthz/metrics
Operations
Common commands:
npm run build
npm run sync
npm run doctor
npm test
THINMCP_RUN_E2E=1 npm run test:e2eOperational guidance:
Keep upstream credentials in environment variables
Restrict
allowToolsto the smallest useful surface areaEnable HTTP auth and rate limiting when exposing the gateway beyond local development
Run
npm run syncas part of deployment or startup validation if catalog freshness matters
Client Integration
Client examples are documented in docs/CLIENT_INTEGRATIONS.md.
License
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