LocalMCP Server (Bedrock AgentCore 本地原型实现)

使用说明

  • 项目简介 该仓库包含一个本地原型的 MCP 服务器实现及相关组件,提供资源、工具和会话管理能力,采用 JSON-RPC 风格的 MCP 协议进行请求/响应交互,支持本地快速搭建用于开发与演示。
  • 主要功能点
    • 可运行的 MCP 服务端:提供一组 MCP 工具(Tools)和资源(Resources)的注册与调用接口,通过 JSON-RPC 进行通信。
    • 会话与上下文管理:维持对话会话、会话标识等上下文信息,便于多轮对话场景的任务执行。
    • 数据与工具模型:包含设备、网络、用户、活动等数据模型的工具入口,便于演示设备管理场景。
    • 传输协议支持:支持基于 HTTP 的流式传输模式(streamable-http),可组合多种传输方式进行数据传输。
    • 自动化加载与初始化:提供 init/init_db 等模块,用于初始化数据结构、表格和资源注册。
  • 安装步骤
    • 克隆仓库并进入项目目录,确保 Python 环境就绪(Python3.x)。
    • 安装依赖(如 bedrock agentcore、mcp、Strands 等相关依赖)。
    • 进入本地 MCP 服务器目录,直接运行 server.py 启动服务器:python3 server.py
    • 按需调整环境变量配置,确保依赖(如 DynamoDB、Bedrock Agents 相关服务)可用。
  • 服务器配置 MCP 客户端连接服务器时需要提供一个配置(JSON),描述服务器启动命令与参数等信息。示例配置如下(请仅作为参考,实际环境中请根据本地路径和需求替换参数): { "server_name": "LocalMCP", "command": "python3", "args": ["server.py"], "workingDirectory": "/path/to/02-use-cases/local-prototype-to-agentcore/local_prototype/local_mcp_server", "transport": "streamable-http", "notes": "本地开发环境,请确保依赖已安装并且云端服务可访问。" } 说明:
    • server_name: MCP 服务器的名称,供客户端识别使用。
    • command 与 args: 启动服务器所需的命令及参数,客户端据此启动并连接。
    • workingDirectory: 服务器工作目录,确保包含 server.py 等入口文件。
    • transport: 指定传输协议,示例为 streamable-http,具体可选取客户端支持的传输方式。
  • 基本使用方法
    • 启动服务器后,MCP 客户端通过提供的连接信息即可与服务器建立会话和执行工具调用。
    • 通过工具/资源入口执行对设备、网络、用户、活动等数据的查询与操作,示例场景包括列出设备、获取设备设置、查询用户活动等。
    • 结合前端或其他框架,利用 JSON-RPC 进行远程调用,获得统一的 JSON-RPC 响应格式。

服务器信息