OpenClaw-hot-skills-zh mcporter
使用 mcporter CLI 列出、配置、认证和调用 MCP 服务器/工具(HTTP 或 stdio),包括临时服务器、配置编辑和 CLI/类型生成。
install
source · Clone the upstream repo
git clone https://github.com/L-LesterYu/OpenClaw-hot-skills-zh
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/L-LesterYu/OpenClaw-hot-skills-zh "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/mcporter-zh" ~/.claude/skills/l-lesteryu-openclaw-hot-skills-zh-mcporter && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/L-LesterYu/OpenClaw-hot-skills-zh "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/mcporter-zh" ~/.openclaw/skills/l-lesteryu-openclaw-hot-skills-zh-mcporter && rm -rf "$T"
manifest:
skills/mcporter-zh/SKILL.mdsource content
MCPorter 技能 🧳
MCPorter 是 TypeScript 运行时、CLI 和代码生成工具包,专为 Model Context Protocol (MCP) 设计。帮助您发现系统中已配置的 MCP 服务器,直接调用它们,在 TypeScript 中组合更丰富的自动化,并在需要共享工具时创建单一用途的 CLI。
核心能力
-
零配置发现:
自动合并您的主目录配置(createRuntime()
)、项目配置(~/.mcporter/mcporter.json[c]
),以及 Cursor/Claude/Codex/Windsurf/OpenCode/VS Code 的导入,扩展config/mcporter.json
占位符,并池化连接以便在多个调用中重用传输。${ENV} -
一键 CLI 生成:
将任何 MCP 服务器定义转换为可运行的 CLI,支持可选的打包/编译和用于轻松重新生成的元数据。mcporter generate-cli -
类型化工具客户端:
生成mcporter emit-ts
接口或可运行的客户端包装器,使代理/测试可以用强 TypeScript 类型调用 MCP 服务器,无需手写管道代码。.d.ts -
友好的组合式 API:
将工具公开为符合人体工程学的 camelCase 方法,自动应用 JSON-schema 默认值,验证必需参数,并返回带有createServerProxy()
、.text()
、.markdown()
、.json()
和.images()
助手的.content()
。CallResult -
OAuth 和 stdio 人体工程学:内置 OAuth 缓存、日志跟踪和 stdio 包装器,让您可以从同一接口使用 HTTP、SSE 和 stdio 传输。
-
临时连接:将 CLI 指向任何 MCP 端点(HTTP 或 stdio),无需触碰配置,稍后如果需要可以持久化。期望浏览器登录的托管 MCP(Supabase、Vercel 等)会被自动检测——只需运行
,CLI 会即时将定义提升为 OAuth。mcporter auth <url>
快速开始
MCPorter 自动发现您已在 Cursor、Claude Code/Desktop、Codex 或本地覆盖中配置的 MCP 服务器。您可以立即使用
npx 尝试——无需安装。
调用语法选项
# 冒号分隔的标志(shell 友好) npx mcporter call linear.create_comment issueId:ENG-123 body:'看起来不错!' # 函数调用风格(匹配 `mcporter list` 的签名) npx mcporter call 'linear.create_comment(issueId: "ENG-123", body: "看起来不错!")'
常用命令
列出 MCP 服务器
# 列出所有已配置的服务器 npx mcporter list # 列出特定服务器的详细信息(包含 schema) npx mcporter list context7 --schema # 列出远程 MCP 服务器的所有工具 npx mcporter list https://mcp.linear.app/mcp --all-parameters # 列出临时 stdio 服务器 npx mcporter list --stdio "bun run ./local-server.ts" --env TOKEN=xyz
调用工具
# 使用冒号语法调用工具 npx mcporter call linear.create_comment issueId:ENG-123 body:'评论内容' # 使用函数调用语法 npx mcporter call 'linear.create_comment(issueId: "ENG-123", body: "评论内容")' # 调用远程服务器 npx mcporter call https://mcp.linear.app/mcp linear.create_comment issueId:ENG-123 body:'评论'
配置管理
# 添加新服务器到配置 npx mcporter config add myserver --http-url https://example.com/mcp # 编辑配置 npx mcporter config edit # 查看配置 npx mcporter config show
认证
# 对需要 OAuth 的服务器进行认证 npx mcporter auth https://mcp.linear.app/mcp # 查看认证状态 npx mcporter auth status
代码生成
# 生成 TypeScript 类型定义 npx mcporter emit-ts linear --output ./types # 生成 CLI npx mcporter generate-cli linear --output ./my-linear-cli
使用场景
- MCP 服务器发现:自动发现和列出系统中配置的所有 MCP 服务器
- 工具调用:直接从命令行调用任何 MCP 工具
- 自动化脚本:在脚本中使用 MCP 工具进行自动化操作
- 类型安全开发:生成 TypeScript 类型定义,确保类型安全
- CLI 创建:为常用的 MCP 服务器创建专用的命令行工具
- 配置管理:管理和编辑 MCP 服务器配置
- OAuth 认证:处理需要 OAuth 认证的托管 MCP 服务
高级功能
临时服务器
可以连接到任何 MCP 端点而无需修改配置:
# HTTP 服务器 npx mcporter list https://example.com/mcp # Stdio 服务器 npx mcporter list --stdio "node ./server.js" --env API_KEY=xyz # 持久化临时服务器 npx mcporter list https://example.com/mcp --persist --name myserver
JSON 输出
大多数命令支持
--json 标志以获得结构化输出:
# JSON 格式列出服务器 npx mcporter list --json # 使用 jq 过滤 npx mcporter list --json | jq '.[] | select(.name == "linear")'
详细输出
使用
--verbose 查看详细的配置源信息:
npx mcporter list --verbose
安装
虽然可以使用
npx 直接运行,但也可以全局安装:
# 使用 npm npm install -g mcporter # 使用 pnpm pnpm add -g mcporter # 使用 bun bun install -g mcporter
配置文件位置
MCPorter 会按以下顺序查找配置文件:
或~/.mcporter/mcporter.json
(主目录配置)~/.mcporter/mcporter.jsonc
(项目配置)config/mcporter.json- 自动导入 Cursor、Claude、Codex、Windsurf、OpenCode、VS Code 的配置
环境变量
支持在配置中使用环境变量占位符:
{ "servers": { "myserver": { "url": "https://api.example.com/mcp", "headers": { "Authorization": "Bearer ${API_KEY}" } } } }
提示
- 使用
标志查看任何命令的详细帮助--help - 使用
和--json
进行灵活的数据提取和处理--jq - 使用
查看配置来源和调试信息--verbose - 使用
处理需要 OAuth 的服务器mcporter auth - 使用
将临时服务器保存到配置--persist
常见问题
Q: 如何查看某个服务器的所有可用工具?
npx mcporter list <server-name> --schema
Q: 如何调用需要认证的服务器?
npx mcporter auth <server-url> npx mcporter call <server-name>.<tool-name> <args>
Q: 如何在脚本中使用?
# 使用 --json 获取结构化输出 result=$(npx mcporter call mytool param1:value1 --json) echo "$result" | jq '.data'
文档
许可证
MIT License