Abgeordnetenwatch MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Abgeordnetenwatch MCPShow me the side jobs of Annalena Baerbock"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Abgeordnetenwatch MCP
A Model Context Protocol server over the open Abgeordnetenwatch API (CC0). It gives an AI assistant live, source-linked transparency data on German MPs: roll-call voting behaviour, declared side-jobs / outside income, committee memberships, parties, parliaments, and election programs.
Germany only — Bundestag and Landtage. No API key required.
Tools (11)
Transparency (per MP)
Tool | Description |
| Resolve a name → politician candidates (id, party, URL) |
| One politician's profile by id |
| Roll-call voting behaviour (name or id; |
| Declared side-jobs / outside income (levels 1–10) |
| Committees an MP sits on + role |
| Combined: mandate + votes + side-jobs + committees |
Votes
Tool | Description |
| Find named votes (Abstimmungen) by keyword / topic id |
| Aggregated result of a named vote, by faction |
Structure & escape hatch
Tool | Description |
| Browse parties / fractions / parliaments / periods / committees / constituencies / electoral-lists / topics / sidejob-organizations |
| Party election programs (Wahlprogramme) with source links |
| Bounded generic read of any allow-listed v2 entity |
Related MCP server: mcp-eu-parliament
Run
npm install
npm start # http://localhost:3000/mcp (health: /health, catalog: /info)
npm test # vitest
npm run dev # watch modeConfig is env-driven (all optional) — see .env.example. The public CC0 API needs
no key; the server enforces its own ~30 req/min limiter and caches responses ~10 min.
Design notes
Every read is filtered and bounded (
range_end, capped at 100). The API has no aggregate endpoints; roll-call tallies are the one wide read (≤1000 votes, aggregated server-side into counts).Income is a level 1–10, never an exact euro sum (level 1 = up to 1.000 €, level 10 = over 250.000 €).
The
pollsendpoint 500s onsort_by=id(unlike votes/mandates) — polls are sorted byfield_poll_date.Client logic mirrors the Abgeordnetenwatch tools embedded in the Bundestag Wrapped MCP; this repo is the standalone, full-surface server. DIP and Abgeordnetenwatch share no id — bridge by name.
Licence
Code AGPL-3.0-only. Data © Abgeordnetenwatch / parliamentwatch.org, CC0 1.0.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Movm/abgeordnetenwatch-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server