使用说明
FPL MCP服务器
一个模型上下文协议(MCP)服务器,通过七个综合工具提供对梦幻英超数据的访问。
特性
- 搜索玩家:通过搜索玩家姓名查找玩家ID(模糊匹配)
- 搜索团队:通过搜索团队名称查找团队ID(模糊匹配)
- 当前游戏周状态:获取当前游戏周数、截止日期和完成状态
- 球员统计:检索任何FPL玩家的综合统计数据
- 游戏周固定装置:获取特定比赛周的所有赛程
- 球员比较:比较多个玩家之间的统计数据
- 团队信息:获取球队详细信息和当前球队信息
- 经理团队:查看任何比赛周的经理团队选择,包括首发XI、替补、队长和阵容
安装
- 安装依赖项:
npm install
- 构建项目:
npm run build
用法
作为MCP服务器
该服务器设计用于MCP客户端。配置您的MCP客户端以使用此服务器:
{
"mcpServers": {
"fpl-mcp-server": {
"command": "node",
"args": ["path/to/dist/index.js"],
"env": {
"NODE_ENV": "production"
}
}
}
}
发展
在开发模式下运行:
npm run dev
MCP检验员测试
MCP检查器提供了一个交互式界面,用于在开发过程中测试和调试服务器。
- 创建一个
mcp.config.json项目根目录中的文件:
{
"mcpServers": {
"fpl-mcp-server": {
"command": "node",
"args": ["dist/index.js"]
}
}
}
- 构建您的服务器:
npm run build
- 运行检查器:
npx @modelcontextprotocol/inspector --config ./mcp.config.json --server fpl-mcp-server
- 在浏览器中打开提供的URL,以交互方式测试所有可用工具
日志记录
服务器使用Winston对stderr进行结构化日志记录(以避免干扰MCP的stdio传输)。使用环境变量配置日志记录:
# Set log level (debug, info, warn, error)
LOG_LEVEL=debug npm start
# Set environment mode (affects log formatting)
NODE_ENV=development npm start
在开发模式下,日志被着色以提高可读性。所有日志都写入stderr,确保stdout上的MCP协议通信不受影响。
可用工具
-
搜索图层:按名字搜索玩家。需要
query(字符串)- 返回最多10名匹配的玩家及其ID、团队、位置和成本
- 在调用get_player_stats或compare_players之前使用此FIRST
-
搜索_团队:按名称搜索团队。需要
query(字符串)- 返回匹配的团队及其ID和短名称
- 在调用get_team_info之前先使用此命令
-
get_current_gameweek:不需要参数
-
get_player_stats:需要
playerId(1-1000)- 首先使用search_players查找玩家ID
-
get_gameweek_fixtures:需要
gameweek(1-38) -
比较玩家:需要
playerIds阵列(2-10名玩家)- 首先使用search_players查找玩家ID
-
get_team_info:需要
teamId(1-20)- 首先使用search_teams查找团队ID
-
get_manager团队:需要
managerId(1-10000000),可选gameweek(1-38)- 返回主教练的球队选择,包括首发XI、替补、队长、阵容和分数
- 如果未指定gameweek,则返回当前gameweek团队
错误处理
该服务器包括全面的错误处理功能,用于:
- 输入验证错误
- FPL API故障
- 网络连接问题
- 球员/球队/比赛周ID无效
所有错误都以一致的格式返回,其中包含错误代码和详细消息。
贡献
欢迎投稿!请阅读我们的 贡献指南 和 行为准则 在提交PR之前。
该项目通过以下方式使用自动发布 请释放。合并时,提交到main以下 约定式提交,会自动创建或更新发布PR。合并该PR会触发一个新的GitHub版本,并自动生成发布说明。
更新日志
看 更改日志.md 发布历史。
许可证
麻省理工学院-见 许可证 文件以获取详细信息。