Install
openclaw skills install @thcjp/port-transfer-2使用mcporter CLI管理和调用protocol service,支持服务配置、认证管理、工具调用及健康检查,助力开发与自动化工作流。
openclaw skills install @thcjp/port-transfer-2核心功能: 本技能提供化工作流场景等能力。
| 能力 | 免费版 | 付费版 |
|---|---|---|
| 基础功能 | 支持 | 支持 |
| 复杂工作流可视化编排 | 不支持 | 支持 |
| 条件分支与异常重试 | 不支持 | 支持 |
| 定时触发与事件驱动 | 不支持 | 支持 |
| 执行日志与审计追踪 | 不支持 | 支持 |
| 分布式任务调度与负载均衡 | 不支持 | 支持 |
mcporter list 列出已注册的connector(Model Context Protocol)服务器及其暴露的工具mcporter config 添加、修改、删除protocol service器连接配置(transport类型、URL、认证方式)mcporter auth 管理API Key、OAuth Token、Bearer Token等认证凭据,支持多环境配置mcporter call 直接调用protocol service器暴露的工具,传递参数并接收结构化结果mcporter ping 检测protocol service器连通性与响应延迟详细的输入输出格式请参考下方章节说明。
| 场景 | 输入 | 输出 |
|---|---|---|
| 服务注册与发现 | 服务器名称与连接配置 | 已注册服务列表 + 连接状态 |
| 工具调用测试 | 工具名称与参数 | 调用结果 + 执行耗时 + 状态码 |
| 认证凭据管理 | 认证类型与凭据 | 配置生效状态 + 过期时间 |
| 批量服务健康检查 | 多服务器地址列表 | 各服务连通性报告 + 延迟数据 |
| 配置导出与迁移 | 当前环境配置 | 可移植配置文件(JSON/YAML) |
不适用于:protocol service器自身的开发与部署、非connector协议的API调用、图形化GUI管理(本工具为CLI)
mcporter CLI 并在PATH中可用mcporter config add 添加protocol service器连接配置mcporter auth set 配置认证凭据(如需)mcporter list 确认服务已注册且可达mcporter call 调用具体工具,传入参数获取结果mcporter ping 定期检查服务健康状态| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| content | string | 否 | mcporter处理的命令或配置内容 |
| command | string | 否 | mcporter子命令,可选值: list/config/auth/call/ping,默认 list |
| server | string | 否 | 目标protocol service器名称 |
| tool | string | 否 | 调用的工具名称(call命令时使用) |
| params | object | 否 | 工具调用参数(JSON对象) |
| style | string | 否 | 输出风格, 参考 references/style.md |
{
"success": true,
"data": {
"servers": [
{
"name": "github-connector",
"transport": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"status": "connected",
"latency_ms": 45,
"tools": ["create_issue", "search_repos", "get_file_contents"]
}
],
"metadata": {
"template_used": "reviewer",
"total_servers": 1,
"connected": 1,
"style": "专业"
}
},
"error": null
}
输出模板参考: assets/output.json
# 添加基于 stdio 的本地protocol service器
mcporter config add \
--name "filesystem" \
--transport stdio \
--command "npx" \
--args "-y,@modelcontextprotocol/server-filesystem,/path/to/dir"
# 添加基于 SSE 的远程protocol service器
mcporter config add \
--name "remote-api" \
--transport sse \
--url "https://mcp.example.com/sse"
# 查看所有已配置的服务器
mcporter config list
# 设置 API Key 认证
mcporter auth set \
--server "github-connector" \
--type apikey \
--key "GITHUB_TOKEN" \
--value "ghp_xxxxxxxxxxxx"
# 设置 Bearer Token 认证
mcporter auth set \
--server "remote-api" \
--type bearer \
--token "eyJhbGciOiJIUzI1NiIs..."
# 查看认证状态
mcporter auth list --server "github-connector"
# 列出所有已注册的protocol service器
mcporter list
# 输出示例:
# NAME TRANSPORT STATUS TOOLS LATENCY
# filesystem stdio connected 8 12ms
# github-connector stdio connected 12 45ms
# remote-api sse connected 5 120ms
# 列出特定服务器的所有工具
mcporter list --server "github-connector" --tools
# 输出示例:
# TOOL DESCRIPTION
# create_issue Create a new GitHub issue
# search_repos Search GitHub repositories
# get_file_contents Get file contents from a repo
# 调用 github-connector 的 create_issue 工具
mcporter call \
--server "github-connector" \
--tool "create_issue" \
--params '{
"owner": "myorg",
"repo": "myrepo",
"title": "Bug: login page crash",
"body": "Steps to reproduce..."
}'
# 调用 filesystem 的 read_file 工具
mcporter call \
--server "filesystem" \
--tool "read_file" \
--params '{"path": "/path/to/dir/config.json"}'
# 检查单个服务器连通性
mcporter ping --server "github-connector"
# 输出: github-connector: OK (45ms)
# 检查所有服务器
mcporter ping --all
# 输出:
# filesystem: OK (12ms)
# github-connector: OK (45ms)
# remote-api: FAIL (timeout after 5000ms)
| 协议 | 适用场景 | 配置方式 | 特点 |
|---|---|---|---|
| stdio | 本地进程通信 | --command + --args | 低延迟,无需网络,适合本地工具 |
| SSE | 远程HTTP服务 | --url (HTTP/HTTPS) | 单向流,需处理重连,适合只读API |
| WebSocket | 双向实时通信 | --url (ws/wss) | 双向流,低延迟,适合交互式工具 |
mcporter config --env devmcporter config export 导出配置备份mcporter auth rotate 定期轮换Tokenmcporter config set --cache-ttl 300mcporter call --batch 合并请求| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| 配置错误 | 参数缺失或格式错误 | 检查依赖说明中的配置要求 |
| 运行时错误 | 运行环境不满足 | 确认运行环境符合依赖说明 |
| 网络错误 | 连接超时或不可达 | 检查网络连接与防火墙规则 |
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
| mcporter CLI | CLI | 必需 | npm install -g mcporter 或 pip install mcporter |
| Node.js | Runtime | 推荐 | v18+,用于stdio协议的protocol service器 |
API Key配置方式:
export API_KEY="${API_KEY:?请设置环境变量}"
配置后需重启会话或开启新终端生效。API Key应妥善保管,避免泄露到版本控制系统.
A: 首先安装mcporter CLI(npm install -g mcporter),然后使用 mcporter config add 添加protocol service器配置。配置时需指定服务器名称、传输协议(stdio/sse/websocket)和连接参数。添加后使用 mcporter list 确认服务已注册,使用 mcporter ping 验证连通性,最后用 mcporter call 调用工具。
A: stdio适用于本地安装的protocol service器(如通过npx启动的Node.js服务),延迟最低且无需网络配置。SSE适用于远程托管的protocol service器,通过HTTP连接。如果工具需要双向实时通信(如流式输出),使用WebSocket协议。优先选择stdio以获得优选性能。
A: 对于OAuth类型的认证,mcporter支持自动刷新。配置时同时设置 --token(access_token)和 --refresh-token,mcporter在access_token过期时自动使用refresh_token获取新token。对于API Key类型,需手动使用 mcporter auth set 更新。使用 mcporter auth list 查看各凭据的过期时间。
A: 在CI/CD中使用环境变量注入认证凭据(如 GITHUB_TOKEN),配置文件使用 mcporter config import config.json 从文件加载。调用工具时使用 --non-interactive 标志避免交互式提示。使用 mcporter call --output json 获取结构化输出便于脚本解析。建议在CI步骤前添加 mcporter ping --all 健康检查。
| 错误现象 | 可能原因 | 诊断步骤 | 解决方案 |
|---|---|---|---|
mcporter list 没有列出任何服务 | 配置文件未加载或未正确设置 | 检查配置文件路径和权限,确认配置文件格式正确 | 重新加载配置文件或检查配置文件路径 |
mcporter call 调用工具时返回错误 | 参数格式错误或工具不存在 | 检查输入参数格式是否正确,确认工具是否已配置 | 核对参数格式,检查工具配置 |
mcporter ping 检测到服务不可达 | 网络问题或protocol service器未启动 | 检查网络连接,确认protocol service器是否运行 | 修复网络问题或启动protocol service器 |
| 认证凭据配置错误 | API Key或Token格式错误 | 检查凭据格式,确认凭据来源 | 核对凭据格式,重新获取凭据 |
| 传输protocol config错误 | 协议类型不支持或配置不正确 | 检查protocol config,确认协议类型正确 | 核对protocol config,选择正确的协议类型 |
| 风险项 | 等级 | 防护措施 | 验证方法 |
|---|---|---|---|
| 配置文件泄露 | 高 | 使用环境变量存储敏感信息,文件加密存储 | 定期审计配置文件访问权限,检查文件加密状态 |
| 认证凭据泄露 | 高 | 使用密钥管理服务存储凭据,限制访问权限 | 定期轮换凭据,监控密钥管理服务访问日志 |
| 未授权访问 | 中 | 实施严格的访问控制策略,使用HTTPS | 定期检查访问日志,确保只有授权用户访问 |
| 代码注入攻击 | 中 | 对用户输入进行验证和过滤,使用参数化查询 | 定期进行安全审计,使用自动化工具扫描潜在漏洞 |
| 数据泄露 | 中 | 加密敏感数据,限制数据访问范围 | 定期进行数据泄露检测,确保数据加密有效 |
| 场景 | 效率提升量化分析 | 差异化对比 |
|---|---|---|
| 自动化工作流 | 平均减少30%的手动步骤,提升50%的工作效率 | 相比传统脚本,mcporter提供更丰富的工具和协议支持 |
| 多环境配置管理 | 平均减少40%的配置管理时间,降低10%的错误率 | 相比手动管理,mcporter提供集中配置和版本控制 |
| 服务发现与调用 | 平均减少20%的查找和调用时间,提升15%的工具使用率 | 相比手动调用,mcporter提供统一接口和协议兼容性 |
| 健康检查与监控 | 平均减少25%的监控时间,提升10%的故障响应速度 | 相比手动监控,mcporter提供自动化的健康检查和告警 |
| 开发效率 | 平均提升25%的开发效率,降低20%的开发成本 | 相比手动开发,mcporter提供快速集成和扩展能力 |
详细的输入输出格式请参考下方章节说明。
A1: "用mcporter CLI列出/配置/认证/调用protocol service与工具。Use the mcporter CLI to list, configure,。支持文本指令和结构化参数输入,具体格式参考使用流程章节。
A2: 是的,部分功能需要配置对应平台的API Key。请在依赖说明章节查看具体要求,并通过环境变量安全配置。
A3: 检查命令参数是否正确,确认运行环境支持exec能力。如遇权限问题,请参照错误处理章节排查。
| 操作场景 | 手动耗时 | 自动化耗时 | 效率提升 |
|---|---|---|---|
| 文件解析与提取 | 5-10分钟/个 | <5秒/个 | 60-120x |
| 批量文件处理(100个) | 8-16小时 | <5分钟 | 96-192x |
| API调用与响应解析 | 2-3分钟/次 | <1秒/次 | 120-180x |
| 多接口数据聚合 | 15-30分钟 | <10秒 | 90-180x |
| 命令执行与结果收集 | 3-5分钟/次 | <2秒/次 | 90-150x |
| 重复任务批量执行 | 因任务而异 | 线性缩减 | 5-50x |
| 错误排查与修复 | 10-30分钟 | <30秒 | 20-60x |
| 对比维度 | "MCPorter移植工具" | 传统手动方式 | 通用脚本工具 |
|---|---|---|---|
| 自动化程度 | 全流程自动 | 完全手动 | 部分自动 |
| 错误处理 | 内置错误恢复 | 依赖人工经验 | 基本try-catch |
| 可复用性 | 参数化配置 | 一次性脚本 | 模板化 |
| 安全合规 | 内置安全检查 | 无安全保障 | 无安全保障 |
| 适用场景 | "用mcporter CLI列出/配置/认证/调用protocol service与工具。Use the | 通用场景 | 通用场景 |
针对"MCPorter移植工具"使用中可能遇到的常见问题,提供以下排查方案:
| 错误类型 | 原因分析 | 解决方案 |
|---|---|---|
| API认证失败(401) | API密钥错误或过期 | 检查密钥配置,重新生成token |
| 接口限流(429) | 请求频率超出限制 | 降低调用频率,启用重试退避策略 |
| 响应超时(504) | 网络延迟或服务端负载过高 | 增加超时阈值,检查网络连接 |
| 文件不存在 | 路径错误或文件未创建 | 检查路径拼写,确认文件已生成 |
| 文件格式不支持 | 扩展名不在支持列表中 | 转换为支持的格式后重试 |
| 权限不足 | 当前用户无读写权限 | 检查文件权限,以管理员身份运行 |
| 命令执行失败 | 参数错误或环境依赖缺失 | 检查命令语法,确认依赖已安装 |
| 进程超时 | 命令执行时间过长 | 增加超时设置,优化命令参数 |
| 网络连接失败 | DNS解析失败或防火墙拦截 | 检查网络配置,确认代理设置 |
针对"MCPorter移植工具"使用中可能遇到的常见问题,提供以下排查方案:
| 错误类型 | 原因分析 | 解决方案 |
|---|---|---|
| API认证失败(401) | API密钥错误或过期 | 检查密钥配置,重新生成token |
| 接口限流(429) | 请求频率超出限制 | 降低调用频率,启用重试退避策略 |
| 响应超时(504) | 网络延迟或服务端负载过高 | 增加超时阈值,检查网络连接 |
| 文件不存在 | 路径错误或文件未创建 | 检查路径拼写,确认文件已生成 |
| 文件格式不支持 | 扩展名不在支持列表中 | 转换为支持的格式后重试 |
| 权限不足 | 当前用户无读写权限 | 检查文件权限,以管理员身份运行 |
| 命令执行失败 | 参数错误或环境依赖缺失 | 检查命令语法,确认依赖已安装 |
| 进程超时 | 命令执行时间过长 | 增加超时设置,优化命令参数 |
| 网络连接失败 | DNS解析失败或防火墙拦截 | 检查网络配置,确认代理设置 |