Feyod MCP Server
An MCP server that provides a natural language interface for querying Feyenoord football match data, converting questions into SQL queries and returning match information, player statistics, and opponent data.
Get this MCP server
An MCP server that provides a natural language interface for querying Feyenoord football match data, converting questions into SQL queries and returning match information, player statistics, and opponent data.
Installation
Docker Hub
docker pull jeroenvdmeer/feyod-mcp
From Source
git clone https://github.com/jeroenvdmeer/feyod-mcp.git
git clone https://github.com/jeroenvdmeer/feyod.git
cd feyod-mcp
uv venv
.venv\Scripts\activate # Windows
# or
source .venv/bin/activate # macOS/Linux
uv add "mcp[cli]" langchain langchain-openai langchain-google-genai python-dotenv aiosqlite
Database Setup
cd ../feyod
sqlite3 feyod.db < feyod.sql
Running Docker
docker run -p 8000:8000 \
-e LLM_PROVIDER="your_llm_provider" \
-e LLM_API_KEY="your_api_key" \
jeroenvdmeer/feyod-mcp
Development Mode
mcp dev main.py
Available Tools
| Tool | Description |
|---|---|
answer_feyenoord_question |
Answers questions about Feyenoord. Questions can be asked in natural language, in text form, and they can be... |
Features
- Natural language interface for querying Feyenoord football match data
- Converts natural language questions into SQL queries using LangChain
- Validates and attempts to fix invalid SQL queries using LLM
- Supports multiple LLM providers (OpenAI, Google, and others) through a provider factory
- Few-shot examples for improved SQL generation accuracy
- Public HTTP endpoint available at https://mcp.feyod.nl/mcp
- Docker container support with ready-made images
- SQLite database with complete Feyenoord match data
Environment Variables
Required
DATABASE_PATH- Path to the SQLite database file (relative to the mcp folder or absolute)LLM_PROVIDER- LLM provider to use (e.g., 'google', 'openai')LLM_API_KEY- API key for the LLM provider
Optional
HOST- Server host binding (defaults to localhost/127.0.0.1)LOG_LEVEL- Logging level (e.g., DEBUG, INFO, WARNING, ERROR)LLM_MODEL- Specific model to use (e.g., 'gemini-2.5-flash')EXAMPLE_SOURCE- Source of examples ('local' or 'mongodb')EXAMPLE_DB_CONNECTION_STRING- MongoDB connection string when using MongoDB for examplesEXAMPLE_DB_NAME- MongoDB database name for examplesEXAMPLE_DB_COLLECTION- MongoDB collection name for examples
Notes
Requires Python 3.10+. The base Feyod database is maintained in a separate repository (jeroenvdmeer/feyod). Publicly available endpoint at https://mcp.feyod.nl/mcp. Implements security controls, including SQL query validation and read-only database access. Supports debugging with MCP Inspector.