服务器咨询信息 MCP Server
   
一个 模型上下文协议(MCP)服务器 它允许人工智能助理通过Notubiz API访问巴恩市政当局的政治文件和会议。
特性
- 15个MCP工具 - 会议, 文件, 搜索, 注释
- 24个AI代理 - 不同任务的专门提示
- MCP资源 - 直接访问会议和文件数据
- 语义搜索 - 基于AI的搜索与嵌入
- 自动同步 - 与Notubiz API的背景同步
- Docker支持 -集装箱化部署
快速启动
单线安装(推荐)
安装的最快方法 - 一个命令,一切都会自动安排:
Linux/macOS:
curl -fsSL https://raw.githubusercontent.com/tiemenrtuinstra/baarn-raadsinformatie/main/install.sh | bashWindows(PowerShell als管理员):
irm https://raw.githubusercontent.com/tiemenrtuinstra/baarn-raadsinformatie/main/install.ps1 | iex通过 Git Clone 安装
若要编辑源代码或更好地控制安装:
窗户:
git clone https://github.com/tiemenrtuinstra/baarn-raadsinformatie.git
cd baarn-raadsinformatie
.\scripts\install.ps1 # Volledige installatie
.\scripts\install.ps1 -LightBuild # Zonder embeddings (kleinere image)
.\scripts\install.ps1 -SkipDocker # Skip Docker installatie
.\scripts\install.ps1 -SkipClaude # Skip Claude Desktop/CLI installatiemacOS/Linux:
git clone https://github.com/tiemenrtuinstra/baarn-raadsinformatie.git
cd baarn-raadsinformatie
./scripts/install.sh
./scripts/install.sh --light # Lichtgewicht build
./scripts/install.sh --skip-docker # Skip Docker check
./scripts/install.sh --skip-claude # Skip Claude Desktop/CLI installatie安装程序在做什么?
- 码头工人 如果需要,安装Docker Desktop
- 环境 -完成
.env具有唯一API密钥的文件 - 构建 -Bouwt Docker镜像(约3.5GB,约1.5GB轻量级)
- 克劳德 (可选,船
--skip-claude- 安装Claude如果需要:
- Windows/MOSC:克劳德桌面(通过winget/brew的directe下载) - Linux/Chromebook:克劳德代码命令行界面(通过npm) - 依赖关系:如果需要,Node.js 会自动安装 CLI
- AI工具 - 检测和配置(14个工具):
- 克劳德桌面版 - 克劳德代码CLI - OpenAI Codex命令行界面 - 光标IDE - Continue.dev(VS代码/JetBrains) - 克莱恩(Claude Dev) 《美国代码》 - 助手CLI - Zed编辑 - 帆板运动 - 奥拉玛 - GitHub Copilot - 微软复制品工作室
- 开始 -启动API服务器同步服务
Chromebook/ChromeOS支持
安装程序也适用于支持 Linux (Crostini) 的 Chromebook:
# Open de Linux terminal op je Chromebook en voer uit:
curl -fsSL https://raw.githubusercontent.com/tiemenrtuinstra/baarn-raadsinformatie/main/install.sh | bash注释:
- Claude Desktop 不适用于 Linux/ChromeOS
- 安装程序将通过npm自动安装Claude Code CLI
- 必要时自动安装 Node.js
- 使用
--skip-claude跳过 Claude 安装 - Docker 必须在 Linux 容器中可用
管理服务
# Windows
.\scripts\start.ps1 # Start services
.\scripts\start.ps1 -Stop # Stop services
.\scripts\start.ps1 -Logs # Bekijk logs
.\scripts\start.ps1 -Restart # Herstart
# macOS/Linux
./scripts/start.sh start # Start services
./scripts/start.sh stop # Stop services
./scripts/start.sh logs # Bekijk logs
./scripts/start.sh status # Toon status手动安装
如果您喜欢手动安装:
# Clone repository
git clone https://github.com/tiemenrtuinstra/baarn-raadsinformatie.git
cd baarn-raadsinformatie
# Kopieer environment file
cp .env.example .env
# Bouw en start met Docker
docker compose build
docker compose up -d api-server sync-serviceClaude 桌面配置
安装后,Claude Desktop 将自动配置。手动添加到 %APPDATA%\Claude\claude_desktop_config.json (Windows) ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"baarn-raadsinformatie": {
"command": "docker",
"args": ["run", "-i", "--rm", "--env-file", "/pad/naar/project/.env",
"-v", "/pad/naar/project/data:/app/data",
"baarn-raadsinformatie:latest"]
}
}
}重新启动 Claude Desktop,MCP 服务器将可用。
建筑
baarn-raadsinformatie/
├── mcp_server.py # MCP server entry point
├── api_server.py # REST API server (FastAPI)
├── sync_service.py # Background sync service
├── agents/ # AI agent definities (YAML)
├── analyzers/ # Analyse modules
├── configs/ # Configuratie bestanden
│ ├── openapi.json # OpenAPI schema
│ └── copilot-studio-connector.json
├── core/ # Core modules
│ ├── config.py # Configuratie
│ ├── database.py # SQLite database (WAL mode)
│ └── document_index.py # Embeddings index
├── data/ # Data directory (niet in git)
│ ├── baarn.db # SQLite database
│ ├── cache/ # API cache
│ ├── documents/ # PDF downloads
│ └── images/ # Geëxtraheerde afbeeldingen
├── providers/ # Data providers
│ ├── notubiz_client.py # Notubiz API client
│ ├── meeting_provider.py # Vergaderingen
│ ├── document_provider.py# Documenten + OCR
│ └── ... # Overige providers
├── scripts/ # Scripts
│ ├── install.sh/ps1 # Installatie scripts
│ ├── start.sh/ps1 # Start scripts
│ └── ... # Utility scripts
├── shared/ # Gedeelde utilities
│ ├── logging_config.py # Logging
│ └── cli_progress.py # CLI progress bars
└── tools/ # MCP tool definitiesMCP工具
| 工具 | 描述 |
|---|---|
get_meetings | 使用过滤器获取会议 |
get_meeting_details 会议的细节。 | |
get_agenda_items 拿起议程。 | |
get_document 取得文件内容。 | |
search_documents 关键词搜索 | |
semantic_search AI 寻找意义 | |
sync_data 数据同步。 | |
add_annotation 添加笔记 | |
get_annotations | 注意事项 |
get_gremia 收集委员会。 | |
get_statistics 数据库统计 | |
get_coalitie_akkoord 联盟协议信息 | |
update_coalitie_afspraak 更新联盟协议 | |
add_visit_report | 上传工作报告 |
import_visit_reports 从文件创建工作访问报告 | |
list_visit_reports 工作访问报告列表 | |
get_visit_report 工作访问报告详情 | |
search_visit_reports 在工作访问报告中搜索 | |
update_visit_report 更新工作访问报告 | |
delete_visit_report 工作访问报告归档 | |
link_visit_report_to_meeting 将报告链接到会议 | |
index_visit_reports 索引报告文件。 |
AI代理
服务器包含24个专门代理:
分析与研究
vergadering-analist分析会议stemgedrag-analist- 分析声音模式document-zoeker搜索文件beleids-onderzoeker研究政策
监控和跟踪
besluit-tracker跟随决策motie-tracker建议/修正案toezeggingen-tracker遵循承诺coalitie-monitor遵循联盟协议
协助
raadslid-assistent支持理事会成员burger-informant通知公民journalist-assistent支持记者woo-assistent- 帮助住房请求
Docker部署
# Build en start
docker compose up -d
# Bekijk logs
docker compose logs -f
# Stop
docker compose down同步服务每6小时自动同步一次。
Claude Code CLI 配置
MCP服务器使用Claude Code CLI(Anthropic的CLI工具)。当检测到 Claude Code CLI 时,安装程序会自动注册 MCP 服务器。
手动注册:
# Voeg MCP server toe aan Claude Code
claude mcp add baarn-raadsinformatie -- docker run -i --rm \
--env-file "/pad/naar/baarn-raadsinformatie/.env" \
-v "/pad/naar/baarn-raadsinformatie/data:/app/data" \
-v "/pad/naar/baarn-raadsinformatie/logs:/app/logs" \
baarn-raadsinformatie:latest
# Bekijk geconfigureerde MCP servers
claude mcp list
# Start Claude Code sessie met MCP tools
claude
> wat zijn de vergaderingen van deze week in Baarn?OpenAI Codex CLI配置
MCP服务器还支持OpenAI Codex CLI。安装程序会在检测到 Codex CLI 时自动注册 MCP 服务器。
手动注册:
# Voeg MCP server toe aan Codex
codex mcp add baarn-raadsinformatie -- docker run -i --rm \
--env-file "/pad/naar/baarn-raadsinformatie/.env" \
-v "/pad/naar/baarn-raadsinformatie/data:/app/data" \
-v "/pad/naar/baarn-raadsinformatie/logs:/app/logs" \
baarn-raadsinformatie:latest
# Bekijk geconfigureerde MCP servers
codex mcp list
# Test de server
codex
> wat zijn de vergaderingen van deze week in Baarn?然后,服务器在 CLI 会话中作为 MCP 工具可用。
IDE 光标配置
Cursor IDE 支持 MCP 原生。配置在 .cursor/mcp.json:
{
"mcpServers": {
"baarn-raadsinformatie": {
"command": "docker",
"args": ["run", "-i", "--rm", "--env-file", ".env",
"-v", "./data:/app/data", "baarn-raadsinformatie:latest"]
}
}
}Continue.dev 配置
关于 Continue.dev(美国代码/JetBrains),请参阅 .continue/config.json:
{
"experimental": {
"modelContextProtocolServers": [{
"transport": {
"type": "stdio",
"command": "docker",
"args": ["run", "-i", "--rm", "--env-file", ".env",
"-v", "./data:/app/data", "baarn-raadsinformatie:latest"]
}
}]
}
}Cline (Claude Dev) 配置
Cline是AI辅助编码的美国代码扩展。配置在 .vscode/settings.json:
{
"cline.mcpServers": {
"baarn-raadsinformatie": {
"command": "docker",
"args": ["run", "-i", "--rm", "--env-file", "${workspaceFolder}/.env",
"-v", "${workspaceFolder}/data:/app/data",
"baarn-raadsinformatie:latest"]
}
}
}安装 临床延伸 在VS代码中。
帮助配置
Aider是一个AI辅助编码的CLI工具。配置在 .aider.conf.yml:
model: claude-3-5-sonnet-20241022
edit-format: diff
auto-commits: true
# Context bestanden
read:
- README.md
- progress.md安装和使用:
pip install aider-chat
cd baarn-raadsinformatie
aider
# Vraag om context via API
/run curl -s http://localhost:8000/api/meetings?limit=5Zed 编辑器配置
Zed Editor支持MCP。配置在 .zed/settings.json:
{
"context_servers": {
"baarn-raadsinformatie": {
"command": {
"path": "docker",
"args": ["run", "-i", "--rm", "--env-file", ".env",
"-v", "./data:/app/data", "baarn-raadsinformatie:latest"]
}
}
},
"assistant": {
"default_model": {
"provider": "anthropic",
"model": "claude-3-5-sonnet-20241022"
}
}
}下载Zed van zed.dev.
Windsurf 配置
Windsurf是一个AI优先的代码编辑器。配置在 .windsurf/mcp.json:
{
"mcpServers": {
"baarn-raadsinformatie": {
"command": "docker",
"args": ["run", "-i", "--rm", "--env-file", "${workspaceFolder}/.env",
"-v", "${workspaceFolder}/data:/app/data",
"baarn-raadsinformatie:latest"]
}
}
}级联配置 .windsurf/cascade.json 包含用于搜索会议和文档的自定义命令。
微软复制品工作室
进口商 configs/copilot-studio-connector.json als自定义连接器:
- 前往 Power Platform Admin Center
- 使用OpenAPI规格创建自定义连接器
- 替换
YOUR_API_HOST使用您的公共 API URL
奥拉马(Lokale LLM)
查看 docs/ollama-integration.md 与当地LLM的整合。
REST API和ChatGPT自定义GPT
该服务器还包含一个REST API,您可以使用它进行ChatGPT自定义GPT操作。
API 服务器启动
# Direct
python api_server.py
# Of via Docker
docker compose up api-server -dAPI可在 http://localhost:8000:
- Swagger用户界面:
http://localhost:8000/docs - OpenAPI架构:
http://localhost:8000/openapi.json
API密钥鼠
API 使用 API_KEY 关闭 .env您可以使用以下方式本地旋转:
# Cross-platform (Python)
python scripts/rotate_api_key.py
# macOS/Linux
./scripts/rotate_api_key.sh
# Windows PowerShell
./scripts/rotate_api_key.ps1然后重新启动服务,使新密钥生效。
ChatGPT自定义GPT设置
- 部署API 到公共 URL(例如,通过 ngrok、Cloudflare Tunnel 或服务器)
- 创建自定义 GPT 在ChatGPT中:
- 转到 ChatGPT → 探索GPT→ 创建 - 给它起个名字:“巴恩咨询信息助理”
- 配置程序操作:
- Klik op“配置”→ “创建新操作” - 从导入 OpenAPI 方案 /openapi.json 或复制 openapi.json - 将服务器URL替换为您的公共URL
- 认证:
- Kies“API密钥”als身份验证类型 - 身份验证类型:“自定义” - 自定义标题名称: X-API-Key - 输入您的API密钥(见 .env 文件)
- 说明 对于GPT:
Je bent een assistent voor politieke informatie over gemeente Baarn.
Gebruik de beschikbare actions om vergaderingen, documenten en
coalitieakkoord informatie op te halen. Geef altijd bronverwijzingen.API终点
| Endpoint | 方法 | 描述 |
|---|---|---|
/api/meetings | GET | 召开会议 |
/api/meetings/{id} | GET | 边缘细节 |
/api/meetings/{id}/agenda | GET | 议程项目 |
/api/documents/{id} | GET | 文件纸 |
/api/documents/search 关键字搜索 | ||
/api/documents/semantic-search | GET | 语义搜索 |
/api/gremia | GET | 收取佣金 |
/api/coalitie | 联盟协议 | |
/api/statistics | GET | 数据库统计 |
/api/annotations | GET/POST | 注释 |
本地上传门户
REST API 包含一个本地上传器 http://localhost:8000/upload. 此页面需要 X-API-Key 使用与 MCP 工具相同的存储/提取。 您可以在这里上传文件(PDF/DOCX/PPTX/XLSX),并可选择直接创建工作访问报告。
使用 Docker:
docker compose up api-server -d
# bezoek http://localhost:8000/upload en vul je API key in环境变量
| 变量 | 描述 | Default |
|---|---|---|
NOTUBIZ_API_URL | notubiz API URL | https://api.notubiz.nl |
NOTUBIZ_API_TOKEN | API令牌 | - |
FORCE_ORCHESTRATOR | 通过编排器提示强制路由 | true |
ORCHESTRATOR_AGENT_NAME Orchestrator Agent的名字 orchestrator | ||
STORE_FILES_IN_DB 将文件保存到数据库。 true | ||
MAX_FILE_SIZE_MB DB 存储的最大文件大小 25 | ||
LOG_LEVEL | 日志级别 | INFO |
AUTO_SYNC_ENABLED 开启/关闭自动同步 true | ||
AUTO_SYNC_DAYS 天回到sync。 365 | ||
EMBEDDINGS_ENABLED | 语义搜索 | true |
GitHub操作变量(CI)
设置以下 repo 变量 设置→ 秘密与变量→ 行动→ 变量:
| 变量 | 值 |
|---|---|
FORCE_ORCHESTRATOR | true |
ORCHESTRATOR_AGENT_NAME | orchestrator |
语义搜索
默认情况下启用了嵌入式语义搜索。所需依赖关系(sentence-transformers 英语 torch)已停止 requirements.txt.
在第一次搜索时,嵌入模型(paraphrase-multilingual-MiniLM-L12-v2)自动下载。
API 资源
该服务器通过 API诺图比兹:
- 会议和议程
- 建议和文件
- 委员会和委员会
- 决定和动议
许可证
麻省理工学院许可证-zie 许可证 对于细节。
贡献
欢迎捐款!打开一个问题或pull请求。
联系
- 剩余熊:
- 数据源: 诺图比兹·巴恩

