Kettle
FreeNot checkedA TUI tool for selecting APIS and deterministically generating an MCP Server
About
A TUI tool for selecting APIS and deterministically generating an MCP Server
README
Turn routes from APIs into an MCP server.
License: Apache-2.0 Version: 0.1.0 Language: Go

What's in it for you
- Find API routes without running or importing the source project.
- Review discovered routes before exposing anything.
- Search, select, or clear routes from an interactive terminal checklist.
- Generate a standalone Go MCP server with only the routes you chose.
- Keep credentials out of generated source.
Features
- Static route discovery across supported backend frameworks.
- Recursive router, mount, and prefix resolution.
- Visibility for routes whose parameter schemas are not ready for generation.
- Support for
GET,POST,PUT,PATCH,DELETE,OPTIONS, andHEAD. - Primitive string, integer, float, and boolean path and query parameters.
- Deterministic MCP server generation.
- Optional upstream
Authorizationheader forwarding. - Safe cancellation and refusal to overwrite an existing output directory.
Quick Start
Install Go 1.24 or newer, then run Kettel against a supported API project:
go run ./cmd/mcp-kettel \
--input /path/to/api-project \
--output ./generated-mcp
Try the included example:
go run ./cmd/mcp-kettel \
--input ./example/sample-project \
--output ./generated-mcp
The checklist starts with every ready route selected. Routes marked with × were discovered but need parameter-schema support before generation. Use g to cycle grouping by source file, HTTP method, or route prefix. Groups start collapsed; highlight a group and press space to expand or collapse it. Once expanded, use space on a ready route to toggle one, a to select all ready routes, n to clear all, / to filter, enter to generate, or esc to cancel.
| Group large route sets | Filter matching APIs |
|---|---|
![]() |
![]() |
Run the generated server beside the running source application:
cd generated-mcp
MCP_API_BASE_URL=http://127.0.0.1:8000 go run .
For an authenticated API, set the complete header value:
MCP_API_AUTHORIZATION="Bearer $TOKEN" \
MCP_API_BASE_URL=http://127.0.0.1:8000 \
go run .
If --output is omitted, Kettel writes to <input>/mcp-server.
Kettel initially supports FastAPI and Express. Contributions that add more backend frameworks are welcome. See Contributing.
Documentation
License
Apache License 2.0. See LICENSE.
Installing Kettle
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/Jay-1409/mcp-kettleFAQ
Is Kettle MCP free?
Yes, Kettle MCP is free — one-click install via Unyly at no cost.
Does Kettle need an API key?
No, Kettle runs without API keys or environment variables.
Is Kettle hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Kettle in Claude Desktop, Claude Code or Cursor?
Open Kettle on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectAmap Maps Mcp Server
MCP server for using the AMap Maps API
by duxiaohuiSupabase
Database, auth and storage
by SupabaseEverything
Reference / test server with prompts, resources, and tools.
Git
Tools to read, search, and manipulate Git repositories.
Sequential Thinking
Dynamic and reflective problem-solving through thought sequences.
Time
Time and timezone conversion capabilities.
Compare Kettle with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs


