mcpField
H
Hedera MCP Server

Hedera MCP Server

本地服务
github.com/hedera-dev金融数据177 周前更新

关于 Hedera MCP Server

Hedera MCP 服务通过 LangChain 封装服务处理自然语言请求并执行 Hedera 网络操作。适合需要以对话方式调用 Hedera 功能的用户。

主要功能

  1. 01通过 LangChain 代理处理请求
  2. 02执行 Hedera 网络操作
  3. 03支持创建代币与转账 HBAR
  4. 04可与智能合约交互
  5. 05通过令牌验证连接

适用场景

  1. 01用自然语言发起 Hedera 操作
  2. 02创建代币或转移 HBAR
  3. 03调用 Hedera 智能合约

MCP 相关

MCP 服务将请求转发给运行中的 LangChain 代理,由其在 Hedera 网络上执行相应操作。提供 SSE 连接,并要求通过 X-MCP-AUTH-TOKEN 验证。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Hedera MCP 服务

此项目提供了一个与 Langchain 包装器集成、用于与 Hedera 网络交互的服务。借助 Langchain 设置,用户可以通过自然语言命令执行 Hedera 操作。

⚠️ 注意

由于 master 分支上的当前版本是从另一个仓库迁移而来的,因此暂时包含尚未正式发布的 hedera-agent-kit 包。该包作为从 GitHub 拉取的依赖项包含在内。

先决条件

开始之前,请确保已安装以下内容:

  • Node.js(推荐使用 20 或更高版本)
  • pnpm(npm install -g pnpm)
  • Git

快速开始

整个项目由两个需要运行的服务组成。

  1. 克隆仓库:

    git clone https://github.com/mateuszm-arianelabs/hedera-mcp-server.git
    cd hedera-mcp-server
    
  2. 在各个包中设置环境变量:

    • 需要将 .env.example 文件复制并在以下两个位置创建 .env 文件:
      • packages/langchain-proxy
      • packages/mcp-server

编辑 .env 文件并填写所需的配置值(例如,Hedera 密钥、网络详情)。

API_URL=                  # url to langchain proxy endpoint
PORT=                     # port on which MCP server will be started
MCP_AUTH_TOKEN=           # array of accepted tokens separated by comas
LANGCHAIN_PROXY_TOKEN=    # token for accessing the Langchain proxy
  1. 安装依赖项:

    pnpm install
    
  2. 启动 Lang chain 代理服务

    pnpm run dev:lc
    

    (如果已配置,也可以使用 pnpm start 以生产模式运行)。

  3. 运行 MCP 服务:

    pnpm run dev:mcp
    

    (如果已配置,也可以使用 pnpm start 以生产模式运行)。

可用工具

  • 与 Hedera 交互: 此核心功能使服务能够调用正在运行的 Langchain 包装器服务。包装器随后会解析这些请求,并在 Hedera 网络上执行相应操作(例如,创建代币、转移 HBAR、与智能合约交互)。

Visual Studio Code 配置

要与 MCP 服务建立连接,必须提供 X-MCP-AUTH-TOKEN 标头。

以下是 Visual Studio Code 的 .vscode/settings.json 配置示例:

{
    "mcp": {
        "inputs": [],
        "servers": {
            "hedera": {
                "type": "sse",
                "url": "http://localhost:3000/sse",
                "headers": { "X-MCP-AUTH-TOKEN": "your-mcp-auth-token"}
            }
        }
    }
}

注意:目前,Cursor IDE 不支持传递额外标头(例如 X-MCP-AUTH-TOKEN)。 来源:Cursor 论坛 不过,MCP 集成正在快速发展,预计未来版本的 Cursor 和其他 MCP 客户端工具将支持自定义标头。

可能迁移到 OAuth

截至 2025 年 3 月,官方 MCP OAuth 规范已发布,但仍存在一些限制和实施挑战。该方案可能会进行修订(来源)。

为未来集成 OAuth 做准备,以下示例仓库展示了 MCP + OAuth 配置:

在未来的开发阶段考虑为 MCP 服务采用基于 OAuth 的身份验证时,可以参考这些示例。

简化架构

架构图

API 文档(langchain-proxy)

GET /sse

与 MCP 服务建立服务器发送事件(SSE)连接。

请求
GET /sse
X-MCP-AUTH-TOKEN: example-token
标头类型说明
X-MCP-AUTH-TOKENstring必需的身份验证令牌,必须与服务端 env 文件(MCP_AUTH_TOKEN 变量)中的某个令牌匹配
响应

身份验证成功后,会建立一个内容类型为 text/event-stream 的 SSE 连接。

状态码

200 OK:连接成功建立
401 Unauthorized:身份验证令牌无效或缺失

错误响应

{
      "content": [
        {
          "type": "text",
          "content": "Unauthorized: Invalid or missing X-MCP-AUTH-TOKEN header"
        }
      ]
    }

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。