Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Kettle

FreeNot checked

A TUI tool for selecting APIS and deterministically generating an MCP Server

GitHubEmbed

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

MCP Kettel interactive route selection

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, and HEAD.
  • Primitive string, integer, float, and boolean path and query parameters.
  • Deterministic MCP server generation.
  • Optional upstream Authorization header 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
Routes grouped by source file Routes filtered by the word users

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.

from github.com/Jay-1409/mcp-kettle

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-kettle

FAQ

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

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