关于 Cricsheet
Cricsheet MCP 服务将板球逐球数据整理为比赛记分卡、球员职业统计和队伍交锋记录,面向查询板球数据的 Agent。覆盖 Test、ODI、T20I 和 IPL,但不提供单次投球明细。
主要功能
- 01查询比赛结果与记分卡
- 02汇总球员击球和投球数据
- 03查询队伍交锋记录
- 04按条件搜索比赛
- 05筛选追分局结果
适用场景
- 01查看一场比赛的击球与投球表现
- 02汇总球员职业生涯数据
- 03比较两支队伍的交锋成绩
- 04查找特定条件下的追分比赛
MCP 相关
作为 MCP 服务,它向客户端提供比赛、球员、队伍及追分查询工具。可通过 Pipeworx 网关连接,也可作为本地 stdio MCP 服务运行。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://gateway.pipeworx.io/cricsheet/mcpclaude mcp add --transport http pipeworx-io-cricsheet https://gateway.pipeworx.io/cricsheet/mcp{"mcpServers":{"pipeworx-io-cricsheet":{"type":"http","url":"https://gateway.pipeworx.io/cricsheet/mcp"}}}在 Cursor 中打开{"servers":{"pipeworx-io-cricsheet":{"type":"http","url":"https://gateway.pipeworx.io/cricsheet/mcp"}}}在 VS Code 中打开{"mcpServers":{"pipeworx-io-cricsheet":{"type":"http","url":"https://gateway.pipeworx.io/cricsheet/mcp"}}}{"mcpServers":{"pipeworx-io-cricsheet":{"serverUrl":"https://gateway.pipeworx.io/cricsheet/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
45| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| q | string | 否 | question 的别名。 |
| ask | string | 否 | question 的别名。 |
| text | string | 否 | question 的别名。 |
| input | string | 否 | question 的别名。 |
| packs | array | 否 | 可选。将路由限制为这些包的 slug(例如 ["sec-form-d","sec-13f"]),路由器随后只会从这些包中的工具进行选择。省略则使用默认的完整目录路由。Slug 可从 list_packs / search_packs / https://pipeworx.io/directory 获取;未列出或未知的 slug 会被忽略,并在 _meta.pack_scope.ignored 中列出。如果没有任何 slug 能匹配问题,则会在整个目录中路由,并设置 _meta.pack_scope.full_catalog:true(绝不会返回空答案)。 |
| query | string | 否 | question 的别名。 |
| prompt | string | 否 | question 的别名。 |
| message | string | 否 | question 的别名。 |
| question | string | 是 | 用自然语言表达的问题或请求。支持 query、q、prompt、text、input、ask、message 作为别名。 |
详细介绍
@pipeworx/cricsheet
将逐球板球数据精简为人们真正会问的问题:一场比赛的结果和记分卡、一名球员职业生涯的击球/投球统计汇总,以及两支球队之间的交锋记录。涵盖 Test 比赛、One Day Internationals、T20 Internationals 和印度超级联赛。Fleet #2975。
属于 Pipeworx — 一个将 AI Agent 连接到 1855+ 个实时数据源的 MCP 网关。这是独立的非官方集成,与上游提供方无关,未获其认可,也并非由其发布。
工具
cricsheet_match(match_id)— 返回一场比赛的完整结果,以及每局的击球记分卡(每位击球手的得分/球数/4 分/6 分/出局方式)和投球记分卡(每位投球手的局数/失分/得分)。先使用cricsheet_find_matches获取match_id。cricsheet_player_stats(player, format?)— 返回一名板球运动员职业生涯的击球和投球统计汇总(比赛数、得分、平均数、击球率、100 分/50 分次数;得分、投球平均数、经济率)。player会与此工具包存储的简称进行不区分大小写的子字符串匹配(例如,"Kohli"可匹配"V Kohli");如果查询结果不明确,则会返回候选列表,而非猜测。可选地限定一种format。cricsheet_head_to_head(team_a, team_b, format?, limit?, offset?)— 返回比赛总数、各队获胜次数、平局/无结果场次,以及最近的比赛及其结果。球队名称必须与 Cricsheet 使用的名称完全一致(例如"India"、"Mumbai Indians")。cricsheet_find_matches(team?, format?, season?, venue?, player?, limit?, offset?)— 搜索比赛索引以查找match_id。不指定筛选条件时,会返回所有赛制中最近举行的比赛。cricsheet_chase_search(second_innings_result?, format?, min/max_wickets_remaining?, min/max_balls_remaining?, team?, gender?, season?, event?, date_from?, date_to?, limit?, offset?)— 对 ODI、T20I 和 IPL 比赛的追分局(第二局)进行复合搜索:第二局击球方是否获胜、结束时还剩多少个未失 wickets 和未用球数,并可按日期、赛季和锦标赛筛选。balls_remaining按照完整的计划投球局数计算(T20 为 120 球,ODI 为 300 球);因雨天规则决定结果的比赛中,该值为 null。不包括 Test 比赛。
format 接受 "Test"、"ODI"、"T20I"(国际 T20)或 "IPL"(不区分大小写);省略时会搜索全部四种赛制。
**此工具包不会做什么:**它不会返回单次投球记录(逐球数据)。每个比赛文件只会在加载时逐球解析一次,并汇总为比赛/局/击球记分卡/投球记分卡数据行——存储约 11,000 场比赛的每一球会使行数增加约 150–200 倍,而记分卡已经能回答“谁得了多少分、谁拿下了哪些 wickets”这类问题。
身份验证
无需密钥。工具只通过保存数据的 Pipeworx 网关提供回答;独立运行 npm install 后没有可读取的数据,而且每个工具都会清楚地报错“此运行时未绑定”,而不是返回空列表。
数据来源
- Cricsheet — Test 板球、One Day Internationals、T20 Internationals 和印度超级联赛的逐球比赛数据。许可证:ODC Attribution License (ODC-BY) — 可免费分享、改编和使用(包括商业用途),但须注明 Cricsheet。Cricsheet 只发布按比赛划分的批量文件(没有实时 API),因此此工具包会将数据副本构建到 D1 数据库中(
scripts/cricsheet/load-data.mjs),而不是在每次请求时代理获取;这是遵循 CLAUDE.md 中针对仅提供批量数据来源的“构建副本”规则。
已知差距——扩展此数据包前请先阅读
目前仅加载了 Cricsheet 约 60 个赛事中的 4 个。 Cricsheet 还将一级赛、List A 赛和约 50 个国内 T20 联赛(Big Bash、T20 Blast、巴基斯坦超级联赛、加勒比超级联赛、The Hundred 等)作为单独的批量文件发布。此数据包加载了跨赛制需求最明确的 4 个赛事(国际 Test/ODI/T20I,以及需求信号中明确提到的联赛 IPL)。要添加其他联赛,只需在加载器的 BULK_FILES 中再添加一项,并使用相同的赛制无关解析器。
只要 Cricsheet 自己的批量文件中包含女子比赛,就会一并收录,并根据 Cricsheet 为每场比赛提供的 gender 字段进行区分——不会过滤掉,也不会单独提供工具。
球员身份采用 Cricsheet 使用的原始姓名字符串(例如“V Kohli”、“SR Watson”)——使用的是简称,不是全名;除 cricsheet_player_stats 提供的子串匹配外,此数据包不会维护自己的姓名到人物映射。两个不同的人如果使用相同的简称(这种情况很少见,但在约 8,400 个不同姓名中并非不可能),就会被合并为同一个字符串;除注册表 ID(目前未加载)外,Cricsheet 自己的文件中没有其他信息可以解决这个问题。
超级局会作为额外的局条目存储,与 Cricsheet 自己的 innings 数组表示方式完全一致(打平的 T20 比赛可能包含 3 或 4 个局条目)——cricsheet_match 会返回 Cricsheet 文件中的所有局,包括超级局。
刷新或扩展数据
重新运行 node scripts/cricsheet/load-data.mjs(需要先登录 Pipeworx Cloudflare 账户的 wrangler;当可见的账户不止一个时,还需设置 CLOUDFLARE_ACCOUNT_ID)——该命令会重新获取所有赛制的数据并替换所有表(DROP + reload),因为 Cricsheet 会修正历史文件,而不是对其进行版本管理。--only <Test|ODI|T20I|IPL> 可重新加载单个赛制;--dry-run 会解析数据并打印数量,不会改动 D1,适用于修改解析器后的检查。Cricsheet 会持续添加新比赛(国际板球和 IPL 比赛通常会在比赛结束后一天内添加);请定期重新运行加载器以获取这些比赛——每个工具响应中的 data_as_of 会标明所读取的数据加载批次。
快速入门
添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):
{
"mcpServers": {
"cricsheet": {
"url": "https://gateway.pipeworx.io/cricsheet/mcp"
}
}
}
此端点实际提供的内容
https://gateway.pipeworx.io/cricsheet/mcp 上的 tools/list 会返回上表中的工具,以及 Pipeworx 共享元工具——ask_pipeworx、discover_tools、search_within、remember/recall 及网关范围内的其他工具。因此,你看到的工具数量会多于此表所列:目前,单个数据包端点除了该数据包自身的工具外,还会列出约 30 个共享工具。连接的 initialize 响应会说明其准确范围,也是了解特定日期实际情况的权威依据。
这是有意为之,并非意外地进行了多路复用。元工具可以让限定范围的连接回答此数据包未覆盖的问题——通过 ask_pipeworx 路由至整个目录——因此你无需再添加第二个 MCP 服务。目前无法挂载不包含这些工具的数据包端点;如果额外的模式比路由带来的价值更占用上下文,请直接连接一次完整网关,而不是连接多个数据包端点。
或者,连接完整的 Pipeworx 网关,直接列出所有数据包的工具,而不只是此数据包的工具:
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
这两个 URL 都会连接到同一个网关和相同的 1855+ 个数据源。唯一的区别是直接列出哪个数据包的工具;无论连接哪个端点,ask_pipeworx 都可以访问所有工具。
没有 MCP 客户端?通过 HTTP 调用
curl -X POST https://gateway.pipeworx.io/v1/tools/cricsheet_match \
-H 'Content-Type: application/json' \
-d '{"match_id":1082591}'
首次调用无需账户。查看任意工具:GET https://gateway.pipeworx.io/v1/tools/cricsheet_match。查找工具:使用 {"query":"..."} 向 POST https://gateway.pipeworx.io/v1/tools/search_packs 发送请求。
独立运行(无需网关账户)
此软件包也可作为本地 stdio MCP 服务运行,无需 Pipeworx 账户,也无需经过网关往返:
{
"mcpServers": {
"cricsheet": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-cricsheet"]
}
}
}
也可以直接运行,确认它能正常启动:
npx -y @pipeworx/mcp-cricsheet
它通过 stdin/stdout 使用 MCP 通信,并针对仅限此软件包的工具响应 initialize/tools/list/tools/call——不包含上方网关连接所添加的任何共享元工具。相同的源代码,相同的工具,无需 ask_pipeworx 路由。
使用 ask_pipeworx
你也可以用通俗的英语提问,而不是直接调用工具——这既适用于上方的软件包端点,也适用于完整网关:
ask_pipeworx({ question: "your question about Cricsheet data" })
网关会选择合适的工具并自动填写参数。
更多信息
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。