Kolada MCP服务器
一个干净、独立的MCP(模型上下文协议)服务器,用于瑞典的Kolada市政统计API。
概述
该服务器为人工智能应用程序提供了访问瑞典综合市政和地区统计数据库的权限。它支持对数千个关键绩效指标(KPI)进行自然语言查询,涵盖瑞典公共部门数据的各个方面。
特性
- 9 MCP工具 用于全面的数据访问
- 语义搜索 使用瑞典BERT嵌入
- 无外部依赖关系 -完全独立(无Mima或Redis)
- 容器化 支持Docker
- 现代Python 3.11+ 带有类型提示和async/await
可用工具
| 工具 | 说明 |
|---|---|
list_operating_areas | 列出所有具有计数的KPI类别 |
get_kpis_by_operating_area | 获取特定类别中的KPI |
search_kpis | 使用自然语言对KPI进行语义搜索 |
get_kpi_metadata | 获取特定KPI的详细元数据 |
fetch_kolada_data | 获取市政当局的原始KPI数据 |
analyze_kpi_across_municipalities | 与排名的比较分析 |
compare_kpis | 比较两个关键绩效指标(差异或相关性) |
list_municipalities | 列出城市/地区 |
filter_municipalities_by_kpi | 按KPI阈值筛选 |
安装
使用pip
pip install -e .使用Docker
docker-compose up -d kolada-mcp用法
标准模式(默认)
kolada-mcp
# or
python -m kolada_mcpHTTP模式
MCP_TRANSPORT=http PORT=8001 kolada-mcpClaude桌面集成
添加到您的Claude Desktop配置中:
{
"mcpServers": {
"kolada": {
"command": "kolada-mcp"
}
}
}配置
环境变量:
| 变量 | 默认值 | 描述 |
|---|---|---|
MCP_TRANSPORT | stdio | 运输方式(stdio 或 http) |
PORT | 8001 | HTTP服务器端口 |
LOG_LEVEL | INFO | 日志记录级别 |
发展
设置
# Create virtual environment
python -m venv .venv
source .venv/bin/activate
# Install with dev dependencies
pip install -e ".[dev]"运行测试
pytest代码质量
# Linting
ruff check src tests
# Type checking
mypy src建筑
src/kolada_mcp/
├── __init__.py # Package init
├── __main__.py # Entry point
├── config.py # Settings (Pydantic)
├── server.py # FastMCP server
├── models/
│ └── types.py # Data models
├── services/
│ ├── kolada_client.py # API client
│ ├── embeddings.py # Semantic search
│ └── data_processing.py
└── tools/
├── metadata.py # KPI metadata tools
├── data.py # Data fetching tools
├── municipality.py # Municipality tools
└── comparison.py # Comparison tools许可证
阿帕奇-2.0
