solscan-mcp-server: A Solscan Pro API MCP Server
bobtista
README
solscan-mcp-server: Solscan Pro API MCP 服务器
概述
一个用于与 Solscan Pro API 交互的模型上下文协议服务器。此服务器提供工具,通过大型语言模型查询 Solana 区块链上的 Token 信息、账户活动和交易详情。
请注意,solscan-mcp-server 需要 Solscan Pro API 密钥才能运行。您可以从 Solscan APIs 获取一个。
工具
-
token_meta
- 获取 Token 元数据
- 输入:
token_address
(字符串): Solana 区块链上的 Token 地址
- 返回:Token 元数据,包括名称、符号、价格、市值等。
-
token_markets
- 获取 Token 市场数据和流动性池
- 输入:
token_address
(字符串): 要查询的 Token 地址sort_by
(字符串, 可选): 排序字段program
(字符串数组, 可选): 按程序地址过滤(最多 5 个)page
(数字, 可选): 页码(默认值:1)page_size
(数字, 可选): 每页项目数(10、20、30、40、60、100)
- 返回:与 WSOL 配对的 Token 的市场数据和流动性池
-
token_holders
- 获取 Token 持有者分布
- 输入:
token_address
(字符串): 要查询的 Token 地址page
(数字, 可选): 页码(默认值:1)page_size
(数字, 可选): 每页项目数(10、20、30、40)from_amount
(字符串, 可选): 最小 Token 持有量to_amount
(字符串, 可选): 最大 Token 持有量
- 返回:Token 持有者列表及其余额
-
token_price
- 获取历史 Token 价格数据
- 输入:
token_address
(字符串): 要查询的 Token 地址from_time
(数字, 可选): 开始日期,格式为 YYYYMMDD(例如,20240701)to_time
(数字, 可选): 结束日期,格式为 YYYYMMDD(例如,20240715)
- 返回:指定日期范围内的历史价格数据
-
token_accounts
- 获取钱包的 Token 持有量
- 输入:
wallet_address
(字符串): 要查询的钱包地址type
(字符串, 可选): Token 类型("token" 或 "nft",默认值:"token")page
(数字, 可选): 页码(默认值:1)page_size
(数字, 可选): 每页项目数(10、20、30、40)hide_zero
(布尔值, 可选): 隐藏零余额 Token(默认值:true)
- 返回:钱包的 Token 持有量列表
-
defi_activities
- 获取钱包的 DeFi 活动
- 输入:
wallet_address
(字符串): 要查询的钱包地址activity_type
(字符串数组, 可选): 要过滤的活动类型from_address
(字符串, 可选): 过滤来自某个地址的活动platform
(字符串数组, 可选): 按平台地址过滤(最多 5 个)source
(字符串数组, 可选): 按来源地址过滤(最多 5 个)token
(字符串, 可选): 按 Token 地址过滤from_time
(数字, 可选): 开始日期,格式为 YYYYMMDD(例如,20240701)to_time
(数字, 可选): 结束日期,格式为 YYYYMMDD(例如,20240715)page
(数字, 可选): 页码(默认值:1)page_size
(数字, 可选): 每页项目数(10、20、30、40、60、100)sort_by
(字符串, 可选): 排序字段(默认值:"block_time")sort_order
(字符串, 可选): 排序方式("asc" 或 "desc",默认值:"desc")
- 返回:DeFi 活动列表
-
balance_change
- 获取详细的余额变动活动
- 输入:
wallet_address
(字符串): 要查询的钱包地址token_account
(字符串, 可选): 要过滤的 Token 账户token
(字符串, 可选): 要过滤的 Token 地址from_time
(数字, 可选): 开始日期,格式为 YYYYMMDD(例如,20240701)to_time
(数字, 可选): 结束日期,格式为 YYYYMMDD(例如,20240715)page_size
(数字, 可选): 每页项目数(10、20、30、40、60、100)page
(数字, 可选): 页码(默认值:1)remove_spam
(布尔值, 可选): 移除垃圾活动(默认值:true)amount
(数字数组, 可选): 按金额范围过滤 [min, max]flow
(字符串, 可选): 按方向过滤("in" 或 "out")sort_by
(字符串, 可选): 排序字段(默认值:"block_time")sort_order
(字符串, 可选): 排序方式("asc" 或 "desc",默认值:"desc")
- 返回:余额变动活动列表
-
transaction_detail
- 获取详细的交易信息
- 输入:
tx
(字符串): 交易签名/地址
- 返回:详细的交易数据,包括解析后的指令
-
transaction_actions
- 获取交易操作和 Token 转移
- 输入:
tx
(字符串): 交易签名/地址
- 返回:交易中的操作和 Token 转移列表
安装
使用 uv (推荐)
当使用 uv
时,无需进行特定安装。我们将使用 uvx
直接运行 solscan-mcp-server。
使用 PIP
或者,您可以通过 pip 安装 solscan-mcp-server
:
pip install solscan-mcp-server
安装后,您可以将其作为脚本运行:
python -m solscan_mcp_server
配置
服务器需要在环境中设置 Solscan Pro API 密钥:
export SOLSCAN_API_KEY="your-api-key-here"
与 Claude Desktop 一起使用
将其添加到您的 claude_desktop_config.json
:
<details> <summary>使用 uvx</summary>
"mcpServers": {
"solscan": {
"command": "uvx",
"args": ["solscan-mcp-server"]
}
}
</details>
<details> <summary>使用 pip 安装</summary>
"mcpServers": {
"solscan": {
"command": "python",
"args": ["-m", "solscan_mcp_server"]
}
}
</details>
与 Zed 一起使用
添加到您的 Zed settings.json:
<details> <summary>使用 uvx</summary>
"context_servers": [
"solscan": {
"command": {
"path": "uvx",
"args": ["solscan-mcp-server"]
}
}
],
</details>
<details> <summary>使用 pip 安装</summary>
"context_servers": {
"solscan_mcp_server": {
"command": {
"path": "python",
"args": ["-m", "solscan_mcp_server"]
}
}
},
</details>
调试
您可以使用 MCP 检查器来调试服务器。对于 uvx 安装:
npx @modelcontextprotocol/inspector uvx solscan-mcp-server
或者,如果您已将软件包安装在特定目录中或正在开发它:
cd path/to/servers/src/solscan
npx @modelcontextprotocol/inspector uv run solscan_mcp_server
运行 tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
将显示来自服务器的日志,并可能帮助您调试任何问题。
开发
如果您正在进行本地开发,则可以使用 MCP 检查器或 Claude 桌面应用程序测试您的更改。
对于 Claude 桌面应用程序,将以下内容添加到您的 claude_desktop_config.json
:
UVX
{
"mcpServers": {
"solscan": {
"command": "uv",
"args": [
"--directory",
"/<path to mcp-servers>/mcp-servers/src/solscan",
"run",
"solscan_mcp_server"
]
}
}
Docker 支持
MCP 服务器可以在 Docker 容器中运行。这提供了一个隔离的环境,并使部署更容易。
构建 Docker 镜像
# 构建镜像
docker build -t solscan-mcp-server .
使用 Docker 运行
# 使用您的 Solscan Pro API 密钥运行容器
docker run -e SOLSCAN_API_KEY=your_api_key_here solscan-mcp-server
# 使用自定义详细级别运行
docker run -e SOLSCAN_API_KEY=your_api_key_here solscan-mcp-server --verbose
# 在分离模式下运行
docker run -d -e SOLSCAN_API_KEY=your_api_key_here solscan-mcp-server
环境变量
Docker 容器接受以下环境变量:
SOLSCAN_API_KEY
(必需): 您的 Solscan Pro API 密钥
Docker 最佳实践
- 永远不要在 Dockerfile 或 docker-compose 文件中提交您的 API 密钥
- 使用环境变量文件或安全密钥管理来管理 API 密钥
- 考虑在生产中使用 Docker 健康检查
- 容器以非 root 用户身份运行以提高安全性
许可证
此 MCP 服务器在 MIT 许可证下获得许可。这意味着您可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。有关更多详细信息,请参阅项目存储库中的 LICENSE 文件。
推荐服务器
Crypto Price & Market Analysis MCP Server
一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。
MCP PubMed Search
用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。
mixpanel
连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

Sequential Thinking MCP Server
这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

Nefino MCP Server
为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。
Vectorize
将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。
Mathematica Documentation MCP server
一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。
kb-mcp-server
一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。
Research MCP Server
这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

Cryo MCP Server
一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。