Skip to content

MCP Server 骨架 + 认证 + proxy_status 工具 #1

Description

@jayeliu

What to build

在 VibeGuard 代理进程中内嵌一个 MCP Server,通过 Streamable HTTP 协议暴露 POST /mcp 端点。该端点复用现有代理端口 127.0.0.1:28657,与 Admin 面板共享 HTTP 服务。

本切片是后续所有 MCP 工具的骨架,需实现:

  1. JSON-RPC 2.0 解析层:支持 JSON-RPC request/response 序列化与反序列化,错误码使用标准范围(-32600 ~ -32603 用于协议错误,-32000 ~ -32099 用于业务错误)。
  2. Bearer Token 认证中间件:Token 由 admin 密码派生(HMAC)。未认证请求返回 JSON-RPC error code -32001
  3. get_proxy_status tracer bullet 工具:作为第一个可用工具验证全链路。Claude Code 配置 MCP 后能查询 VibeGuard 代理是否在线、监听地址、启动时间、统计信息。
  4. 配置开关config.yaml 新增 mcp.enabled(默认 true)。

端到端可验证:用户配置 Claude Code MCP → 调用 get_proxy_status → 返回代理状态。

Acceptance criteria

  • POST /mcp 端点正确解析 JSON-RPC 2.0 请求并路由到对应工具
  • 认证失败时返回 JSON-RPC error code -32001(Unauthorized)
  • 认证成功后 get_proxy_status 返回代理运行状态、监听端口、启动时间、请求统计
  • mcp.enabledfalse 时 MCP 端点返回 404 或不可用
  • 单元测试覆盖 JSON-RPC 解析、认证中间件、工具路由

Blocked by

None - can start immediately

Metadata

Metadata

Assignees

No one assigned

    Labels

    ready-for-agent已充分定义,AFK agent 可直接处理

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions