mcporter
MCPorter is a TypeScript toolkit that lets you call Model Context Protocol (MCP) servers from code or CLI without boilerplate. It auto-discovers servers from Cursor, Claude, and local configs, then exposes them as typed TypeScript APIs or generates single-purpose CLI tools.
Key facts
Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.
| Field | Value |
|---|---|
| Repository | openclaw/mcporter |
| Owner | openclaw |
| Primary language | TypeScript |
| License | MIT — OSI-approved |
| Stars | 4.8k |
| Forks | 317 |
| Open issues | 3 |
| Latest release | v0.12.3 (2026-07-01) |
| Last updated | 2026-07-01 |
| Source | https://github.com/openclaw/mcporter |
What mcporter is
MCPorter wraps MCP JSON-RPC transports (stdio, HTTP, SSE) behind a composable TypeScript API with zero-config discovery, automatic schema validation, typed client generation, OAuth caching, and record/replay fixtures for offline testing.
Get the mcporter source
Clone the repository and explore it locally.
git clone https://github.com/openclaw/mcporter.gitcd mcporter# follow the project's README for install & configurationNeed it deployed, integrated, or customized instead? DEV.co ships production installs.
Best use cases
Implementation considerations
- Zero-config discovery merges home config (~/.mcporter/), project config (./config/mcporter.json), and Cursor/Claude imports; test config loading paths in your environment before deployment.
- OAuth caching and token refresh are built-in but require a vault (filesystem by default); review storage location and permissions for headless/multi-user setups.
- Record/replay mode captures MCP JSON-RPC traffic for offline testing; ensure sensitive data (API keys, auth tokens) is redacted before sharing replays.
- TypeScript client generation emits `.d.ts` and optional wrapper code; regenerate after any MCP server schema changes or integration tests may fail silently.
- Transport pooling reduces connections but may hide connection limits or resource exhaustion if many servers are called concurrently; monitor active transports in production.
When to avoid it — and what to weigh
- Synchronous, low-latency requirements — MCPorter is designed around async/await; no synchronous interface is offered. High-frequency, ultra-low-latency tool calls may see overhead from transport overhead and schema validation.
- Heavy custom MCP server development — MCPorter is a client/caller library, not a server framework. If you need to build complex MCP servers, use the MCP SDK or server-side libraries directly.
- Offline-only or air-gapped deployments — MCPorter relies on discovering and connecting to external MCP servers (hosted or local). Zero-config discovery needs access to config files and environment; fully air-gapped use requires manual config.
- Static type checking without TypeScript — MCPorter's main value is typed client generation in TypeScript. Using from plain JavaScript loses schema introspection and IDE support.
License & commercial use
MIT License. Permissive OSI-approved license allowing commercial use, modification, and redistribution with minimal restrictions (retain notice and license).
MIT permits commercial use without royalties or attribution requirements (beyond license retention). MCPorter itself imposes no commercial restrictions. However, integration with third-party MCP servers (Linear, Vercel, etc.) requires separate agreement with those providers; review their terms before building production workflows.
DEV.co evaluation signals
Editorial assessment — not user reviews. Directional, with an explicit confidence level.
| Signal | Assessment |
|---|---|
| Maintenance | Active |
| Documentation | Strong |
| License clarity | Clear |
| Deployment complexity | Moderate |
| DEV.co fit | Good |
| Assessment confidence | High |
OAuth tokens and credentials are cached in a vault (filesystem by default; location configurable). Ensure vault is stored securely and readable only by intended users. `mcporter record` captures full MCP JSON-RPC traffic; redact sensitive data before sharing for debugging. Stdio transports spawn child processes; verify server binary integrity. HTTP transports should use HTTPS in production. No public security audit or vulnerability disclosures identified from data.
Alternatives to consider
Anthropic MCP SDK / Python reference implementation
Official, language-agnostic MCP runtime; deeper control but more boilerplate. Use if building MCP servers or need Python/other languages.
Agent frameworks (LangChain, Vercel AI SDK, Anthropic SDK)
Broader agent/LLM integration; MCP is one transport. Use if you need full agentic features beyond tool calling.
Manual TypeScript MCP client
Full control, no dependency. Impractical for multi-server discovery and OAuth; consider if MCPorter's opinionation conflicts with your architecture.
Build on mcporter with DEV.co software developers
Get started with `npx mcporter list` to discover pre-configured servers, then call them via CLI or TypeScript API.
Talk to DEV.coRelated open-source tools
Surfaced by semantic similarity across the DEV.co open-source index.
Related on DEV.co
Explore the category and the services that help you build with it.
mcporter FAQ
Does MCPorter require me to have Claude or Cursor installed?
Can I use MCPorter in a Node.js backend or serverless function?
How do I handle OAuth for MCP servers in production (e.g., AWS Lambda)?
Is there a way to call MCPorter servers from Python or Go?
Software development & web development with DEV.co
DEV.co helps companies turn open-source tools like mcporter into production software. Our software development services cover the full lifecycle — architecture, web development, integration, and maintenance — delivered by software developers and web developers who ship. Engage our software development agency to implement or customize it for your mcp servers stack.
Integrate MCP servers into your TypeScript workflow
Get started with `npx mcporter list` to discover pre-configured servers, then call them via CLI or TypeScript API.