I got tired of manually writing MCP tools for every REST endpoint I wanted
to expose to an LLM. So I automated it.
mcpgen reads an OpenAPI JSON or YAML file and generates a complete,
ready‑to‑run MCP server in Python.
snake_case
names)mcp
and httpx
bash
pip install mcpgen
mcpgen my-api.json -o my-mcp-server
python my-mcp-server/server.py
The generated server runs over stdio – ready to plug into Claude Desktop
or any MCP client.
🧪 Real‑world test
Recently a contributor added an OpenAPI 3.1 fixture (Xquik API) with
lookupTweet and getUser endpoints. The tool generated the correct
tools, including path parameters and x-api-key auth, on the first try.
All 18 tests pass. It works.
🤔 Why you might want it
If you’re building LLM agents that need to interact with APIs,
mcpgen eliminates the boilerplate. You don’t have to write a single
@app.tool() decorator by hand.
It also makes it dead simple to experiment – change your API spec,
regenerate the server, and you’re done.
📦 Links
GitHub: JnanaSrota/mcpgen
PyPI: pip install mcpgen
MIT licensed, open to contributions
🙏 Feedback
If you try it with your own API spec and something breaks (or works
beautifully), I’d love to hear about it. Drop a comment or open an issue.
Thanks for reading!
source & further reading
dev.to — original article
Persistence of Memory, Personality, and Self in AI Agents The Someone That Persists, Session After Session, Across Months
Serving Gemma4 with Rust on vLLM 🦀
IRC-A in production, part 2: a 46-minute agent, an AI assistant that broke the rules — and a $0.04 bill