README
🚀 RuneScape Wiki MCP服务器
RuneScape Wiki MCP服务器是一个模型上下文协议(MCP)服务器,它提供对RuneScape Wiki API的访问,包括RuneScape 3(RS3)的实时大交易所价格、物品数据和玩家统计信息。
🚀 快速开始
本服务器提供了对RuneScape Wiki API的访问,可获取RuneScape 3的实时大交易所价格、物品数据和玩家统计信息。以下是使用本服务器的快速指南。
✨ 主要特性
- 实时大交易所价格:获取所有物品的当前价格、5分钟平均价格和1小时平均价格。
- 物品数据库:访问包含元数据(名称、ID、检查文本等)的完整物品映射。
- 价格时间序列:提供可配置时间间隔的历史价格数据。
- 玩家统计信息:从RuneScape 3排行榜查询玩家统计信息。
- 多种游戏模式:支持普通、铁人模式和硬核铁人模式账户。
- MCP资源:通过MCP资源URI直接访问价格和物品数据。
📦 安装指南
前提条件
- Node.js 18.0.0或更高版本
- npm或yarn
安装依赖
npm install
构建项目
npm run build
开发模式
npm run dev
这将启动TypeScript编译器的监视模式,并在文件更改时自动重启服务器。
💻 使用示例
与Claude Desktop配合使用
将以下配置添加到你的Claude Desktop配置文件中:
{
"mcpServers": {
"runescape-wiki": {
"command": "node",
"args": ["/path/to/runescape-wiki-mcp/dist/index.js"]
}
}
}
与MCP Inspector配合使用
使用MCP Inspector测试服务器:
# 使用npm脚本(推荐)
npm run inspector
# 或者手动使用npx
npx @modelcontextprotocol/inspector node dist/index.js
快速测试
验证服务器是否正常工作:
npm test
📚 详细文档
可用工具
get_latest_prices
获取所有物品或特定物品的最新大交易所价格。 参数:
itemId(可选):要获取价格的特定物品的ID。 示例:
{
"itemId": 4151
}
get_item_mapping
获取所有物品的完整映射,包括其ID、名称和元数据。 参数:无 返回:物品数组,包含以下信息:
id:物品IDname:物品名称examine:检查文本members:是否为会员专属物品lowalch:低炼金术价值highalch:高炼金术价值limit:大交易所购买限制value:物品价值icon:图标文件名
get_5m_prices
获取所有物品的5分钟平均价格。 参数:
timestamp(可选):要获取特定时间价格的Unix时间戳。
get_1h_prices
获取所有物品的1小时平均价格。 参数:
timestamp(可选):要获取特定时间价格的Unix时间戳。
get_timeseries
获取特定物品的价格时间序列数据。 参数:
itemId(必需):要获取时间序列的物品ID。timestep(必需):时间间隔 - 可选值:5m、1h、6h、24h。 示例:
{
"itemId": 4151,
"timestep": "1h"
}
get_player_stats
从RuneScape 3排行榜查询玩家统计信息。 参数:
username(必需):要查询的玩家用户名。gameMode(可选):游戏模式 - 可选值:normal、ironman、hardcore。 示例:
{
"username": "Zezima",
"gameMode": "normal"
}
返回:解析后的统计信息,包括:
- 总体排名和总等级
- 各个技能的等级、经验和排名
- 所有30个技能(包括召唤、地下城、占卜、发明、考古和死灵术)的格式化数据
物品类别映射
| 属性 | 详情 | |------|------| | 弹药 | 1 | | 箭 | 2 | | 螺栓 | 3 | | 建筑材料 | 4 | | 烹饪原料 | 5 | | 服装 | 6 | | 制作材料 | 7 | | 宠物 | 8 | | 制箭材料 | 9 | | 食物和饮料 | 10 | | 草药学材料 | 11 | | 狩猎装备 | 12 | | 珠宝 | 13 | | 法师盔甲 | 14 | | 法师武器 | 15 | | 近战盔甲 - 低级 | 16 | | 近战盔甲 - 中级 | 17 | | 近战盔甲 - 高级 | 18 | | 近战武器 - 低级 | 19 | | 近战武器 - 中级 | 20 | | 近战武器 - 高级 | 21 | | 采矿和锻造 | 22 | | 药水 | 23 | | 祈祷盔甲 | 24 | | 祈祷材料 | 25 | | 远程盔甲 | 26 | | 远程武器 | 27 | | 符文制作 | 28 | | 符文、法术、传送 | 29 | | 种子 | 30 | | 召唤卷轴 | 31 | | 工具和容器 | 32 | | 伐木产品 | 33 | | 口袋物品 | 34 | | 石灵 | 35 | | 生火产品 | 36 | | 考古材料 | 37 - 43 |
在使用需要类别编号的工具(如search_items)时,请参考此表。
可用资源
runescape://prices/latest:直接访问所有物品的最新大交易所价格。runescape://items/mapping:直接访问完整的物品映射数据。
API端点
本服务器使用以下RuneScape Wiki API:
- RS3价格API:
https://prices.runescape.wiki/api/v1/rs- 最新价格、5分钟平均价格、1小时平均价格、时间序列数据
- RS3排行榜API:
https://secure.runescape.com/m=hiscore- 不同游戏模式的玩家统计信息
速率限制
RuneScape Wiki API有以下使用指南:
- 使用描述性的User-Agent(本服务器会自动处理)
- 避免发出可能影响API稳定性的过多请求
- 服务器实现了适当的错误处理,并遵守API限制
错误处理
服务器包含全面的错误处理:
- 捕获API请求失败并作为错误响应返回
- 在进行API调用之前验证无效参数
- 优雅地处理网络超时和连接问题
- 正确报告未找到玩家的错误
🔧 技术细节
项目结构
src/
├── index.ts # 主服务器实现
├── types/ # TypeScript类型定义
└── utils/ # 实用函数
dist/ # 编译后的JavaScript输出
脚本
npm run build:将TypeScript编译为JavaScriptnpm run watch:监视文件更改并重新编译npm start:在生产模式下启动服务器npm run dev:在开发模式下启动,具有自动重启功能npm test:运行简单测试以验证服务器是否正常工作npm run inspector:启动MCP Inspector以测试服务器
添加新工具
- 在
tools数组中定义工具,并使用适当的架构。 - 在
CallToolRequestSchema处理程序中添加案例处理程序。 - 实现具有适当错误处理的API逻辑。
- 更新此README文档以提供文档说明。
📄 许可证
本项目采用MIT许可证,详情请参阅LICENSE文件。
致谢
- RuneScape Wiki 提供API
- Model Context Protocol 提供MCP规范
- Jagex 开发RuneScape 3
支持
如有问题、疑问或功能请求,请在GitHub仓库中创建一个issue。
⚠️ 重要提示
这是一个非官方工具,与Jagex或RuneScape Wiki没有关联。请遵守API使用指南和服务条款。
微信扫一扫