MCP 服务器管理

查看、更新与维护 MCP 服务器配置

概述

本节介绍如何列出、查看、删除与检测 MCP 服务器状态。

列出服务器

claude mcp list
已配置的 MCP 服务器:

本地范围:
- github: https://api.githubcopilot.com/mcp/
- sentry: https://mcp.sentry.dev/mcp

项目范围:
- database: stdio server
- api: http server

用户范围:
- formatter: stdio server

列出特定范围

claude mcp list --scope local
claude mcp list --scope project
claude mcp list --scope user

获取服务器详情

claude mcp get <server-name>
claude mcp get github
服务器名称: github
传输方式: http
URL: https://api.githubcopilot.com/mcp/
范围: local
状态: 已连接
工具: 15
资源: 5
claude mcp get database
服务器名称: database
传输方式: stdio
命令: npx -y @bytebase/dbhub
参数: --dsn "postgresql://readonly:pass@prod.db.com:5432/analytics"
范围: project
状态: 已连接
工具: 8
资源: 3

删除服务器

claude mcp remove <server-name>
claude mcp remove github
确认删除服务器 github? (y/n): y
服务器 github 已成功删除

删除特定范围

claude mcp remove github --scope local
claude mcp remove database --scope project
claude mcp remove formatter --scope user

批量删除

claude mcp remove github sentry database

检查服务器状态

Claude Code 内查看

/mcp
MCP 服务器状态:
本地范围:
 github: 已连接 (15 工具, 5 资源)
 sentry: 已连接 (10 工具, 3 资源)
项目范围:
 database: 已连接 (8 工具, 3 资源)
 api: 连接错误
用户范围:
 formatter: 已连接 (5 工具, 0 资源)

检查特定服务器状态

claude mcp get github
GitHub 服务器状态:
- 状态: 已连接
- 响应时间: 100ms
- 最后检查: 2 分钟前
- 工具数量: 15
- 资源数量: 5

测试服务器连接

# 测试所有 MCP 服务器连接
claude mcp list
测试 MCP 服务器连接:
 github: 连接成功 (50ms)
 sentry: 连接成功 (80ms)
 database: 连接成功 (30ms)
 api: 连接失败 - 超时

更新服务器配置

更新 HTTP 服务器

claude mcp remove github
claude mcp add --transport http github https://api.githubcopilot.com/mcp/v2

更新 stdio 服务器

claude mcp remove database
claude mcp add --transport stdio database \
  --env DB_URL=new-db-url \
  -- npx -y @bytebase/dbhub

更新环境变量

# 对于项目范围服务器,编辑 .mcp.json
vim .mcp.json
{
  "mcpServers": {
    "database": {
      "command": "npx",
      "args": ["-y", "@bytebase/dbhub"],
      "env": {
        "DB_URL": "${NEW_DB_URL:-postgresql://localhost/db}"
      }
    }
  }
}

重置配置

重置项目选择

claude mcp reset-project-choices

重置所有配置

# 删除所有本地范围服务器
claude mcp list --scope local | awk '{print $1}' | xargs claude mcp remove

# 删除所有用户范围服务器
claude mcp list --scope user | awk '{print $1}' | xargs claude mcp remove

监控服务器性能

# 显示 MCP 服务器性能统计
claude mcp list
MCP 服务器性能统计:

github:
- 平均响应时间: 100ms
- 总调用次数: 150
- 成功率: 99.3%
- 最后调用: 1 分钟前

sentry:
- 平均响应时间: 200ms
- 总调用次数: 50
- 成功率: 100%
- 最后调用: 5 分钟前

database:
- 平均响应时间: 50ms
- 总调用次数: 300
- 成功率: 98.7%
- 最后调用: 30 秒前

查看错误日志

# 显示 MCP 服务器错误日志
claude --verbose
MCP 服务器错误日志:

api:
- [2024-01-15 10:30:00] 连接超时
- [2024-01-15 10:35:00] API 限流

database:
- [2024-01-15 10:20:00] 查询超时
- [2024-01-15 10:25:00] 连接失败

故障排除

服务器连接失败

# 1. 检查服务器状态
/mcp

# 2. 测试连接
claude mcp list

# 3. 查看错误日志
claude --verbose

# 4. 验证配置
claude mcp get server-name

# 5. 重新配置服务器
claude mcp remove server-name
claude mcp add --transport http server-name <url>

服务器响应缓慢

# 1. 查看性能统计
claude mcp list

# 2. 检查网络连接
ping api.example.com

# 3. 增加超时设置
MCP_TIMEOUT=30000 claude

工具调用失败

# 1. 检查服务器状态
/mcp

# 2. 验证工具参数
# 检查工具参数

# 3. 查看错误日志
claude --verbose

配置文件错误

# 1. 验证 JSON 语法
cat .mcp.json | jq .

# 2. 检查环境变量
echo $API_KEY

# 3. 查看错误日志
claude --verbose

# 4. 修复配置文件
vim .mcp.json

最佳实践

# 每天检查一次
/mcp
# 定期查看性能统计
claude mcp list
# 定期清理不使用的服务器
claude mcp list
claude mcp remove unused-server
# 备份 .mcp.json
cp .mcp.json .mcp.json.backup

# 备份用户配置
cp ~/.claude/mcp.json ~/.claude/mcp.json.backup
# 创建配置文档
echo "MCP 服务器配置说明" > MCP_CONFIG.md
echo "- github: 用于代码审查" >> MCP_CONFIG.md
echo "- database: 用于数据查询" >> MCP_CONFIG.md

自动化管理

#!/bin/bash
# mcp-manager.sh

# 列出服务器
list_servers() {
    claude mcp list
}

# 添加服务器
add_server() {
    claude mcp add "$@"
}

# 删除服务器
remove_server() {
    claude mcp remove "$@"
}

# 检查状态
check_status() {
    echo "> /mcp" | claude
}

# 主函数
case "$1" in
    list) list_servers ;;
    add) shift; add_server "$@" ;;
    remove) shift; remove_server "$@" ;;
    status) check_status ;;
    *) echo "用法: $0 {list|add|remove|status}" ;;
esac
#!/bin/bash
# mcp-maintenance.sh

# 检查所有服务器状态
echo "检查 MCP 服务器状态..."
claude mcp list

# 测试连接
echo "测试服务器连接..."
claude mcp list

# 查看性能统计
echo "查看性能统计..."
claude mcp list

# 备份配置
echo "备份配置..."
cp ~/.claude/mcp.json ~/.claude/mcp.json.backup.$(date +%Y%m%d)
# 添加到 crontab
crontab -e

# 每天凌晨 2 点运行维护脚本
0 2 * * * /path/to/mcp-maintenance.sh

On this page