Command-line tool and TypeScript library

abgeordnetenwatch

Query Germany’s parliamentary-monitoring data — politicians, mandates, votes, committees and disclosed side jobs — from your terminal. abgeordnetenwatch is a command-line tool and TypeScript client for the open abgeordnetenwatch.de API v2: list any of 18 entity collections, filter and sort them, fetch single records, count matches, and pipe the JSON straight into jq.

Version 0.0.8 npm GitHub API reference

Install

Needs Node.js 20 or newer. Installs the abgeordnetenwatch command:

npm i -g @maschinenlesbar.org/abgeordnetenwatch-cli

Access

No account, no API key, no configuration — install and query.

Quick start

# How many female politicians are in the database?
abgeordnetenwatch count politicians sex=f

# Five politicians born after 1990, sorted by surname
abgeordnetenwatch list politicians 'year_of_birth[gt]=1990' \
  --sort-by last_name --range-end 5 --data-only

# Fetch one party
abgeordnetenwatch get parties 2 --data-only

# Every individual vote in poll 6569 (the data array only)
abgeordnetenwatch list votes poll=6569 --data-only | jq '.[].vote' | sort | uniq -c

Commands

All commands, arguments and options →

Claude Code skills

The abgeordnetenwatch plugin teaches Claude to use abgeordnetenwatch. Install it from the maschinenlesbar.org marketplace:

/plugin marketplace add maschinenlesbar-org/plugins
/plugin install abgeordnetenwatch@maschinenlesbar

TypeScript library

@maschinenlesbar.org/abgeordnetenwatch-cli is also a typed API client you can import in your own code, with no runtime HTTP dependencies.

The tool, not the data

The data comes from the provider behind the API, under its own terms — see DATA_LICENSE.md. The code is dual-licensed AGPL-3.0-or-later or commercial — see LICENSING.md.