
If you're wrangling multiple MCP servers and want a proper CLI instead of clicking through UIs, this is the tool. It handles the full lifecycle: list available servers, inspect schemas, call tools with natural syntax like `linear.create_issue(title: "Bug")`, and manage OAuth flows. The codegen features are especially handy since you can emit TypeScript clients or even generate entire CLIs from server definitions. Works over HTTP or stdio, supports both interactive function calls and JSON payloads, and includes a daemon mode for persistent connections. It's opinionated about how MCP servers should be accessed from the command line, which is either exactly what you need or overkill depending on your setup.
$ npx -y skills add steipete/clawdis --skill mcporter --agent claude-codeInstalls into .claude/skills of the current project.
Use mcporter to work with MCP servers directly.
Quick start
mcporter listmcporter list <server> --schemamcporter call <server.tool> key=valueCall tools
mcporter call linear.list_issues team=ENG limit:5mcporter call "linear.create_issue(title: \"Bug\")"mcporter call https://api.example.com/mcp.fetch url:https://example.commcporter call --stdio "bun run ./server.ts" scrape url=https://example.commcporter call <server.tool> --args '{"limit":5}'Auth + config
mcporter auth <server | url> [--reset]mcporter config list|get|add|remove|import|login|logoutDaemon
mcporter daemon start|status|stop|restartCodegen
mcporter generate-cli --server <name> or --command <url>mcporter inspect-cli <path> [--json]mcporter emit-ts <server> --mode client|typesNotes
./config/mcporter.json (override with --config).--output json for machine-readable results.Sponsors