OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  mcps-skill:MCP 命令行管理器——管理服务器并调用相关工具

mcps-skill:MCP 命令行管理器——管理服务器并调用相关工具

 
  library ·  2026-02-20 13:03:25 · 3 次点击  · 0 条评论  

名称: mcps
描述: MCP CLI 管理器 - 管理 MCP 服务器并调用工具
主页: https://github.com/maplezzk/mcps
元数据: {"clawdbot":{"emoji":"🔌","requires":{"bins":["mcps"]},"install":[{"id":"npm","kind":"node","package":"@maplezzk/mcps","bins":["mcps"],"label":"安装 mcps"}]}}


mcps - MCP CLI 管理器

一个用于管理和调用 MCP(模型上下文协议)服务器的强大命令行工具。

安装

npm install -g @maplezzk/mcps

配置示例

添加各类 MCP 服务器

# 添加 fetch 服务器(网页抓取)
mcps add fetch --command uvx --args mcp-server-fetch

# 添加 PostgreSQL 服务器
mcps add postgres --command npx --args @modelcontextprotocol/server-postgres --env POSTGRES_CONNECTION_STRING="${DATABASE_URL}"

# 添加 GitLab 服务器
mcps add gitlab --command npx --args gitlab-mcp-server

# 添加 SSE 服务器
mcps add remote --type sse --url http://localhost:8000/sse

# 添加 HTTP 服务器
mcps add http-server --type http --url http://localhost:8000/mcp

配置文件示例 (~/.mcps/mcp.json)

{
  "servers": [
    {
      "name": "fetch",
      "type": "stdio",
      "command": "uvx",
      "args": ["mcp-server-fetch"]
    },
    {
      "name": "postgres",
      "type": "stdio",
      "command": "npx",
      "args": ["@modelcontextprotocol/server-postgres"],
      "env": {
        "POSTGRES_CONNECTION_STRING": "${DATABASE_URL}"
      }
    },
    {
      "name": "gitlab",
      "type": "stdio",
      "command": "npx",
      "args": ["gitlab-mcp-server"],
      "env": {
        "GITLAB_PERSONAL_ACCESS_TOKEN": "${GITLAB_TOKEN}",
        "GITLAB_API_URL": "https://gitlab.com/api/v4"
      }
    }
  ]
}

注意:敏感数据请使用环境变量(格式为 ${VAR_NAME})。

快速开始

# 1. 添加一个 MCP 服务器
mcps add fetch --command uvx --args mcp-server-fetch

# 2. 启动守护进程
mcps start

# 3. 检查状态
mcps status

# 4. 列出可用工具
mcps tools fetch

# 5. 调用工具
mcps call fetch fetch url="https://example.com"

命令参考

服务器管理

命令 描述
mcps ls 列出所有已配置的服务器
mcps add <名称> --command <命令> --args <参数> 添加新服务器
mcps rm <名称> 移除服务器
mcps update [名称] 更新服务器配置
mcps update <名称> --disabled true 禁用服务器

守护进程控制

命令 描述
mcps start [--verbose] 启动守护进程(--verbose 模式用于调试)
mcps stop 停止守护进程
mcps restart [服务器] 重启守护进程或特定服务器
mcps status 检查守护进程状态

工具调用

命令 描述
mcps tools <服务器> [--simple] 列出可用工具
mcps call <服务器> <工具> [参数...] 调用工具

工具调用:参数传递

默认模式(自动 JSON 解析)

# 字符串值按原样发送
mcps call fetch fetch url="https://example.com"

# 数字和布尔值自动解析
mcps call fetch fetch max_length=5000 follow_redirects=true
# 发送:{ "max_length": 5000, "follow_redirects": true }

# JSON 对象(外部使用单引号)
mcps call my-server createUser user='{"name": "Alice", "age": 30}'

--raw 模式(保持值为字符串)

# 对于 SQL ID、代码或不应解析的字符串,使用 --raw
mcps call my-db createOrder --raw order_id="12345" sku="ABC-001"
# 发送:{ "order_id": "12345", "sku": "ABC-001" }

# 包含特殊字符的 SQL
mcps call alibaba-dms createDataChangeOrder --raw \
  database_id="123" \
  script="DELETE FROM table WHERE id = 'xxx';" \
  logic="true"

--json 模式(复杂参数)

# 从 JSON 字符串
mcps call my-server createUser --json '{"name": "Alice", "age": 30}'

# 从文件
mcps call my-server createUser --json params.json

实际使用示例

场景 1:网页抓取与搜索

# 抓取网页内容
mcps call fetch fetch url="https://example.com" max_length=5000

# 深度抓取(跟踪链接)
mcps call fetch fetch url="https://example.com" follow_redirects=true max_depth=2

# 过滤抓取
mcps call fetch fetch url="https://news.example.com" include_tags='["article", "p"]' exclude_tags='["script", "style"]'

场景 2:数据库查询

# 查询数据(自动解析参数)
mcps call postgres query sql="SELECT * FROM users WHERE active = true LIMIT 10"

# 保持参数为字符串(使用 --raw)
mcps call postgres query --raw sql="SELECT * FROM orders WHERE id = '12345'"

场景 3:复杂参数传递

# JSON 对象参数
mcps call my-server createUser user='{"name": "Alice", "age": 30, "tags": ["admin", "user"]}'

# 从文件加载 JSON
mcps call my-server createUser --json user.json

# 混合参数(部分自动解析,部分保持原始)
mcps call my-server update --raw id="123" data='{"name": "Updated"}'

场景 4:服务器管理

# 查看所有服务器配置
mcps ls

# 检查活动连接
mcps status

# 重启单个服务器
mcps restart postgres

# 重启所有服务器
mcps restart

# 禁用服务器(不删除配置)
mcps update my-server --disabled true

# 移除服务器
mcps rm my-server

场景 5:工具过滤与搜索

# 仅显示工具名称(简单模式)
mcps tools postgres --simple

# 按关键词过滤工具
mcps tools postgres --tool query --tool describe

# 查找包含 "create" 的工具
mcps tools postgres --tool create

配置

  • 配置文件~/.mcps/mcp.json
  • 环境变量
  • MCPS_CONFIG_DIR:配置目录
  • MCPS_PORT:守护进程端口(默认:4100)
  • MCPS_VERBOSE:详细日志模式

常见问题

问:如何检查服务器状态?

mcps status  # 检查活动连接
mcps ls      # 检查所有配置(包括已禁用的)

问:服务器连接失败?

mcps start --verbose  # 查看详细日志
mcps restart my-server  # 重启特定服务器

问:如何快速查找工具?

mcps tools my-server --tool 关键词  # 按关键词过滤
mcps tools my-server --simple        # 仅显示名称

问:参数中包含特殊字符(如 SQL)?

# 使用 --raw 保持字符串格式
mcps call alibaba-dms createDataChangeOrder --raw \
  database_id="123" \
  script="DELETE FROM table WHERE id = 'xxx';" \
  logic="true"

问:守护进程启动缓慢?
- 首次启动会加载所有服务器,10-15 秒是正常的
- 后续启动会更快(约 2 秒)
- 使用 mcps ls 可在不启动守护进程的情况下检查配置

3 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor