mcpfoundry
Stubbed integration for MongoDB databases; intended to provide CRUD tools similar to PostgreSQL.
Stubbed integration for MySQL databases; intended to provide CRUD tools similar to PostgreSQL.
Provides CRUD tools for PostgreSQL database tables by introspecting the database schema.
Allows generating MCP server tools from an OpenAPI/Swagger specification, providing typed tools for each API endpoint.
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., "@mcpfoundrygenerate a Node.js MCP server from my OpenAPI spec at ./api.yaml"
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.
Create secure, production-ready MCP servers from your database or API — in under 5 minutes. ⚒️
Quick Start · Features · Security · Examples · Contributing
Stop hand-writing MCP servers. Point
mcpfoundryat a database or an OpenAPI spec and get a clean, runnable, secure-by-option MCP server whose tools actually run — real parameterised SQL or real HTTP calls, notTODOstubs. Node.js or Python. Zero boilerplate.
⚡ Quick Start (60 seconds)
npx mcpfoundry create \
--type openapi \
--input https://petstore3.swagger.io/api/v3/openapi.json \
--output ./petstore-mcp
cd petstore-mcp && npm install && npm start
# 🎉 MCP server live on http://localhost:3000/mcpThat's a full MCP server — every endpoint turned into a validated tool — running. No SDK wrangling, no transport plumbing, no boilerplate.
Connect it to Claude in one step: every generated project includes a ready-to-use .mcp.json. Open the folder in Claude Code (it auto-detects the file), or paste the block into Claude Desktop's config. The generated README.md has the exact snippet.
Related MCP server: MCP OpenAPI Proxy
✨ Why mcpfoundry?
⏱️ Ship in 5 minutes | One command turns a DB or API into a working MCP server. |
🔒 Secure by option | Add |
🛡️ Hardened by default | Every tool gets strict Zod / Pydantic parameter validation — no opt-in needed. |
🏭 Production quality | Self-contained, lint-clean, type-safe output that builds and boots out of the box. |
🧩 Maintainable & extensible | Clean Template-Compiler architecture — add a language with a folder, no core changes. |
🌐 HTTP or stdio | Streamable HTTP by default; |
🐍 Node.js & Python | First-class |
⚙️ Working out of the box | Tools run real code — parameterised SQL (SQLite) or HTTP calls to your API — not placeholders. |
🔌 DB & OpenAPI | Introspect SQLite/Postgres into CRUD tools, or convert any OpenAPI/Swagger spec (file or URL, JSON/YAML) into tools that call the upstream API. |
📎 One-click Claude connection | Every project ships a |
🛠️ Two ways to create
1. From an OpenAPI / Swagger spec
Every endpoint becomes a typed, validated MCP tool.
mcpfoundry create --type openapi --input ./openapi.yaml --output ./my-server2. From a database
Tables are introspected into CRUD tools. SQLite tools run real, parameterised SQL out of the box — just point DATABASE_PATH at your file:
mcpfoundry create --type database --provider sqlite --uri ./app.db --output ./db-server
cd db-server && npm install && DATABASE_PATH=../app.db npm startPostgres is also introspected (its handlers are scaffolded stubs for now):
mcpfoundry create --type database \
--provider postgres \
--uri "postgresql://user:pass@localhost:5432/mydb" \
--output ./pg-server --lang python💡 Preview first with
--dry-runto see exactly which tools you'll get — no files written:✔ Dry run — 4 tool(s) would be generated: • list_pets(limit?: integer) • create_pet(name: string, tag?: string) • get_pet_by_id(pet_id: integer) • delete_pet(pet_id: integer)
🔐 The ZTAI Security Shield (optional)
Pass --secure and every generated server enforces zero-trust access — recommended, never required:
🔑 JWT Guard — verifies a short-lived HS256 token (an
Authorization: Bearerheader per request over HTTP, orZTAI_AUTH_TOKENat startup over stdio) againstJWT_SECRET. Invalid or missing → rejected before any tool runs.🧱 Parameter hardening — strict Zod / Pydantic schemas (this is always on, even without
--secure— it's just good hygiene).🪤 Deception canary — set
ZTAI_CANARY_IDand tool output carries a subtle, traceable marker to help detect adversarial data exfiltration.
Without --secure you still get a perfectly good, vendor-neutral MCP server.
🎛️ All options
Flag | Description |
|
|
|
|
| DB connection string (database mode) |
| OpenAPI spec — file path or URL, JSON or YAML (openapi mode) |
| Output directory (required) |
|
|
|
|
| Shortcut for |
| Port for the HTTP transport (default |
| Embed the optional ZTAI Security Shield |
| Overwrite a non-empty output directory |
| Preview the generated tools, then exit |
SQLite & Postgres are introspected today; SQLite emits working SQL. MySQL & MongoDB are stubbed and open for contributions.
🧩 How it works
mcpfoundry follows a clean Template-Compiler pattern:
source (DB / OpenAPI) ──▶ parser ──▶ normalized IR (ToolSpec[])
│
Handlebars compiler
│
▼
templates/<lang>/ ──▶ your generated serverParsers and templates are decoupled by a normalized intermediate representation, so adding a new language is just a new templates/<lang>/ folder — no engine changes. See CONTRIBUTING.md.
🤝 Contributing
Two of the most common contributions — a new language template or a new database provider — need zero changes to the core engine. See CONTRIBUTING.md.
📄 License
MIT — build freely.
⭐ Star on GitHub if mcpfoundry saved you an afternoon.
This server cannot be installed
Maintenance
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
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/FidarOrg/mcpfoundry'
If you have feedback or need assistance with the MCP directory API, please join our Discord server