Yahoo Fantasy MCP服务器

一款用于Yahoo Fantasy Baseball和Basketball的模型上下文协议(MCP)服务器,允许Claude分析阵容、检查比赛、浏览自由球员等。

  • by andy78644
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 andy78644/yahoo-fantasy-mcp

使用说明

雅虎幻想MCP

雅虎梦幻棒球和篮球的模型上下文协议(MCP)服务器。让克劳德分析你的名单,检查比赛,浏览自由球员等等。

设置

1.安装依赖项

python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
pip install -r requirements.txt

2.配置克劳德桌面/Claude代码

有两种身份验证方法——选择一种:


选项A:使用中继服务器(推荐,不需要雅虎应用程序)

将MCP指向为您处理凭据的中继服务器:

克劳德桌面 (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "yahoo-fantasy": {
      "command": "/path/to/yahoo-fantasy-mcp/venv/bin/python3",
      "args": ["/path/to/yahoo-fantasy-mcp/server.py"],
      "env": {
        "YAHOO_AUTH_SERVER": "https://your-relay-url.com"
      }
    }
  }
}

克劳德代码 (~/.claude.json):

{
  "mcpServers": {
    "yahoo-fantasy": {
      "type": "stdio",
      "command": "/path/to/yahoo-fantasy-mcp/venv/bin/python3",
      "args": ["/path/to/yahoo-fantasy-mcp/server.py"],
      "env": {
        "YAHOO_AUTH_SERVER": "https://your-relay-url.com"
      }
    }
  }
}

想自己主持接力赛吗?看 relay/README.md.


选项B:使用自己的雅虎开发者应用程序

  1. 首选 雅虎开发者网络 并创建一个应用程序
  2. 集 应用类型 对于已安装的应用程序, API权限 梦幻体育→ Read
  3. 注意你的 客户端ID 和 客户端密钥
{
  "mcpServers": {
    "yahoo-fantasy": {
      "command": "/path/to/yahoo-fantasy-mcp/venv/bin/python3",
      "args": ["/path/to/yahoo-fantasy-mcp/server.py"],
      "env": {
        "YAHOO_CLIENT_ID": "your_client_id_here",
        "YAHOO_CLIENT_SECRET": "your_client_secret_here"
      }
    }
  }
}

3.首次认证

第一次使用时,只要问克劳德任何关于你的幻想团队的事情。如果未通过身份验证,Claude将自动启动OAuth流:

  1. 浏览器窗口打开雅虎的授权页面
  2. 点击 允许
  3. 雅虎在页面上显示一个代码——复制并交给克劳德
  4. 完成。从现在开始,令牌将被保存并自动刷新(需要重新认证前约1年)

可用工具

工具 说明
authenticate 启动雅虎OAuth流(需要时自动调用)
get_leagues 列出你的MLB和NBA联赛
get_roster 查看您当前的名单,包括职位和伤病状况
get_matchup 查看本周的比赛和统计领导者
get_free_agents 按职位浏览可用的自由球员
get_player_stats 获取给定时间段的玩家统计数据

登出

要删除本地令牌,请执行以下操作:

python logout.py

示例用法

自然地问克劳德:

  • “给我看看我的棒球名单”
  • “本周谁将赢得我的比赛?”
  • “在豁免线上为我找到最好的SP”
  • “Gunnar Henderson最近表现如何?”
  • “给我名单改进建议”