From mcp-to-cli
Generate standalone CLIs or make one-off tool calls from MCP servers using mcporter. Use when the user wants to convert an MCP into a compiled CLI, inspect available MCP tools, import MCP definitions from Claude Code/Cursor/Codex, authenticate remote HTTP MCPs, or call MCP tools without registering the server in Claude Code.
How this skill is triggered — by the user, by Claude, or both
Slash command
/mcp-to-cli:mcp-to-cliThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
- Use `mcporter` to either:
mcporter to either:
--runtime bun --compile.claude, cursor, codex, stdio command, or HTTP MCP URLnode / npxbun if the output should be a compiled standalone binaryconfig/mcporter.json and bin/<name>| Situation | Command path |
|---|---|
| Inspect an MCP before doing anything else | npx -y mcporter list ... |
| One-off use only | npx -y mcporter call ... |
| Repeated use / reusable CLI | npx -y mcporter generate-cli ... --runtime bun --compile ... |
| MCP already defined in Claude Code / Cursor / Codex | npx -y mcporter config import <source> --copy --filter <server> |
| MCP known only by stdio command | npx -y mcporter generate-cli --command "<stdio command>" ... |
| MCP exposed as streamable HTTP | npx -y mcporter generate-cli --command https://.../mcp ... |
| Remote MCP requires OAuth / auth bootstrap | npx -y mcporter auth <server-or-url> before list, call, or generate-cli |
Identify the source and desired output mode
Import or define the MCP source
npx -y mcporter config import claude --copy --filter <server>
npx -y mcporter config import cursor --copy --filter <server>
npx -y mcporter config import codex --copy --filter <server>
config/mcporter.json.# stdio MCP
npx -y mcporter generate-cli --command "<stdio command>" --runtime bun --compile ./bin/<name>
# HTTP MCP
npx -y mcporter generate-cli --command https://example.com/mcp --runtime bun --compile ./bin/<name>
Inspect available tools
# Imported / named MCP
npx -y mcporter list <server> --config ./config/mcporter.json
# Raw stdio MCP
npx -y mcporter list --stdio "<stdio command>"
# Raw HTTP MCP
npx -y mcporter list https://example.com/mcp
Authenticate if needed
npx -y mcporter auth https://example.com/mcp
npx -y mcporter auth <server>
call or generate-cli.Optionally validate with a one-off call
# Imported / named MCP
npx -y mcporter call <server>.<tool> --config ./config/mcporter.json key=value
# Raw stdio MCP
npx -y mcporter call --stdio "<stdio command>" <tool> key=value
# Raw HTTP MCP
npx -y mcporter call --http-url https://example.com/mcp <tool> key=value
Generate the standalone CLI
# Imported / named MCP
npx -y mcporter generate-cli \
--server <server> \
--config ./config/mcporter.json \
--runtime bun \
--compile ./bin/<name>
# Raw stdio or HTTP MCP
npx -y mcporter generate-cli \
--command "<stdio command or https://example.com/mcp>" \
--runtime bun \
--compile ./bin/<name>
--runtime bun --compile for a true standalone executable.Report artifacts and usage
config/mcporter.json and bin/<name>,config/
mcporter.json
bin/
<name>
npx -y mcporter config import claude --copy --filter mcp-atlassian
npx -y mcporter list mcp-atlassian --config ./config/mcporter.json
npx -y mcporter generate-cli \
--server mcp-atlassian \
--config ./config/mcporter.json \
--runtime bun \
--compile ./bin/mcp-atlassian
./bin/mcp-atlassian --help
npx -y mcporter call mcp-atlassian.jira_search \
--config ./config/mcporter.json \
jql='text ~ "automation"' \
limit=10
npx -y mcporter list --stdio "npx -y chrome-devtools-mcp@latest"
npx -y mcporter generate-cli \
--command "npx -y chrome-devtools-mcp@latest" \
--runtime bun \
--compile ./bin/chrome-devtools
./bin/chrome-devtools --help
npx -y mcporter list https://mcp.example.com/mcp
npx -y mcporter generate-cli \
--command https://mcp.example.com/mcp \
--runtime bun \
--compile ./bin/example-mcp
./bin/example-mcp --help
npx -y mcporter auth https://mcp.example.com/mcp
npx -y mcporter call --http-url https://mcp.example.com/mcp some_tool argA=value
npx -y mcporter generate-cli \
--command https://mcp.example.com/mcp \
--runtime bun \
--compile ./bin/my-mcp
mcporter list resolves the expected tools for the chosen source.mcporter call succeeds before generation../bin/<name> --help.Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub leolionart/claude-skills --plugin mcp-to-cli