mcpField
M
Monad MCP Server

Monad MCP Server

本地服务
github.com/lispking金融数据076 周前更新

关于 Monad MCP Server

Monad MCP Server 为开发者提供与 Monad 测试网交互的 MCP 工具,包括代币、合约、NFT 和区块操作。它通过 stdio 连接兼容 MCP 的客户端,并支持需要私钥的交易与合约部署。

主要功能

  1. 01查询 MON 余额并发送交易
  2. 02部署合约并监听事件
  3. 03查询 Monad NFT 信息
  4. 04获取最新区块或按编号查询

适用场景

  1. 01检查 Monad 账户的 MON 余额
  2. 02向其他账户发送 MON
  3. 03部署合约并监控其事件
  4. 04查询 NFT 或区块详情

MCP 相关

该 MCP 服务向兼容客户端提供 Monad 测试网工具,通过 stdio 传输。交易和合约部署使用环境变量中的账户私钥。

配置

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

暂未收录安装方式

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

代码仓库

工具

还没有获取到工具列表

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

详细介绍

Monad MCP 服务

此 MCP(Model Context Protocol)服务旨在与 Monad 测试网交互。它提供了一套工具和功能,供开发者与 Monad 区块链交互,包括查询 MON 代币余额、发送交易、部署智能合约以及监控区块链事件。

Monad Server MCP server

什么是 MCP?

Model Context Protocol(MCP)是一种标准化接口,可让 AI 模型安全、高效地与外部工具、服务和数据源交互。此服务通过实现 MCP,向兼容的 AI Agent 或应用程序提供 Monad 区块链功能。

项目结构

项目组织如下:

monad-mcp-server/
├── .env.example        # Example environment variables file
├── .gitignore          # Specifies intentionally untracked files that Git should ignore
├── LICENSE             # Project's software license
├── README.md           # This file, providing an overview and instructions
├── package-lock.json   # Records the exact versions of dependencies
├── package.json        # Lists project dependencies and scripts
├── pnpm-lock.yaml      # PNPM lockfile for dependency resolution
├── src/                # Source code directory
│   ├── config/         # Configuration files
│   │   └── server.ts   # Server setup and Viem client initialization
│   ├── index.ts        # Main entry point of the application
│   └── tools/          # MCP tools for interacting with Monad
│       ├── block/      # Tools related to blockchain blocks (e.g., get-latest-block)
│       ├── contract/   # Tools for smart contract interactions (e.g., deploy, watch events)
│       ├── nft/        # Tools for Non-Fungible Tokens (e.g., query-mon-nft)
│       └── wallet/     # Tools for wallet operations (e.g., get balance, send transactions)
└── tsconfig.json       # TypeScript compiler configuration
核心组件
  • src/index.ts:这是服务的主要入口点。它会初始化 MCP 服务实例,并注册所有可用工具(钱包、合约、NFT、区块)。
  • src/config/server.ts:此文件负责核心服务配置。它会设置 McpServer 实例的名称、版本和功能列表。此外,它还会初始化用于与 Monad 测试网交互的 Viem 公共客户端,并提供一个函数,用于使用环境变量中的私钥创建 Viem 钱包客户端。服务使用 StdioServerTransport 进行通信。
  • src/tools/:此目录包含各种 MCP 工具的实现。每个子目录通常专注于 Monad 交互的某个特定方面:
    • walletProvider:管理 MON 代币余额和交易。
    • contractProvider:处理智能合约部署和事件监听。
    • nftProvider:提供查询 Monad 网络上 NFT 的功能。
    • blockProvider:提供获取区块信息的工具。

前提条件

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

  • Node.js(版本 16 或更高)
  • Node.js 包管理器:npm、yarn 或 pnpm(本项目示例使用 pnpm)
  • Claude Desktop(或任何兼容 MCP 的客户端),用于与服务交互。
环境变量(.env)

本项目使用环境变量管理敏感信息,主要是 Monad 账户的私钥。

  1. 复制示例文件:复制 .env.example 并将其重命名为 .env。
    cp .env.example .env
    
  2. 编辑 .env:在文本编辑器中打开新创建的 .env 文件。
  3. 设置 PRIVATE_KEY:将 Monad 账户的私钥填入 PRIVATE_KEY 变量。发送交易或部署合约等操作需要此密钥。
    PRIVATE_KEY="0xyourprivatekeyhere"
    
    重要:确保私钥以 0x 开头。
  4. 安全性:切勿将 .env 文件提交到 Git 仓库。.gitignore 文件已配置为防止这种情况,但仍需始终注意保护私钥。

开始使用

按照以下步骤设置并运行 Monad MCP 服务:

  1. 克隆仓库:

    如果尚未克隆,请从 GitHub 克隆项目:

    git clone https://github.com/lispking/monad-mcp-server.git
    cd monad-mcp-server
    
  2. 安装依赖项:

    使用 pnpm(或你偏好的包管理器)安装 package.json 中列出的项目依赖项:

    pnpm install
    
  3. 构建项目:

    此服务使用 TypeScript 编写,需要编译为 JavaScript。运行构建脚本:

    pnpm build
    

    此命令将使用 package.json 中定义的 tsc(TypeScript 编译器),将 src 目录中的源文件编译到 build 目录中。

现在,服务已构建完成,可供 MCP 客户端使用。

服务功能

根据 src/config/server.ts 中的定义,该服务提供以下功能:

  • get-mon-balance:获取账户的 MON 代币余额。
  • send-mon-transaction:将 MON 代币从一个账户发送到另一个账户。
  • deploy-mon-contract:在 Monad 测试网上部署智能合约。
  • watch-contract-events:监控并报告特定智能合约发出的事件。
  • query-mon-nft:查询 Monad 网络上非同质化代币的信息。
  • get-latest-block:获取 Monad 测试网上最新区块的详细信息。
  • get-block-by-number:根据区块编号获取特定区块。

将 MCP 服务配置添加到客户端

要在兼容 MCP 的客户端(例如 Claude Desktop)中使用此服务,需要将其配置添加到客户端设置中。具体方法可能因客户端而异,但通常需要指定如何运行服务。

以下是配置示例片段:

{
  "mcpServers": {
    // ... other server configurations ...
    "monad-mcp": {
      "command": "node",
      "args": [
        "/absolute/path/to/your/project/monad-mcp-server/build/index.js"
      ],
      "env": {
        "PRIVATE_KEY": "<your_monad_private_key_if_not_using_dotenv_or_to_override>"
      }
    }
    // ... other server configurations ...
  }
}

配置字段说明:

  • "monad-mcp":你为客户端中的此服务配置指定的唯一名称。
  • "command": "node":指定该服务是一个 Node.js 应用程序。
  • "args":要传递给 node 命令的参数数组。
    • 第一个参数是服务编译后入口文件的路径:/absolute/path/to/your/project/monad-mcp-server/build/index.js。将 /absolute/path/to/your/project/ 替换为你克隆 monad-mcp-server 仓库的实际绝对路径。
  • "env":用于为服务进程设置环境变量的对象。
    • "PRIVATE_KEY":你可以在此处设置私钥。不过,通常建议使用 .env 文件以提高安全性。根据客户端行为和服务加载环境变量的顺序,在此处设置的值可能会覆盖 .env 中的值。

注意:确保 "args" 中的路径正确,并指向项目目录中的 build/index.js 文件。

更多资源

如需了解所用技术和相关概念的更多详细信息,请参阅以下官方文档:

这份全面的 README 应能帮助你充分了解 Monad MCP 服务及其设置和用法。

评论

支持 Markdown

第一次接触 MCP?

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

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