项目简介

Bundestag MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在为大型语言模型 (LLM) 应用提供德国联邦议院(Bundestag)会议记录的上下文信息。通过此服务器,LLM 可以访问和理解德国议会的最新议事内容,从而实现更深入的政治领域对话和分析。

主要功能点

  • 获取最新会议记录: 提供工具 (Tool) 允许 LLM 客户端请求并获取德国联邦议院最新一次全体会议的会议记录。
  • 数据资源访问: 服务器作为访问德国联邦议院会议记录的入口,简化了 LLM 应用获取相关数据的流程。
  • MCP协议标准: 遵循 MCP 协议标准,确保与支持 MCP 协议的 LLM 客户端(如 Claude Desktop)的兼容性和互操作性。

安装步骤

  1. 克隆仓库: 首先,使用 'git clone' 命令将仓库克隆到本地:

    git clone https://github.com/luebken/bundestag-mcp.git
    cd bundestag-mcp
  2. 安装依赖: 使用 'uv' (或 'venv' 和 'pip') 创建虚拟环境并安装项目依赖。

    uv venv
    source .venv/bin/activate  # 或根据你的 shell 使用不同的激活命令
    uv pip install -e .

服务器配置

要将 Bundestag MCP 服务器配置到 MCP 客户端(例如 Claude Desktop),你需要编辑客户端的配置文件。以 Claude Desktop 为例,配置文件通常位于:'/Users/YOUR_USERNAME/Library/Application Support/Claude/claude_desktop_config.json'。

在 'claude_desktop_config.json' 文件中,找到 '"mcpServers"' 部分,并添加以下配置信息。请根据你的实际安装路径修改 '/ABSOLUTE/PATH/TO/PARENT/FOLDER/bundestag-mcp/' 为克隆仓库父目录的绝对路径。

{
  "mcpServers": {
      "bundestag-mcp": {
          "command": "uv",
          "args": [
              "--directory",
              "/ABSOLUTE/PATH/TO/PARENT/FOLDER/bundestag-mcp/",
              "run",
              "server.py"
          ]
      }
  }
}

配置参数说明:

  • '"bundestag-mcp"': 服务器名称,可以自定义,用于在客户端中标识该服务器。
  • '"command": "uv"': 启动服务器的命令,这里使用 'uv run server.py' 启动 Python 服务器。
  • '"args"': 传递给启动命令的参数列表。
    • '"--directory"': 指定工作目录为仓库的父目录,确保程序能找到相关文件。
    • '"/ABSOLUTE/PATH/TO/PARENT/FOLDER/bundestag-mcp/"': 请替换为 Bundestag MCP 仓库父目录的绝对路径。 例如,如果你的仓库克隆在 '/Users/yourname/projects/bundestag-mcp',那么父目录路径就是 '/Users/yourname/projects/'。
    • '"run"': 'uv run' 命令的一部分,用于执行 Python 脚本。
    • '"server.py"': 指定要运行的服务器脚本为 'server.py'。

配置完成后,重启 Claude Desktop 使配置生效。

基本使用方法

配置完成后,在支持 MCP 协议的 LLM 客户端中,你可以通过工具调用 Bundestag MCP 服务器的功能。

例如,在 Claude Desktop 中,你可以使用以下 Prompt 来询问关于德国联邦议院最新会议记录的内容:

Was wurde in der letzten Plenarsitzung im Bundestag diskutiert?

或者英文 Prompt:

What was discussed in the last plenary session of the Bundestag?

服务器将响应 LLM 客户端的请求,并返回最新会议记录的相关信息。

提示: 首次使用可能需要设置环境变量 'BUNDESTAG_API_KEY',请参考仓库或 'server.py' 代码中的说明进行配置,以便服务器能够访问德国联邦议院的 API。但从提供的代码来看,'BUNDESTAG_API_KEY' 似乎是可选的,代码中对 API Key 的处理方式可能需要进一步确认。

信息

分类

数据库与文件