Use the mcporter CLI to list, configure, auth, and call MCP servers/tools directly (HTTP or stdio), including ad-hoc servers, config edits, CLI/type generation, and MCP-backed skills that need a durable command path.
68
—
Does it follow best practices?
Impact
—
No eval scenarios have been run
Advisory
Suggest reviewing before use
Use mcporter to work with MCP servers directly.
In OpenClaw, treat mcporter as the execution substrate for MCP-backed
skills. When a user wants to keep an MCP capability for future work, prefer
creating or updating a skill that describes when to use the capability and
stores the repeatable mcporter command path. Do not create a separate runtime
registry when a skill can carry the durable behavior.
Skill-first MCP shape
SKILL.md: triggers, workflow, constraints, examples, and recovery steps.mcp.json: mcporter-native server config when the skill needs a dedicated
server definition.references/: schemas, API notes, or longer operation guides.scripts/: wrappers for fragile multi-step calls or post-processing.Credential handling
mcp.json in a writable
user-managed skill root, or a dedicated user-managed private mcporter config
file. Keep it non-shared and excluded from source control and packaging. Set
file permissions to 0600 when possible. Do not ask the user to re-enter the
same value as an environment variable, and do not edit shell startup or
trusted env files just to persist it. Do not echo the secret value back in
CLI output, logs, or errors; redact or omit token and secret fields from
displayed tool results.mcp.json. Use mcporter --config path/to/skill/mcp.json ...
as the durable command path. Treat ~/.mcporter/mcporter.json as an
interoperability copy when useful, not as the capability boundary. The
credential-bearing source of truth for a durable skill run is the explicit
--config file you pass.For a durable MCP skill, first inspect the server schema:
mcporter --config path/to/skill/mcp.json list <server> --schema --output jsonThen call the selected tool with explicit arguments:
mcporter --config path/to/skill/mcp.json call <server.tool> key=valueQuick 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 for skills. mcporter can also use its default
project or user config paths for local ad-hoc CLI work, but shared or
packaged skills and automation should always pass an explicit --config.--output json for machine-readable results.737835b
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.