游戏数据协议服务

一个为AI助手提供实时访问《Old School RuneScape》游戏数据的服务器,包括维基页面、物品价格、玩家统计和任务信息。

  • by crichmond1989
  • Go
  • 本地部署
  • 更新于
在 GitHub 查看 crichmond1989/osrs-mcp

使用说明

osrs mcp

A. 模型上下文协议(MCP) 服务器,让AI助手实时访问老派RuneScape数据:维基页面、物品价格、玩家统计数据和任务信息。

工具

工具 说明
wiki_search 按关键字搜索OSRS Wiki
wiki_page 按确切标题获取页面的完整维基文本
wiki_search_full 使用丰富的元数据(页面ID、字数、片段)进行搜索
prices_latest 按商品ID显示的当前即时买入/卖出价格
prices_mapping 带有可选名称过滤器的项目元数据
prices_timeseries 5m/1h/24h窗口内的平均价格和交易量数据
player_stats 任何玩家的技能水平、经验值和核心排名
player_quests 通过WikiSync完成任务状态(需要RuneLite插件)
quest_info OSRS Wiki中的任务要求和奖励

看 docs/feature-catalog.md 查看完整目录,并链接到每个功能文档。

需求

  • 转到1.23+
  • 不需要API密钥-所有数据源都是公共的

构建

go build -o osrs-mcp ./cmd/osrs-mcp

或直接安装:

go install github.com/crichmond1989/osrs-mcp/cmd/osrs-mcp@latest

整合

服务器支持两种传输方式:

  • 标准 (默认)--用于本地桌面客户端
  • 超文本传输协议 (--addr :8080)--用于远程/移动客户端和托管部署

克劳德桌面(stdio)

在Claude Desktop配置文件中添加一个条目:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 窗户: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "osrs": {
      "command": "/absolute/path/to/osrs-mcp"
    }
  }
}

替换 /absolute/path/to/osrs-mcp 与构建二进制文件的实际路径(例如。 $GOPATH/bin/osrs-mcp 如果通过安装 go install).

编辑配置后重新启动Claude Desktop。OSRS工具将出现在工具面板中。

克劳德代码(CLI、stdio)

claude mcp add osrs /absolute/path/to/osrs-mcp

光标(标准输入)

打开 设置→ MCP 并添加新服务器:

{
  "osrs": {
    "command": "/absolute/path/to/osrs-mcp"
  }
}

Claude移动/远程客户端(HTTP)

移动应用程序和远程客户端通过HTTP连接。使用以下命令运行服务器 --addr:

osrs-mcp --addr :8080

MCP端点服务于 /mcp.将您的客户指向 https://your-host/mcp.

在Claude的移动应用程序中,添加一个远程连接器URL https://your-host/mcp.

您还可以设置 ADDR 环境变量而不是标志:

ADDR=:8080 osrs-mcp

码头工人

make docker-build
docker run -p 8080:8080 osrs-mcp

Docker镜像在端口8080上默认为HTTP模式。

Azure容器应用程序(建议用于托管)

# Build and push to a registry
docker tag osrs-mcp <registry>.azurecr.io/osrs-mcp:latest
docker push <registry>.azurecr.io/osrs-mcp:latest

# Deploy (scale-to-zero, ~$0/month for typical usage)
az containerapp up \
  --name osrs-mcp \
  --resource-group <rg> \
  --image <registry>.azurecr.io/osrs-mcp:latest \
  --target-port 8080 \
  --ingress external

部署的URL将是 https://osrs-mcp.<region>.azurecontainerapps.io.使用 /mcp 作为连接器路径。

其他MCP客户端

  • 标准:将二进制路径作为命令传递。不需要旗帜。
  • 超文本传输协议:与一起运行 --addr :PORT 并将客户指向 https://your-host/mcp.

发展

make lint    # run golangci-lint
make build   # compile
make test    # run tests with race detector and coverage
make check   # lint + build + test (run this before every commit)
make cover   # show per-function coverage (must be 100%)

添加新工具

  1. 将客户端方法添加到中的相关接口 internal/wiki/client.go 或 internal/prices/client.go.
  2. 添加真正的实现。
  3. 创建 internal/tools/<tool_name>.go 和 internal/tools/<tool_name>_test.go.
  4. 在中注册该工具 internal/tools/register.go.
  5. 添加一行 docs/feature-catalog.md 并在以下位置创建功能文档 docs/YYYY-MM/##-feature-title.md.
  6. 跑 make check 和 make cover --两者都必须保持清洁。

保持此README最新

在以下情况下更新此文件:

  • 添加或删除新工具--更新 工具 桌子
  • 最低Go版本更改--更新 需求
  • 模块路径或二进制名称更改--更新所有构建/安装命令
  • 一种新的集成方法经过测试和确认——将其添加到 整合
  • HTTP端点路径或传输更改--更新 超文本传输协议 和 码头工人 章节

这 特征目录 是工具细节的真实来源;此README是入口点摘要。

数据源

来源 URL
OSRS Wiki(MediaWiki API) https://oldschool.runescape.wiki/api.php
OSRS Wiki价格API https://prices.runescape.wiki/api/v1
OSRS Hiscores API https://secure.runescape.com/m=hiscore_oldschool
WikiSync API https://sync.runescape.wiki/runelite/player

许可证

麻省理工学院