
MCPorter
Call any MCP server from your terminal, scripts, or agents, then generate standalone CLIs and typed TypeScript clients from them.
About
MCPorter is a TypeScript runtime and CLI for the Model Context Protocol, built by Peter Steinberger (PSPDFKit founder) and now maintained under OpenClaw. It discovers the MCP servers already configured in Cursor, Claude Code and Desktop, Codex, Windsurf, VS Code, and OpenCode, then lets you list their tools and call them from the shell: mcporter list prints TypeScript-style signatures, mcporter call server.tool key=value runs them with human or JSON output. It also handles OAuth flows, stdio and HTTP transports, and ad-hoc servers via URL.
The part that makes it more than an inspector is codegen: generate-cli emits a standalone shell-callable CLI for a single MCP server, and emit-ts produces typed TypeScript clients, so an MCP server becomes a normal dependency in scripts, CI pipelines, hooks, and agents without a running IDE session. Record and replay captures reproducible MCP sessions for tests. At 5,000+ stars it is the pragmatic bridge between the MCP world and plain old scripting. The trade-off: it is a power-user tool, and generated CLIs still need you to understand the underlying server's auth and semantics.
What it can do
- Discover and call any MCP server: list tools, call with flag or function-call syntax
- Auto-imports server configs from Cursor, Claude Code/Desktop, Codex, Windsurf, VS Code, OpenCode
- Generate standalone CLIs per server with generate-cli (Rolldown bundling)
- Emit typed TypeScript clients and .d.ts with emit-ts
- OAuth2 flows with browser launch and token persistence
- Record and replay MCP sessions for reproducible tests
- JSON output for agents and scripts; stdio and HTTP/SSE transports
Setup
- Try it with no install:
npx mcporter --version(Node 24+). - Install for repeated use:
npm install -g mcporterorbrew install steipete/tap/mcporter(signed macOS binaries available). - It auto-discovers MCP servers from your editors' configs; or point at one directly:
mcporter list https://mcp.context7.com/mcp --brief. - Call tools:
mcporter call server.tool key=value; complete OAuth withmcporter auth <server>when needed. - Generate artifacts:
mcporter generate-cli --server name,mcporter emit-ts <server>, ormcporter recordfor test fixtures.
Prerequisites
Node.js 24+ for npm installs (or Homebrew on macOS); MCP servers configured in an editor, or a server URL to connect ad hoc.
Use cases
Works with
Trust score — 8/10
Scored 8/10 (verified tier, metrics-v1). Evidence: 5,067 GitHub stars (GitHub API), MIT, pushed Oct 15 2026; the README documents the list/call/generate-cli/emit-ts/record workflow, the editor auto-discovery, and the OAuth handling; mcporter.sh corroborates the docs and install paths. Strengths: the most practical MCP-to-shell bridge, genuinely useful codegen, active development. Docked for: (1) recently transferred to the OpenClaw org, governance in flux; (2) generated CLIs still require understanding each server's auth; (3) power-user oriented, thin GUI story. License: MIT.
★ 5,067 GitHub stars
How the trust score is built
Full methodology →- Adoption · stars/downloads, log-scaled vs peers
- 6.0/10
- Maintenance · recency, releases, issue load
- 10.0/10
- Openness · license + docs
- 10.0/10
- Manual review · sanity read + red-flag check
- 8.0/10
- · Adoption 6: starScore from 5,067 stars on openclaw/mcporter (log scale vs 298k peer max)
- · Maintenance 10: pushed 2026-10-15 (recency 10); active releases
- · Openness 10: MIT (0.7*10) + docs verified at mcporter.sh (0.3*10)
- · Manual 8: practical MCP-to-shell bridge by Peter Steinberger corroborated by README and docs; docked: recently transferred to OpenClaw org, generated CLIs need per-server auth understanding
Sources
Every fact above was checked against these sources. Where a claim comes from the provider and couldn't be independently verified, the text says so.