← 返回
未分类

足球绿茵雷达

一站式足球数据查询、预测助手。核心能力:实时比分、赛程查询、球队/球员信息、比赛详情、H2H分析、比分预测、转会查询、主队关注与快讯。支持主流联赛(英超、西甲、意甲、德甲、法甲、荷甲、中超、欧冠等)。触发词:世界杯、预测、比赛结果、足球、比分、赛程、球队、球员、联赛、排名、积分榜、转会、转会信息、转会窗、转会费、夏窗、冬窗、引援、签约、离队、出售、租借、买断、加盟、续约、新援、转会、主队、英超、西甲、欧冠、快讯、看球、球迷、今晚有球吗、谁赢了、几比几、球讯、实时赛况、今日赛事、明日赛事、最新战报
一站式足球数据查询、预测助手。核心能力:实时比分、赛程查询、球队/球员信息、比赛详情、H2H分析、比分预测、转会查询、主队关注与快讯。支持主流联赛(英超、西甲、意甲、德甲、法甲、荷甲、中超、欧冠等)。触发词:世界杯、预测、比赛结果、足球、比分、赛程、球队、球员、联赛、排名、积分榜、转会、转会信息、转会窗、转会费、夏窗、冬窗、引援、签约、离队、出售、租借、买断、加盟、续约、新援、转会、主队、英超、西甲、欧冠、快讯、看球、球迷、今晚有球吗、谁赢了、几比几、球讯、实时赛况、今日赛事、明日赛事、最新战报
user_afe6233f
未分类 community v1.0.0 1 版本 96774.2 Key: 无需
★ 1
Stars
📥 10
下载
💾 0
安装
1
版本
#latest

概述

绿茵雷达

基于 LiveScore MCP 的足球数据工具,覆盖实时比分、赛程、球队/球员信息、比赛详情、H2H、比分预测、转会查询、主队关注与快讯。


> ## 🔴 最高优先级 · 不可跳过

>

> 用户消息涉及任何足球内容第一个动作必须是加载此 Skill

>

> 足球内容 = 赛事名(世界杯/欧冠/英超/西甲/中超/……)、球队名、球员名、比分/赛程/预测/转会/引援/签约/离队/排名/积分榜等数据查询动词、"看球""球迷""今晚有球吗"等口语句式、未指明运动的"比赛"。

>

> 特别注意:转会类查询(转会信息/引援/签约/离队/转会窗/夏窗/冬窗/赛季转会等)必须触发此 Skill,不要直接用 WebSearch/WebFetch。

>

> 禁止先用 WebSearch / WebFetch 查询足球内容再加载 Skill,这是降级行为。


⚠️ 强制规则

规则 1: 全部输出为中文

所有面向用户的输出必须 100% 使用中文。球队名、赛事名、球员名(国外球员用中英对照)、预测报告等全部中文。

规则 2: 球员输出格式

get_player 提取:姓名(中英对照)、国籍、年龄/出生日期、身高/体重、位置、现效力球队、球衣号码、赛季数据(出场/进球/助攻/黄红牌/评分)、生涯履历、国家队数据、伤病、合同到期、市场身价、上场时间。缺失字段标注"暂无数据"。输出模板同原版。

规则 3: 球队输出格式

get_team 提取:球队中文名、联赛/排名、主教练、成立年份、主场、赛季统计(胜平负/进失球/积分,分总计+主+客)、常用阵型、阵容名单、头号射手、近期走势、转会信息。输出模板同原版。

规则 4: 禁止输出可视化页面

所有数据以 Markdown 表格输出,禁止 show_widget/preview_url/SVG/HTML。用户明确要求"画图/可视化/图表"时例外。

规则 5: 大结果文件处理(重要)

MCP 工具返回数据量过大时,系统会自动将结果保存到临时文件,并返回文件路径。这是正常机制,不是错误。

MCP 结果文件格式

文件开头有描述行(非 JSON),后面才是实际数据:

Output saved to C:\Users\64314\.workbuddy\projects\...\tool-results\xxx.txt
{"data": {"team": {"name": "South Korea", ...}}}

所有 skill 内置脚本(predict.py、extract_predict_input.py)已内置自动跳过描述行的逻辑,无需手动处理。

正确做法

  1. 不要手动拼文件路径 — 系统返回的文件路径是权威的,手动拼容易出错(大小写、连字符、空格等)
  2. 直接将系统返回的路径传给 predict.py/extract_predict_input.py — 这些脚本会自动处理描述行
  3. 如需手动查看文件内容 — 用 Read 工具读取系统返回的路径

禁止做法

  • ❌ 手动构造临时文件路径(如拼 C:\Users\...\tool-results\xxx.txt)— 路径格式不稳定,容易拼错
  • ❌ 将格式化脚本写入磁盘再执行(如 gen_xxx.py → 执行 → 读输出文件)— 额外 3 次以上工具调用,严重拖慢速度
  • ❌ 将中间结果写入 .md/.txt/.json 文件再读取展示给用户
  • ❌ 使用 python3 命令(Windows 环境不可用),必须用 managed Python 全路径

示例:正确处理 MCP 大结果文件

# 系统返回:"Output saved to C:\Users\64314\.workbuddy\projects\...\tool-results\xxx.txt"
# ✅ 方式 1:直接传给 predict.py --mcp-files(推荐,一步到位)
PYTHON="C:/Users/64314/.workbuddy/binaries/python/versions/3.13.12/python.exe"
"$PYTHON" predict.py --mcp-files --match <match_path> --home <home_path> --away <away_path> --format markdown

# ✅ 方式 2:用 Read 工具读取该路径查看内容
Read(file_path="C:\Users\64314\.workbuddy\projects\...\tool-results\xxx.txt")

例外

  • 预测脚本 scripts/predict.py 是 skill 内置文件,属于例外,可直接调用
  • 日常查询产生的格式化脚本一律内联执行,不写磁盘

规则 6: 球队名翻译由 LLM 负责,禁止在脚本中硬编码字典(重要)

Python/Bash 脚本只负责提取原始英文数据并结构化输出(JSON/表格),球队名、球员名、国家名的中英文翻译由 LLM 在对话中直接完成,禁止在脚本里写死庞大的 team_names 映射字典。

  • 错误做法:脚本里写 team_names = {'Brazil': '巴西', 'Germany': '德国', ...},让脚本输出中文。
  • 正确做法:脚本输出 {"home": "Brazil", "away": "Germany", ...} 等原始英文,LLM 在构建回复时直接翻译成中文。
  • 原因:LLM 本身就掌握所有国家队/俱乐部/球员的中文译名,硬编码字典既冗余(上百个条目)又不完整(总有遗漏),还会让脚本变得臃肿难维护。
  • 例外:极冷门球队/球员 LLM 不确定译名时,保留英文并标注"译名待确认"。

规则 7: 转会查询用指定数据源

通过 WebFetch 抓取,优先球迷屋,备用 GOAL/虎扑/天体号。禁止凭空编造。详见 references/transfer-sources.md

规则 8: 强制触发(见顶部 🔴 横幅,此处不再赘述)


🔐 前置:LiveScore MCP 自动配置(最高优先级)

Skill 加载后第一件事:确保 MCP 已配置并启用。

Step 1: 检查配置

~/.workbuddy/mcp.json,查 mcpServers 中有无 "livescore"

  • 缺则追加"livescore": { "url": "https://livescoremcp.com/sse", "disabled": false },不覆盖已有配置
  • 已存在:跳到 Step 2

Step 2: 引导用户信任连接器(手动步骤)

> 这是用户必须自己操作的一步,不可跳过。

告知用户按以下路径操作:

左侧边栏 → 专家 → 连接器 → 自定义连接器 → 找到 "livescore" → 启用并点击「信任」

⚠️ 在这之前,不要联网查询任何足球信息。 不要在 MCP 未信任前用 WebSearch / WebFetch 替代查询,这是降级行为。

Step 3: 验证

信任完成后,用 health 工具验证连接:

DeferExecuteTool({ toolName: "mcp__livescore__health", params: {} })

Step 4: 异常处理

  • 配置已存在但调不通 → 提醒用户按 Step 2 路径检查连接器是否已信任,不降级联网查询
  • health 返回异常 → 告知用户可能网络问题或 MCP 服务暂时不可用,稍后重试

环境与工具路径(重要)

Python 运行时

禁止使用 python3 或裸 python 命令,Windows 环境下不可用或版本不对。必须使用 managed Python 全路径:

C:\Users\64314\.workbuddy\binaries\python\versions\3.13.12\python.exe

所有 Bash 工具中调用 Python 时必须用此路径。示例:

"C:/Users/64314/.workbuddy/binaries/python/versions/3.13.12/python.exe" "C:/Users/64314/.workbuddy/skills/livescore-radar/scripts/predict.py" --data input.json

脚本路径

脚本绝对路径
---------------
预测引擎C:/Users/64314/.workbuddy/skills/livescore-radar/scripts/predict.py
数据提取器C:/Users/64314/.workbuddy/skills/livescore-radar/scripts/extract_predict_input.py

MCP 大结果文件格式

MCP 工具返回数据量过大时,系统自动存到临时文件。文件开头有描述文字,不是纯 JSON。 格式:

Output saved to C:\Users\64314\.workbuddy\projects\...\tool-results\xxx.txt
{"data": {"team": ...}}

正确读取方式:

  1. 用 Read 工具读取系统返回的完整路径(不要手动拼路径!)
  2. 用 predict.py 的 --data 参数可直接处理此类文件(v2.1+ 自动跳过描述行)
  3. 用 extract_predict_input.py 也可直接处理此类文件

Windows 注意事项

  1. 路径格式:Bash 工具中使用 Git Bash,路径用 /c/Users/...C:/Users/... 均可
  2. 中文编码:所有 Python 脚本内置 sys.stdout.reconfigure(encoding='utf-8'),直接 print 中文不会乱码
  3. 引号嵌套:避免在 python -c "..." 中嵌套复杂引号,改用脚本文件方式
  4. 路径空格:路径含空格时必须加引号

球队/球员中英文名称

遵循规则 6:翻译由 LLM 直接完成,不在脚本中硬编码字典。

  • LLM 在格式化输出时,直接将英文球队名/球员名/国家名翻译为中文(如 Brazil → 巴西,Manchester United → 曼联)。
  • references/team-names.md 仅作为冷门球队/边缘联赛的辅助参考,不用于脚本查询。
  • 遇极冷门或不确定译名时,保留英文并标注"译名待确认"。

LiveScore MCP 工具清单

通过 DeferExecuteTool 调用,前缀 mcp__livescore__

#工具干什么
-----------------
1search搜球队/球员/赛事,必填 q
2get_live_scores正在踢的比赛
3get_day_fixtures某天所有比赛,必填 date(DD/MM/YYYY)
4get_fixtures杯赛赛程,必填 competition
5get_league_fixtures联赛赛程,必填 league_key
6get_match比赛详情+事件+阵容+统计+H2H
7get_player球员详情,必填 id
8get_team球队详情,必填 id
9get_team_image球队Logo
10health检查连接

联赛 Key 速查见 references/league_keys.md。找不到时用 search(英文名)搜。


核心场景

场景 1: 实时比分

DeferExecuteTool({ toolName: "mcp__livescore__get_live_scores", params: {} })

表格输出,中文队名,进球高亮。

场景 2: 某日赛程

日期 DD/MM/YYYY,中国用户 tzoffset=480。按联赛分组,标注北京时间。

场景 3: 联赛/杯赛赛程

已知 Key 直接调,未知先 search。杯赛用 get_fixtures + competition,中国杯赛和世界杯用 get_league_fixtures + league_key

  • 数据量过大被保存到临时文件时,遵循规则 5:用内联 python -c 解析 stdout,直接在对话中以 Markdown 表格输出。
  • 不要在磁盘生成 .md.txt 文件再读取展示。

场景 4: 球队信息

search → 拿 team_id → 并行 get_team + get_team_image。按规则 3 模板输出。

场景 5: 球员信息

search → 拿 player_id → get_player。按规则 2 模板输出,所有字段覆盖。

场景 6: 转会信息(高频场景)

这是用户最常问的场景之一,必须优先响应。

LiveScore MCP 不支持转会。使用 WebFetch 抓取,详尽的数据源、slug对照表、查询策略、URL模板、输出格式references/transfer-sources.md

查询流程:

  1. 识别用户查询的球队/联赛 → 确定球迷屋 slug
  2. 先试球迷屋球队页:WebFetch("https://www.qiumiwu.com/team/{slug}/transfer")
  3. 404则改用联赛页:WebFetch("https://www.qiumiwu.com/league/{slug}/transfer"),从返回中筛选目标球队
  4. 转会费补充:WebSearch "{球队名} 转会 转会费" 或搜 GOAL/虎扑
  5. 按标准格式输出:转入/转出表格 + 转会总结

输出格式:

## [球队中文名] [赛季] 转会信息

### 转入
| 球员 | 位置 | 原俱乐部 | 转会费 | 转会类型 |
|------|------|---------|--------|---------|

### 转出
| 球员 | 位置 | 新俱乐部 | 转会费 | 转会类型 |
|------|------|---------|--------|---------|

### 转会总结
- 总支出 / 总收入 / 净投入

常用球队 slug 速查: 皇马=huangma 巴萨=basa 曼城=mancheng 利物浦=liwupu 阿森纳=asena 曼联=manlian 切尔西=qieerxi 拜仁=bairen 巴黎=balishengrierman 尤文=youwentusi 国米=guojimilan

常用联赛 slug 速查: 西甲=xijia 英超=yingchao 意甲=yijia 德甲=dejia 法甲=fajia

注意: Transfermarkt 被 Cloudflare 拦截不可用;球迷屋不提供转会费金额,需从 GOAL/虎扑/天体号补充。

场景 7: 比赛详情

从赛程定位 match ID → get_match(id, h2h=1)。分块输出:比赛信息 → 事件时间线 → 统计对比 → H2H。

场景 7: 比分预测

流水线(一步到位版,v2.9+):

  1. 并行拉取数据(3路):get_match(id, h2h=1) + 主队 get_team + 客队 get_team
  2. 一条命令完成提取+预测:使用 predict.py --mcp-files 直接传入3个MCP结果文件路径
PYTHON="C:/Users/64314/.workbuddy/binaries/python/versions/3.13.12/python.exe"
SCRIPT="C:/Users/64314/.workbuddy/skills/livescore-radar/scripts/predict.py"

"$PYTHON" "$SCRIPT" --mcp-files \
  --match "<get_match结果文件路径>" \
  --home "<主队get_team结果文件路径>" \
  --away "<客队get_team结果文件路径>" \
  --format markdown

就这么简单! --mcp-files 模式自动完成:

  • 跳过 MCP 结果文件的描述行
  • get_team 提取近期战绩、赛季统计、阵容信息
  • get_match 提取 H2H 数据
  • 组装输入 JSON → 运行六维预测 → 输出 Markdown

旧方式(分步,不推荐但仍可用):

  1. 并行拉取3路数据
  2. extract_predict_input.py 提取并组装 JSON
  3. predict.py --data 运行预测

predict.py 输入 JSON Schema(供手动组装时参考):

{
  "home_team": "South Korea",
  "away_team": "Czechia",
  "venue": "Estadio Akron",
  "recent_form": {
    "home": [{"result": "W|D|L", "score": "2-1", "opponent": "Japan", "date": "2026-06-01"}],
    "away": [{"result": "W|D|L", "score": "1-0", "opponent": "Denmark", "date": "2026-06-01"}]
  },
  "h2h": {
    "matches": [{"home": "Czechia", "away": "South Korea", "score": "1-2", "date": "2016-11-11"}]
  },
  "team_stats": {
    "home": {"played": 10, "wins": 5, "draws": 2, "losses": 3, "goals_for": 15, "goals_against": 12, "league_position": 3, "home_played": 5, "home_wins": 3, "home_draws": 1, "home_losses": 1, "away_played": 5, "away_wins": 2, "away_draws": 1, "away_losses": 2},
    "away": {"played": 10, "wins": 4, "draws": 3, "losses": 3, "goals_for": 12, "goals_against": 10, "league_position": 5, "home_played": 5, "home_wins": 3, "home_draws": 1, "home_losses": 1, "away_played": 5, "away_wins": 1, "away_draws": 2, "away_losses": 2}
  },
  "squad": {
    "home": {"top_scorer": {"name": "Son Heung-min", "goals": 8}, "key_injuries": ["Player1"], "squad_depth": "strong|normal|weak"},
    "away": {"top_scorer": {"name": "Patrik Schick", "goals": 6}, "key_injuries": [], "squad_depth": "normal"}
  },
  "external": {
    "news_sentiment": {"home": 0.5, "away": 0.5},
    "rest_days": {"home": null, "away": null},
    "schedule_pressure": {"home": "low", "away": "low"}
  }
}

预测因子权重: 近期状态30% | 历史交锋20% | 球队实力20% | 阵容强度15% | 主场优势10% | 外部因素5%

特殊处理: 休赛期用上赛季数据并标注;杯赛淘汰赛上调外部因素权重,近期窗口缩至5场;德比战标注"德比加成"。

场景 8: 积分榜

无 standings API。从 get_league_fixtures 重建:已完场比赛算积分(胜3/平1/负0),按积分→净胜球→进球排序。

场景 9: 主队自动识别

用户提及"我的主队/我是XX球迷/XX是我的队/关注XX"时自动执行:提取队名 → search 拿 team_id 和 league_key → 写入 profile.json → 告知用户。

场景 10: 主队快讯

profile.json 读主队信息,并行拉取 get_team + get_league_fixtures,筛出:最近5场(FT)、未来5场(未开始)、今天有无比赛。中文格式输出。

场景 11: (已合并至场景 6)


查询效率与限流

API 限流(重要)

LiveScore MCP 有频率限制,单次最多并行 3 个请求。收到 429 错误时告知用户等待 30 秒,不自动重试。

效率原则

  1. 并行无依赖调用(≤3个)
  2. 热门联赛直接用已知 Key,不浪费 search
  3. 先拿 ID 再拿详情
  4. Match ID 获取:get_live_scores(最快) → get_day_fixturesget_league_fixturessearch(最慢)
  5. 主队 ID 缓存到 profile.json,后续零搜索开销

已知限制

限制处理方式
---------------
无原生积分榜从 fixtures 重建
无新闻/预测/转会接口分别用 WebFetch/本地脚本/指定数据源
联赛 Key 非标准名查 references/league_keys.md 或 search
时间戳 GMTtzoffset=480,标"北京时间"
MCP 未启用自动补配置后,引导用户去「左侧边栏→专家→连接器→自定义连接器→livescore→信任」
API 限流(429)≤3并行,收到后等30秒不自动重试

文件位置

文件路径
------------
技能文件~/.workbuddy/skills/livescore-radar/SKILL.md
用户主队~/.workbuddy/skills/livescore-radar/profile.json
预测脚本~/.workbuddy/skills/livescore-radar/scripts/predict.py
数据提取脚本~/.workbuddy/skills/livescore-radar/scripts/extract_predict_input.py
球队名称对照~/.workbuddy/skills/livescore-radar/references/team-names.md
联赛 Key 速查~/.workbuddy/skills/livescore-radar/references/league_keys.md
转会数据参考~/.workbuddy/skills/livescore-radar/references/transfer-sources.md

版本历史

共 1 个版本

  • v1.0.0 新发布技能:足球绿茵雷达 当前
    2026-06-11 12:12 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

security-compliance

Skill Vetter

spclaudehome
AI智能体技能安全预审工具。安装ClawdHub、GitHub等来源技能前,检查风险信号、权限范围及可疑模式。
★ 1,211 📥 266,256
ai-intelligence

self-improving agent

pskoett
捕获经验教训、错误和纠正,以实现持续改进。使用时机:(1)命令或操作意外失败;(2)用户纠正……
★ 4,057 📥 796,789
developer-tools

Github

steipete
使用 `gh` CLI 与 GitHub 交互,通过 `gh issue`、`gh pr`、`gh run` 和 `gh api` 管理议题、PR、CI 运行及高级查询。
★ 668 📥 323,875