MCP Server Setup
Two MCP endpoints exist, and they're deliberately different things:
tiny— your local cluster. Thetinybinary serves a streamable-HTTP MCP endpoint athttp://localhost:7776/mcp, talking straight to whichever cluster your kubeconfig points at. No account.tinysystems— the hosted endpoint.https://mcp.tinysystems.io/mcpwith a developer-key bearer token, against a workspace on the platform. See the install page.
This page covers the local one.
Install and start
brew install tiny-systems/tap/tiny # or: go install github.com/tiny-systems/tiny@latest
tiny up # once per cluster: CRDs, broker, operator, core modules
tiny # serves MCP on http://localhost:7776/mcp and the editor on :7775
The port is overridable with TINY_MCP_PORT.
Connect Claude Code
One command, one time:
claude mcp add -s user --transport http tiny http://localhost:7776/mcp
-s user registers it for every session (the default scope is per-directory). Start a new Claude Code session and verify with /mcp — you should see tiny with status "connected".
Connect any other MCP client
Point Cursor, Windsurf, Claude Desktop, or anything that speaks MCP streamable HTTP at the same URL:
{
"mcpServers": {
"tiny": {
"type": "http",
"url": "http://localhost:7776/mcp"
}
}
}
For Claude Desktop, add that to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or the equivalent path on your OS, then restart it.
Useful flags
| Flag | Meaning |
|---|---|
--context | kubeconfig context to use (pin this if your kubeconfig has several clusters) |
-n, --namespace | namespace (default tinysystems) |
-p, --project | project to work in |
-y, --yes | skip confirmations |
--print | print what would run |
Troubleshooting
Missing CRDs / "no such kind TinyNode" — the cluster isn't provisioned. Run tiny up.
Empty list_modules result — either no modules are installed in the namespace, or tiny is reading the wrong cluster. If kubectl get tinymodule -n <namespace> shows modules but the MCP returns empty, your default kubectl context isn't the one with Tiny Systems installed — restart tiny with an explicit --context <name>. To find modules you haven't installed yet, use list_available_modules, read a candidate with get_module_readme, then install_module.
Client can't connect — make sure tiny is running; the MCP endpoint only exists while the process is up.
Tools available
The local endpoint registers 25 tools covering the full lifecycle:
- Discover:
get_instructions,list_modules,get_component_info,list_available_modules,get_module_readme,search_modules,get_module_info - Build:
list_projects,read_project,create_flow,edit_flow,build_flow,delete_flow,get_node_port_schema - Run + debug:
send_signal,get_traces,get_trace_detail,scenarios - Dashboards:
get_dashboard,set_node_dashboard - Modules:
install_module,uninstall_module - Solutions:
search_solutions,get_solution,clone_solution
Start any session with get_instructions — the model gets the full workflow from there.