使用说明内容(Markdown格式)

Carbon MCP 服务器使用说明

  • 项目简介

    • Carbon MCP 服务器是一个基于 MCP(Model Context Protocol)的后端服务,实现对资源、工具和对话模板的标准化对接,供大语言模型(LLM)客户端调用。当前实现采用 Python 的 FastAPI + MCP 库,暴露一组预定义的工具集,方便在对话中读取数据、执行外部功能、并查询/操作商品、库存、发货等业务。
  • 主要功能点

    • 工具注册与执行:将多组业务工具(如库存检查、下单/预留库存、发货跟踪、购物车操作、商品管理等)注册到 MCP 服务器,LLM 客户端可通过 MCP 调用这些工具实现外部能力调用。
    • 资源与数据访问:通过后端应用接口,间接提供对库存、订单、运输等核心资源的访问能力,便于在对话中获取上下文信息。
    • 会话上下文管理:通过 TraceContext 等机制,按请求绑定并传递调用上下文(traceId、用户信息、权限作用域等)。
    • 批量/分组操作支持:对批量创建/更新等操作提供相应工具,便于在对话中执行复杂任务序列。
    • 兼容性与扩展性设计:采用模块化设计,支持按需开启/关闭模块,便于将来扩展新的工具或资源。
  • 安装步骤

    • 先确保系统具备运行环境(Java、Python、Node、数据库等依赖)与容器化能力(如 Docker/Compose)。
    • 启动后端与依赖服务(示例基于仓库的 docker-compose 设置,若直接运行,请参考以下命令)。
    • 启动 MCP 服务器组件(Carbon Agent):
      • 运行方式通常为:启动 Python 服务(FastAPI + MCP 服务)并监听端口 8000,确保对外可访问。
    • 端口与访问路径(示例):
      • MCP 服务端监听 8000 端口
      • 工具列表端点:/tools 提供当前可用工具的清单
      • 健康检查端点:/health(用于健康状态监测)
  • 服务器配置(MCP 客户端连接配置,JSON 格式) 说明:以下配置供 MCP 客户端在首次接入时使用,用于明确服务器名称、启动命令及参数等信息。此信息帮助客户端建立与 MCP 服务器的连接与初始协商。该配置仅用于描述连接信息,不要求在 MCP 客户端中执行。 { "serverName": "carbon-agent-mcp", "command": "uvicorn", "args": [ "apps.carbon-agent.main:app", "--host", "0.0.0.0", "--port", "8000" ], "notes": "Carbon MCP 服务器端使用 FastAPI + MCP 库实现,入口应用暴露工具集合和服务接口,通过 HTTP/JSON-RPC 与客户端交互。请确保在生产环境中端口对外可访问,并根据部署方式调整启动命令路径。若使用容器部署,请在容器网络中暴露 8000 端口。" }

  • 基本使用方法

    • 启动与接入
      • 启动碳基 MCP 服务器后,LLM 客户端可以通过 MCP 协议向服务器发起请求,请求内容包括读取资源、执行工具、获取/prompts等。
      • 客户端应在初次连接时提供服务器信息、认证信息(若开启鉴权),并按 MCP 规范进行请求。
    • 调用工具与资源
      • 通过 MCP 请求,LLM 客户端可以调用注册的工具,例如查询库存、跟踪发货、获取购物车等,以获得上下文信息和执行结果。
    • 会话与上下文
      • 服务器实现包含会话管理与 trace 信息绑定,确保在同一请求链中的操作能够携带 traceId、用户信息与权限作用域,便于审计和追踪。
    • 安全与扩展
      • 若部署在需要鉴权的环境,请启用相应的安全配置并在 MCP 客户端传递 JWT 或等效凭证。服务器端应当提供必要的证书/密钥配置与访问控制。
  • 运行与维护要点

    • 监控与日志:关注工具执行结果、调用耗时与错误信息;在生产环境中可接入日志聚合系统。
    • 容错与扩展:当前实现支持按需开启模块和工具,未来可扩展新的工具集、资源类型及数据源。

信息

分类

AI与计算