使用说明

项目简介

Agentics Edge Functions 仓库是一个开源项目,旨在为在网络边缘运行的分布式自主AI Agent提供技术基础。其中,'mcp-server' 功能模块实现了 Model Context Protocol (MCP) 服务器,它充当 LLM 客户端和后端资源、工具的桥梁,提供标准化的上下文信息和功能访问。

主要功能点

  • 资源管理: MCP 服务器能够托管和管理各种资源,例如数据库表、存储文件和系统信息等,并允许 LLM 客户端通过标准化的 URI 访问这些资源。
  • 工具注册与执行: 服务器支持注册和执行外部工具,例如数据库查询工具、消息发送工具和系统信息获取工具,使 LLM 客户端能够调用这些工具来扩展其能力。
  • JSON-RPC 通信: MCP 服务器使用 JSON-RPC 协议与客户端进行通信,接收客户端的请求并返回符合 MCP 协议的响应。
  • 基于 Supabase Edge Functions: 该 MCP 服务器实现为 Supabase Edge Function,利用 Supabase 提供的 serverless 基础设施,易于部署和扩展。
  • 安全性: 通过密钥进行身份验证,保护 MCP 服务器的安全访问。

安装步骤

  1. 克隆仓库

    git clone https://github.com/agenticsorg/edge-agents
    cd edge-agents
  2. 安装 Supabase CLI 如果还没有安装 Supabase CLI,请根据 Supabase 文档 进行安装和配置。

  3. 关联 Supabase 项目 在仓库根目录下,使用 Supabase CLI 关联到你的 Supabase 项目。

  4. 配置环境变量 在 Supabase 项目的 "Settings" -> "Secrets" 中,设置以下环境变量:

    • 'MCP_SECRET_KEY': 用于 MCP 客户端身份验证的密钥,请设置一个安全的随机字符串。
    • 'SUPABASE_URL': 你的 Supabase 项目 URL。
    • 'SUPABASE_SERVICE_ROLE_KEY': 你的 Supabase 服务角色密钥。
    • (可选) 'OPENROUTER_API_KEY': 如果需要使用 agent-manager 中的 LLM 功能,请设置 OpenRouter API 密钥。
  5. 部署 'mcp-server' Edge Function 使用 Supabase CLI 部署 'mcp-server' 函数:

    supabase functions deploy mcp-server --no-verify-jwt

    请注意 '--no-verify-jwt' 参数是为了简化部署,生产环境请根据需要配置 JWT 验证。

服务器配置 (MCP 客户端配置)

以下 JSON 配置信息用于 MCP 客户端连接到部署在 Supabase Edge Functions 上的 MCP 服务器。请将以下配置填入你的 MCP 客户端配置中。

{
  "serverName": "Agentics MCP Server",
  "command": "supabase/functions/mcp-server",
  "args": [],
  "transport": "http-json-rpc",
  "baseUrl": "YOUR_SUPABASE_FUNCTIONS_URL/mcp-server/mcp",
  "headers": {
    "Authorization": "Bearer YOUR_MCP_SECRET_KEY"
  },
  "description": "Agentics MCP Server running as a Supabase Edge Function"
}

配置参数说明:

  • 'serverName': MCP 服务器的名称,可以自定义。
  • 'command': 对于 HTTP 传输方式,此字段不直接使用,可以作为占位符。
  • 'args': 对于 HTTP 传输方式,此字段不直接使用,保持空数组 '[]' 即可。
  • 'transport': 指定 MCP 客户端与服务器的通信方式,这里设置为 '"http-json-rpc"',表示使用 HTTP 协议和 JSON-RPC 消息格式。
  • 'baseUrl': 请务必替换 'YOUR_SUPABASE_FUNCTIONS_URL' 为你部署的 'mcp-server' Supabase Edge Function 的实际 URL 地址。 你可以在 Supabase 控制台的 "Functions" 页面找到已部署函数的 URL。URL 结尾需要加上 '/mcp' 以指向 MCP 服务端点。
  • 'headers': HTTP 请求头信息,用于身份验证和传递其他元数据。
    • 'Authorization': 请务必替换 'YOUR_MCP_SECRET_KEY' 为你在 Supabase Secrets 中设置的 'MCP_SECRET_KEY' 环境变量的值。 这是 MCP 客户端连接服务器时进行身份验证的关键,确保只有授权的客户端才能访问 MCP 服务器。
  • 'description': MCP 服务器的描述信息,可以自定义。

基本使用方法

配置完成后,MCP 客户端即可通过 HTTP 请求与 MCP 服务器进行交互。客户端可以发送符合 MCP 协议的 JSON-RPC 请求到 'baseUrl' 指定的端点,以实现资源访问和工具调用等功能。

例如,客户端可以发送请求列出所有可用的工具,或者调用数据库查询工具来检索数据。 具体请求格式和可用方法请参考 Model Context Protocol 的官方文档和仓库代码中的 'supabase/functions/mcp-server' 目录下的实现。

信息

分类

AI与计算