项目简介
API-Football MCP 服务器是一个为大型语言模型 (LLM) 智能体设计的后端服务,专门用于提供英格兰足球超级联赛 (Premier League) 的全面数据。它通过集成API-Sports的API-Football v3,能够提供从2002年至今(部分数据可追溯至1992年)的丰富数据,包括实时比赛事件、联赛积分榜、球队信息和球员统计。该服务器采用TypeScript开发,具备严格的类型检查、强大的错误处理和智能缓存机制,以优化代理工作流程的性能和稳定性。
主要功能点
- 历史数据覆盖:提供2002年至今的英超历史数据,部分工具支持追溯至1992年。
- 实时数据:获取实时比赛事件、最新积分榜和赛程信息。
- 智能缓存:采用LRU缓存策略,并根据数据类型设置不同的过期时间(TTL),如历史数据24小时、当前赛季数据5分钟、实时比赛数据30秒。
- 速率限制处理:内置速率限制追踪和指数退避机制,确保API调用符合API-Sports的限制。
- MCP协议支持:原生支持Model Context Protocol,方便与LLM智能体无缝集成。
- 工具集:提供一系列工具供LLM调用,包括获取积分榜、赛程、球队、球员信息,查询实时比赛事件、球队阵容和API速率限制状态等。
安装步骤
- 前提条件:
- Node.js 22+ 版本
- pnpm 包管理器
- API-Sports 的 API-Football v3 API 密钥 (可从 API-Sports 获取)
- 克隆仓库:
git clone https://github.com/MarvDann/api-football-mcp.git cd api-football-mcp - 安装依赖:
pnpm install - 配置API密钥:
将您的API-Football API密钥设置为环境变量 'API_FOOTBALL_KEY'。
或者在项目根目录创建 '.env' 文件,内容如下:export API_FOOTBALL_KEY=您的API密钥API_FOOTBALL_KEY=您的API密钥 - 构建项目:
pnpm run build
服务器配置 (MCP客户端使用)
MCP客户端需要配置此服务器的启动命令。以下是通用的JSON配置格式,您只需根据您的MCP客户端的文档进行适配。
{ "mcpServers": { "api-football": { "command": "node", "args": ["dist/server.js"], "env": { "API_FOOTBALL_KEY": "请在此处填写您的API密钥", "NODE_ENV": "production", "LOG_TO_FILE": "true", "LOG_DIR": "./logs", "LOG_ROTATE_INTERVAL": "1d" } } } }
- command: '"node"' - 用于启动Node.js应用程序的命令。
- args: '["dist/server.js"]' - 传递给 'node' 命令的参数,这里是服务器脚本的路径。
- env: 一个环境变量对象,其中:
- 'API_FOOTBALL_KEY': 您的API-Football API密钥。
- 'NODE_ENV': 运行环境,建议设置为 '"production"'。
- 'LOG_TO_FILE': 日志是否输出到文件,设置为 '"true"' 启用。
- 'LOG_DIR': 日志文件存放目录,默认为 './logs'。
- 'LOG_ROTATE_INTERVAL': 日志文件轮换周期,例如 '"1d"' 代表每天轮换。
基本使用方法
安装并配置完成后,可以通过以下命令启动MCP服务器:
pnpm start
或者直接运行编译后的服务器文件:
node dist/server.js
服务器启动后,您的MCP客户端(例如Claude Desktop, Cursor, Gemini等)就可以通过配置连接并使用该服务器提供的足球数据工具。
信息
分类
网页与API