mcpsmith — Claude Code MCP server: what it does, how to install
Turns OpenAPI specs, Postman collections, cURL calls, SQL databases and logged-in sites into a handful of agent tools. Handy when you need an MCP server for one specific API without hand-writing it.
claude mcp add mcpsmith -- uvx mcpsmithWhat mcpsmith does
You point mcpsmith at a service description and the agent drafts the toolset. A typical run goes toolsmelt inspect <file-or-url>, then the agent reviews the spec, edits plan.yaml, validates it and connects the result as live tools. The plan can also become plain Python code you own, so you can ship it.
What goes in: OpenAPI or Swagger as a file or URL, a Postman export, cURL lines copied from DevTools, databases read through SQLAlchemy (install pip install "toolsmelt[sql]"), gRPC with server reflection (install pip install "toolsmelt[grpc]"), SOAP with a WSDL. Sites behind a login take another route. toolsmelt browser starts a shared Chrome on port 9222, you sign in yourself, and the agent records traffic between smith_record_start and smith_record_stop. Credentials and 2FA codes stay out of the agent's hands.
No API key is involved because your coding agent does the designing. Three skills ship with it: build-mcp-server, extract-api, design-mcp-tools. Two limits matter. Hub connections are personal, live in ~/.toolsmelt and do not survive as a published server. And generate rejects plans that rely on browser auth. If you sit behind a proxy, add HTTPS_PROXY to the server's env block — MCP clients launch servers without your shell variables, and smith_inspect will fail to fetch the spec.
What it helps with
- build agent tools from an OpenAPI spec
- expose a SQLite or PostgreSQL database as agent calls
- capture an internal dashboard's API after logging in
- map endpoints of an Android APK you own
- wire tools into a running agent session without publishing
Example prompts for the agent
- Inspect
openapi.yamland draft the tools for it. - Validate
plan.yamland generate the Python server.
How to install mcpsmith
Platform CLI
claude mcp add mcpsmith -- uvx mcpsmithuvx runs the command named after the package; if the README names another one, use uvx --from mcpsmith <command>
Platform CLI
codex mcp add mcpsmith -- uvx mcpsmithuvx runs the command named after the package; if the README names another one, use uvx --from mcpsmith <command>
Config file
{
"mcpServers": {
"mcpsmith": {
"command": "uvx",
"args": [
"mcpsmith"
]
}
}
}uvx runs the command named after the package; if the README names another one, use uvx --from mcpsmith <command>
Config file
{
"servers": {
"mcpsmith": {
"type": "stdio",
"command": "uvx",
"args": [
"mcpsmith"
]
}
}
}uvx runs the command named after the package; if the README names another one, use uvx --from mcpsmith <command>
Platform CLI
gemini mcp add mcpsmith uvx mcpsmithuvx runs the command named after the package; if the README names another one, use uvx --from mcpsmith <command>
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about mcpsmith
How do I install mcpsmith in Claude Code?
Run claude mcp add mcpsmith -- uvx mcpsmith. The older name toolsmelt still works under this entry.
What does mcpsmith do?
It reads an API or app description and produces a curated set of MCP tools. Your agent proposes the design, you check the plan and connect the tools.
Do I need an API key?
No, the coding agent acts as the designer. Behind a proxy you do need HTTPS_PROXY in the MCP client's env, otherwise smith_inspect cannot fetch specs.