
MCP Server

2025.04.20
0
JavaScript区块链服务REST API金融服务
pikimon-mcp-server 是一个基于 Node.js 的服务,用于与 Monad Testnet 区块链网络进行交互。该服务提供了一个 REST API 接口,支持常见的区块链操作,如获取余额、发送交易等。它集成了 Web3.js 进行区块链交互,并支持环境变量配置、安全中间件(如 helmet 和 cors)、Swagger API 文档以及 Docker 容器化部署。
View on GitHub
Overview
基本能力
产品定位
pikimon-mcp-server 是一个区块链交互服务,主要用于与 Monad Testnet 区块链网络进行交互,提供 REST API 接口支持常见的区块链操作。
核心功能
- Express.js REST API
- Web3.js 集成用于区块链交互
- 环境变量配置
- 基本区块链操作(获取余额、发送交易等)
- 安全中间件(helmet, cors)
- Swagger API 文档
- Docker 支持
适用场景
- 区块链开发测试
- 区块链数据查询与分析
- 智能合约交互
- 区块链交易处理
工具列表
- Swagger API 文档:提供 API 的详细文档和交互式测试界面。
- Docker:支持容器化部署,便于在不同环境中运行。
- Web3.js:用于与区块链网络进行交互。
常见问题解答
- 如何配置环境变量?:复制
.env.example
为.env
并配置相关变量。 - 如何访问 API 文档?:运行服务后访问
/api-docs
路径。 - 如何查看日志?:Docker 部署时可通过
docker logs mcp-server
查看日志。
使用教程
使用依赖
- Node.js (v16 或更高版本) 或 Docker
- npm (v8 或更高版本)(如果不使用 Docker)
- 访问 Monad Testnet 节点的权限
安装教程
标准安装
- 克隆仓库:
bash git clone <repository-url> cd mcp-server
- 安装依赖:
bash npm install
- 创建环境文件:
bash cp .env.example .env
- 配置
.env
文件中的环境变量: - 设置
MONAD_RPC_URL
为 Monad Testnet 节点 URL - 设置
PORT
以使用不同的端口 - 如果需要签名交易,添加
PRIVATE_KEY
Docker 安装
- 克隆仓库:
bash git clone <repository-url> cd mcp-server
- 创建并配置环境文件:
bash cp .env.example .env # 编辑 .env 文件配置
- 构建 Docker 镜像:
bash docker build -t mcp-server .
- 运行容器:
bash docker run -d \ --name mcp-server \ -p 3000:3000 \ --env-file .env \ -v $(pwd)/logs:/app/logs \ mcp-server
调试方式
标准调试
启动开发服务器:
npm run dev
启动生产服务器:
npm start
Docker 调试
启动容器:
docker start mcp-server
停止容器:
docker stop mcp-server
查看日志:
docker logs mcp-server
API 文档
API 文档在服务运行时可通过 /api-docs
访问:
http://localhost:3000/api-docs
API 端点
- GET
/health
- 检查服务器健康状态 - GET
/blockchain/latest-block
- 获取当前区块号 - GET
/blockchain/analyze-block/:blockNumber
- 获取区块分析 - POST
/blockchain/store-data
- 在合约中存储数据 - GET
/blockchain/get-data
- 获取存储的数据 - POST
/actions/execute-chain
- 执行操作链 - GET
/actions/parallel-block-analysis
- 分析多个区块
环境变量
变量 | 描述 | 默认值 |
---|---|---|
PORT | 服务器端口 | 3000 |
NODE_ENV | 环境模式 | development |
MONAD_RPC_URL | Monad Testnet RPC URL | http://localhost:8545 |
CONTRACT_ADDRESS | 智能合约地址 | - |
CONTRACT_ABI | 智能合约 ABI | - |
LOG_LEVEL | 日志级别 | info |
Docker 卷
容器使用以下卷:
- /app/logs
:包含应用日志(combined.log 和 error.log)