Solana Model Context Protocol (MCP) Demo
一个简单的 MCP 服务器实现,为 AI 模型提供基本的 Solana RPC 方法和有用的开发提示。
README
Solana 模型上下文协议 (MCP) 演示
此仓库演示了一个用于 Solana 开发的模型上下文协议 (MCP) 服务器的简单实现。
什么是 MCP?
模型上下文协议 (MCP) 是 AI 模型与工具和资源交互的标准化接口。 此演示展示了一个简单的 MCP 服务器实现,它提供:
- Solana 的基本 RPC 方法(getBalance、getAccountInfo、getTransaction)
- 一些有用的 Solana 开发提示
前提条件
- Node.js (建议 v16 或更高版本)
- pnpm 包管理器 (v9.10.0 或兼容版本)
安装
克隆此仓库并安装依赖项:
git clone https://github.com/solana-foundation/solana-dev-mcp.git
cd solana-dev-mcp
pnpm install
要在 MCP 检查器中运行此服务器,请使用:
npx @modelcontextprotocol/inspector ts-node index.ts
入门
-
浏览代码:主要实现在
index.ts中,它设置了一个 MCP 服务器,其中包含简单的获取工具和一些提示。 -
修改服务器:您可以通过添加更多工具、资源和提示来扩展服务器。
-
获取扩展的想法:查看 扩展 Solana 开发的 MCP 的想法 部分,以获取有关添加新工具和资源的灵感。
使用示例
本节介绍如何在 Claude 中使用 Solana MCP 服务器。 按照相同的步骤在 Windsurf 和 Cursor 中使用 Solana MCP 服务器。
生成配置文件
要使用此 Solana MCP 服务器,您需要生成一个配置文件,Claude 可以使用该文件连接到服务器。 运行以下命令之一来生成配置文件:
- 如果您已全局安装
ts-node,则运行pnpm generate-config - 如果您没有全局安装
ts-node,则运行pnpm build && pnpm generate-config:js
这将打印一个 JSON 配置,其内容如下:
如果您安装了 ts-node:
{
"mcpServers": {
"solana-dev": {
"command": "ts-node",
"args": ["<full-path-to-repo>/index.ts"]
}
}
}
如果您没有全局安装 ts-node:
{
"mcpServers": {
"solana-dev": {
"command": "node",
"args": ["<full-path-to-repo>/dist/index.js"]
}
}
}
项目结构
index.ts- 主要服务器实现package.json- 项目依赖项和元数据tsconfig.json- TypeScript 配置
扩展 Solana 开发的 MCP 的想法
此 MCP 服务器实现提供了一个基础,您可以扩展或派生它以满足您自己的 Solana 开发需求。 以下是一些帮助您入门的想法:
扩展的想法
-
优先级费用估算器:添加一个工具,用于根据最近的网络活动估算 Solana 交易的最佳优先级费用。 这可以帮助用户优化交易成本,同时确保及时处理。
-
Solana Verify 调试器:创建一个工具,通过提供有关验证过程的更详细信息来帮助调试
solana-verify的问题。 -
Solana Security.txt 检查器:构建一个工具,用于提取和显示给定 Solana 程序的 security.txt 文件信息,从而更容易地联系程序的维护者以解决安全问题。
-
用于程序部署的 Squads 助手:创建一个工具,用于自动执行部署和升级 Solana 程序的过程,从而更容易地跨多个环境管理程序状态。
-
Anchor-Error 解释器:开发一个工具,该工具获取错误代码并从 Anchor 错误代码数据库中查找相应的可读错误消息。
-
增强的提示:扩展服务器的提示功能,以便为 Solana 开发任务提供更多上下文相关的建议。 例如,添加用于常见交易模式、帐户创建或令牌操作的提示。
-
交易构建器:创建有助于构建具有多个指令的复杂交易的工具,从而更容易地与各种 Solana 程序交互。
-
自定义 RPC 端点:允许配置自定义 RPC 端点,包括支持私有 RPC 提供程序或本地验证器。
-
程序部署助手:创建简化部署和升级 Solana 程序过程的工具。
-
帐户和交易浏览器:添加一个工具,该工具获取帐户或交易 ID,并以人类可读的格式显示内容,类似于浏览器视图。 这对于检查交易数据或帐户状态而无需手动解码数据非常有用。
-
Solana、Anchor 和协议文档:添加将 Solana、Anchor 和协议文档直接加载到 MCP 编辑器中的资源,从而可以轻松访问相关信息而无需离开编辑器。 这可以通过从各自的存储库中获取文档并将其作为 MCP 服务器的资源来提供来实现。
如何贡献
如果您构建了一个可能对其他人有用的扩展,请考虑向此存储库提交拉取请求。 请务必遵循以下准则:
- 保持代码的良好文档记录
- 为新功能包含测试
- 遵循现有的代码风格
- 使用有关您的添加的信息更新 README
安全
这是一个简单的示例,不应在生产中使用。 MCP 是一种新标准,缺乏适当的安全措施。
安装和尝试来自未知开发人员的 MCP 服务器时,请格外小心。
尝试 MCP 服务器时,请使用沙盒环境,其中没有关键信息,以防止潜在的损坏。
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
mcp-server-qdrant
这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器