home / skills / openclaw / skills / mcporter

mcporter skill

/skills/steipete/mcporter

This skill helps you manage MCP servers with mcporter CLI, enabling listing, configuring, authenticating, and calling server tools efficiently.

npx playbooks add skill openclaw/skills --skill mcporter

Review the files below or copy the command above to add this skill to your agents.

Files (2)
SKILL.md
1.4 KB
---
name: mcporter
description: Use the mcporter CLI to list, configure, auth, and call MCP servers/tools directly (HTTP or stdio), including ad-hoc servers, config edits, and CLI/type generation.
homepage: http://mcporter.dev
metadata: {"clawdbot":{"emoji":"📦","requires":{"bins":["mcporter"]},"install":[{"id":"node","kind":"node","package":"mcporter","bins":["mcporter"],"label":"Install mcporter (node)"}]}}
---

# mcporter

Use `mcporter` to work with MCP servers directly.

Quick start
- `mcporter list`
- `mcporter list <server> --schema`
- `mcporter call <server.tool> key=value`

Call tools
- Selector: `mcporter call linear.list_issues team=ENG limit:5`
- Function syntax: `mcporter call "linear.create_issue(title: \"Bug\")"`
- Full URL: `mcporter call https://api.example.com/mcp.fetch url:https://example.com`
- Stdio: `mcporter call --stdio "bun run ./server.ts" scrape url=https://example.com`
- JSON payload: `mcporter call <server.tool> --args '{"limit":5}'`

Auth + config
- OAuth: `mcporter auth <server | url> [--reset]`
- Config: `mcporter config list|get|add|remove|import|login|logout`

Daemon
- `mcporter daemon start|status|stop|restart`

Codegen
- CLI: `mcporter generate-cli --server <name>` or `--command <url>`
- Inspect: `mcporter inspect-cli <path> [--json]`
- TS: `mcporter emit-ts <server> --mode client|types`

Notes
- Config default: `./config/mcporter.json` (override with `--config`).
- Prefer `--output json` for machine-readable results.

Overview

This skill provides CLI access to MCP servers and tools using the mcporter command. It lets you list available servers, call tools over HTTP or stdio, manage auth and config, run a background daemon, and generate client or type code for integrations. The skill is focused on direct, scriptable interactions and machine-readable outputs.

How this skill works

The skill invokes the mcporter CLI to discover servers, inspect tool schemas, and execute tool calls using selectors, full URLs, or local stdio processes. It reads and edits a local JSON config (default ./config/mcporter.json), handles OAuth flows for authentication, and can emit TypeScript or CLI bindings for downstream automation. Use --output json for consistent machine-readable results.

When to use it

  • Explore and list MCP servers and available tools in a workspace.
  • Invoke remote tools or ad-hoc endpoints via HTTP or spawn local stdio servers.
  • Automate workflows that require authenticated calls to MCP servers.
  • Generate CLI wrappers or TypeScript types for service integration.
  • Run mcporter as a daemon for persistent local tool access or proxying.

Best practices

  • Prefer --output json for predictable parsing in scripts or CI.
  • Store and version your mcporter config in a secure location; override with --config when needed.
  • Use explicit selectors (server.tool) or full URLs to avoid ambiguous calls.
  • Use --stdio only for trusted local processes and validate output before processing.
  • Use generate-cli or emit-ts to create typed clients for production integration.

Example use cases

  • Quickly list all tools on a server: mcporter list or mcporter list <server> --schema.
  • Call a tool with arguments: mcporter call linear.list_issues team=ENG limit:5 or mcporter call --args '{"limit":5}'.
  • Authenticate to a server: mcporter auth <server | url> and reset tokens with --reset.
  • Run a local scraper as stdio and call its scrape tool: mcporter call --stdio "bun run ./server.ts" scrape url=https://example.com.
  • Generate client bindings: mcporter emit-ts <server> --mode client to produce TypeScript client code.

FAQ

Where is the mcporter config stored by default?

By default it uses ./config/mcporter.json; override with --config <path> when needed.

How can I get machine-readable output for automation?

Add --output json to commands to receive JSON suitable for scripting and CI pipelines.