关于 Phalcon MCP Server
Phalcon MCP Server 将 BlockSec 接入 MCP 客户端,提供区块链交易追踪、分析及相关数据。适用于需要链上交易详情和链标识查询的应用。
主要功能
- 01追踪交易调用与 Gas 用量
- 02分析交易与资金流
- 03查询地址标签和余额变化
- 04检查合约状态变化
- 05汇总交易分析结果
- 06按名称查询链 ID
适用场景
- 01查看交易调用轨迹和 Gas 用量
- 02检查交易资金流与代币详情
- 03识别地址标签和余额变化
- 04根据名称查找链 ID
MCP 相关
该服务向 MCP 客户端提供基于 BlockSec 的区块链分析工具,包括交易追踪、交易分析和链 ID 查询。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
mcp.json · 通用配置
启动命令
docker run -i --rm ghcr.io/mark3labs/phalcon-mcp:latest本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
安装包
oci
ghcr.io/mark3labs/phalcon-mcp:lateststdio工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Phalcon MCP 服务
此 MCP 服务与 BlockSec 平台集成,通过模型上下文协议(MCP)提供区块链交易分析工具。
模型上下文协议(MCP)是一种用于 AI 模型集成的协议,可让 AI 模型访问外部工具和数据源。
组件
工具
交易分析
-
Trace
- 跟踪区块链上交易的不同调用及其 Gas 使用指标
- 参数:
chainId(必填)、transactionHash(必填)
-
Profile
- 分析区块链上的交易,提供交易详情、资金流向和代币信息
- 参数:
chainId(必填)、transactionHash(必填)
-
AddressLabel
- 获取合约地址的人类可读标签,例如代币、协议和其他链上实体的标签
- 参数:
chainId(必填)、transactionHash(必填)
-
BalanceChange
- 获取交易的详细余额变化信息
- 参数:
chainId(必填)、transactionHash(必填)
-
StateChange
- 获取交易的详细状态变化信息,例如合约中的存储变量变化
- 参数:
chainId(必填)、transactionHash(必填)
-
TransactionOverview
- 汇总所有可用分析工具的数据,全面概览一笔交易
- 参数:
chainId(必填)、transactionHash(必填)
链信息
- GetChainIdByName
- 根据名称、链或 chainSlug 获取区块链的链 ID
- 参数:
name(必填)
快速开始
安装
使用 Go Install
go install github.com/mark3labs/phalcon-mcp@latest
使用方法
启动 MCP 服务:
phalcon-mcp serve
查看版本:
phalcon-mcp version
作为包使用
你可以在 Go 项目中导入此服务:
Stdio 模式
import "github.com/mark3labs/phalcon-mcp/server"
func main() {
// Create a new server with version
s := server.NewServer("1.0.0")
// Start the server in stdio mode
if err := s.ServeStdio(); err != nil {
log.Fatalf("Server error: %v", err)
}
}
进程内模式
使用 mcp-go 客户端库进行进程内调用:
import (
"context"
"log"
"github.com/mark3labs/mcp-go/client"
"github.com/mark3labs/mcp-go/client/transport"
"github.com/mark3labs/phalcon-mcp/server"
)
func main() {
// Create the Phalcon MCP server
phalconServer := server.NewServer("1.0.0")
// Create an in-process transport using the server's MCPServer
inProcessTransport := transport.NewInProcessTransport(phalconServer.GetMCPServer())
// Create an MCP client using the in-process transport
mcpClient := client.NewMCPClient(inProcessTransport)
// Start the transport
ctx := context.Background()
if err := mcpClient.Connect(ctx); err != nil {
log.Fatalf("Failed to connect: %v", err)
}
defer mcpClient.Close()
// Initialize the client
if err := mcpClient.Initialize(ctx); err != nil {
log.Fatalf("Failed to initialize: %v", err)
}
// List available tools
tools, err := mcpClient.ListTools(ctx)
if err != nil {
log.Fatalf("Failed to list tools: %v", err)
}
// Use the tools...
result, err := mcpClient.CallTool(ctx, "get-chain-id-by-name", map[string]any{
"name": "ethereum",
})
if err != nil {
log.Fatalf("Failed to call tool: %v", err)
}
}
与模型上下文协议搭配使用
要将此服务集成到支持 MCP 的应用中:
{
"mcpServers": {
"phalcon": {
"command": "phalcon-mcp",
"args": ["serve"]
}
}
}
Docker
使用 Docker 运行
你可以使用 Docker 运行 Phalcon MCP 服务:
docker run -i --rm ghcr.io/mark3labs/phalcon-mcp:latest serve
使用 MCP 配置 Docker
要将 Docker 镜像集成到支持 MCP 的应用中:
{
"mcpServers": {
"phalcon": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/mark3labs/phalcon-mcp:latest",
"serve"
]
}
}
}
许可证
MIT
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。