MCP Adapter 开发文档

CLI 使用指南

Estimated reading: 6 minutes 2 views 贡献人员

CLI 使用指南

本指南涵盖如何使用 MCP Adapter 的 CLI 功能进行 STDIO 传输和开发工作流程。

概述

MCP Adapter 包含 WP-CLI 命令,可使用 JSON-RPC 2.0 协议通过标准输入/输出 (STDIO) 与 MCP 客户端通信。这对于以下情况特别有用:

  • 开发和测试工作流程
  • 命令行自动化和脚本
  • IDE 集成和开发工具

可用命令

wp mcp-adapter serve

通过 STDIO 传输服务于 MCP 服务器,用于与 MCP 客户端通信。

语法

wp mcp-adapter serve [--server=<server-id>] [--user=<id|login|email>]

选项

  • --server=<server-id> – 要服务的 MCP 服务器的 ID。如果未指定,则使用第一个可用的服务器。
  • --user=<id|login|email> – 以特定的 WordPress 用户身份运行以进行权限检查。如果没有此选项,将以未认证用户身份运行(权限受限)。

示例

# 以管理员用户身份服务于默认 MCP 服务器
wp mcp-adapter serve --user=admin

# 以 ID 为 1 的用户身份服务于特定服务器
wp mcp-adapter serve --server=my-mcp-server --user=1

# 无身份验证服务(权限受限)
wp mcp-adapter serve --server=public-server

wp mcp-adapter list

列出所有可用的 MCP 服务器及其配置。

语法

wp mcp-adapter list [--format=<format>]

选项

  • --format=<format> – 输出格式(table、json、csv、yaml)。默认:table。

示例

# 以表格格式列出服务器
wp mcp-adapter list

# 以 JSON 格式列出服务器
wp mcp-adapter list --format=json

STDIO 传输协议

STDIO 传输使用 JSON-RPC 2.0 协议进行通信:

请求格式

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list",
  "params": {}
}

响应格式

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "tools": [...]
  }
}

集成示例

与 MCP 客户端配合使用

许多 MCP 客户端可以启动子进程服务器。以下是配置方法:

Claude Desktop 配置

{
  "mcpServers": {
    "wordpress": {
      "command": "wp",
      "args": [
        "--path=/path/to/your/wordpress/site",
        "mcp-adapter",
        "serve",
        "--server=your-server-id",
        "--user=admin"
      ]
    }
  }
}

开发工作流程

CLI 命令对于开发特别有用:

# 在本地测试您的 MCP 服务器
wp mcp-adapter serve --user=admin --server=my-dev-server

# 在开发过程中列出可用服务器
wp mcp-adapter list --format=json | jq '.[].id'

# 使用不同的用户权限测试
wp mcp-adapter serve --user=editor --server=content-server

身份验证和权限

用户上下文

使用 --user 选项时,MCP 服务器将以该用户的权限运行:

# 以管理员身份运行(完全访问权限)
wp mcp-adapter serve --user=admin

# 以编辑者身份运行(受限访问)
wp mcp-adapter serve --user=editor

# 以特定用户 ID 运行
wp mcp-adapter serve --user=123

权限调试

使用 WP-CLI 的 --debug 标志查看权限检查:

wp mcp-adapter serve --user=admin --debug

错误处理

CLI 命令包括全面的错误处理:

常见错误

服务器未找到

wp mcp-adapter serve --server=nonexistent
# 错误:未找到 ID 为 'nonexistent' 的服务器。

用户未找到

wp mcp-adapter serve --user=baduser
# 错误:无效的用户 ID、邮箱或登录名:'baduser'

无服务器可用

wp mcp-adapter serve
# 错误:无可用的 MCP 服务器。请确保服务器已通过 mcp_adapter_init 注册。

调试输出

启用调试输出以进行故障排除:

wp mcp-adapter serve --user=admin --debug

这将显示:

  • 服务器初始化过程
  • 用户身份验证详情
  • 请求/响应流程
  • 错误详情

高级使用

自定义服务器选择

当有多个服务器可用时,指定要服务的服务器:

# 列出可用服务器
wp mcp-adapter list

# 服务特定服务器
wp mcp-adapter serve --server=content-management --user=admin

环境特定配置

为不同的环境使用不同的配置:

# 开发环境
wp mcp-adapter serve --server=dev-server --user=admin

# 预发布环境
wp mcp-adapter serve --server=staging-server --user=staging-user

# 生产环境(受限访问)
wp mcp-adapter serve --server=prod-server --user=api-user

最佳实践

开发

  • 开发期间使用 --debug 以获取详细输出
  • 使用不同的用户角色测试以验证权限
  • 使用 wp mcp-adapter list 验证服务器注册

生产

  • 显式指定用户以确保权限一致
  • 使用特定的服务器 ID 而不是默认值
  • 在客户端应用程序中实现适当的错误处理

安全

  • 除非必要,否则避免以管理员用户身份运行
  • 使用最小权限用户账户
  • 验证服务器 ID 以防止未经授权的访问

此 CLI 功能为将 WordPress MCP 服务器与开发工具、自动化工作流程和 MCP 客户端集成提供了强大的接口。

留下第一个评论