MCPorter (MCP Client)

List, configure, auth, and call MCP servers/tools directly (HTTP or stdio). Universal MCP client CLI.

MCPorter is a TypeScript runtime, CLI, and code-generation toolkit for the Model Context Protocol (MCP) by Peter Steinberger (steipete). It's the Swiss Army knife for MCP — discover servers, call tools, generate CLIs, emit typed clients, and compose automations, all without writing boilerplate or manually reading JSON schemas. The zero-config discovery is the standout feature: `createRuntime()` merges your home config with Cursor, Claude Code, Codex, Windsurf, OpenCode, and VS Code MCP configurations automatically. It finds every MCP server you've already set up across tools, pools connections, and exposes them through a unified interface. No more configuring the same server in five different places. The CLI generation feature (`mcporter generate-cli`) is revolutionary for the MCP ecosystem. Point it at any MCP server definition and it generates a ready-to-run CLI with proper argument parsing, help text, and optional bundling/compilation. This means you can turn any MCP server into a shell command that AI agents can call directly — reducing token usage compared to including full MCP schemas in prompts. For OpenClaw users, MCPorter bridges the gap between MCP servers and OpenClaw's skill-based architecture. Instead of configuring MCP servers natively (which OpenClaw doesn't support yet), you use MCPorter to call MCP tools via CLI commands. It handles OAuth caching, stdio transport management, and HTTP/SSE connections transparently. The typed client generation (`mcporter emit-ts`) outputs TypeScript interfaces and client wrappers, making it easy for developers to build type-safe integrations. The proxy API exposes tools as ergonomic camelCase methods with automatic validation. Best suited for: OpenClaw users wanting to use MCP servers, developers building MCP integrations, anyone who wants to call MCP tools from the command line, teams standardizing MCP access across multiple AI tools.

Tags: mcp, tools, integration, api, developer-tools

Category: Developer Tools

Use Cases

  • Call MCP tools from OpenClaw via CLI commands
  • Generate standalone CLIs from MCP servers for token-efficient AI use
  • Discover and audit MCP servers configured across Cursor, Claude, Codex
  • Build typed TypeScript clients for MCP server integration
  • OAuth management for hosted MCP servers (Linear, Supabase, Vercel)
  • Debug and inspect MCP server responses interactively

Tips

  • Use `npx mcporter list` to see all MCP servers already configured across your tools
  • Use `npx mcporter call` for quick one-off tool calls without installation
  • Generate CLIs from MCP servers to reduce token usage in AI agent workflows
  • Use `--json` with `mcporter list` for machine-readable server status and tool schemas
  • For OAuth servers, run `mcporter auth <url>` to complete the login flow
  • Use `--schema` flag with list to see full tool signatures: `mcporter list linear --schema`
  • Ad-hoc connections work for quick tests: `mcporter list https://mcp.linear.app/mcp --all-parameters`
  • Pair with the coding-agent skill for AI-driven MCP tool composition

Known Issues & Gotchas

  • Requires Node.js runtime — it's an npm package
  • MCP server discovery reads from other tools' config files — if those configs change format, discovery may break
  • OAuth-based MCP servers need initial browser-based auth flow via `mcporter auth`
  • Generated CLIs may need regeneration when MCP server schemas change
  • stdio-based MCP servers spawn child processes — watch for orphaned processes
  • Not all MCP servers implement the full spec — some tools may not work as expected
  • Ad-hoc connections (URL/stdio flags) aren't persisted unless you explicitly use --persist
  • OpenClaw doesn't have native MCP support yet — MCPorter is the bridge, not a native integration

Alternatives

  • Native MCP in Claude Desktop
  • mcp-cli (various)
  • Direct curl to MCP HTTP servers
  • Composio

Community Feedback

I generated CLIs from MCP servers and cut token usage by a huge margin. MCP server schemas eat so much token. So I built a converter that generates CLIs from MCP servers.

— Reddit r/mcp

The best way to use MCP with OpenClaw is to use the bundled mcporter skill — it's literally an MCP client/manager CLI.

— AnswerOverflow (OpenClaw Discord)

TypeScript runtime, CLI, and code-generation toolkit for the Model Context Protocol. Zero-config discovery, one-command CLI generation, typed tool clients, friendly composable API.

— GitHub

Running OpenClaw locally with MCP tools: install the MCP CLI with npm i -g mcporter. Add MCP tooling for inspection and debugging.

— Reddit r/CustomAI

Configuration Examples

Quick start with npx

# List all discovered MCP servers
npx mcporter list

# Call a specific tool
npx mcporter call linear.create_comment issueId:ENG-123 body:'Looks good!'

# List tools with full schemas
npx mcporter list context7 --schema

Generate a CLI from an MCP server

# Install globally
npm i -g mcporter

# Generate CLI from any MCP server
mcporter generate-cli linear --output ./linear-cli

# Use the generated CLI
./linear-cli create-comment --issue-id ENG-123 --body 'Done!'

Ad-hoc server connection

# Connect to a server by URL
mcporter list https://mcp.linear.app/mcp --all-parameters

# Auth for OAuth servers
mcporter auth https://mcp.linear.app/mcp

# Persist for future use
mcporter list https://mcp.linear.app/mcp --persist --name linear

Installation

npm i -g mcporter

Homepage: http://mcporter.dev

Source: bundled