🇪🇺 EU-parlamentet MCP Server
62 MCP-verktyg • 9 Resurser • 7 Prompts | OpenSSF Scorecard 7,2/10
TypeScript/Node.js Model Context Protocol (MCP) server powering the EU-parlamentet Monitor with 62 MCP-verktyg (15 OSINT-underrättelse + 47 dataåtkomst), 9 resurser, and 7 prompter. 1 130+ enhetstester, 71 E2E-tester, 80%+ täckning. SLSA Nivå 3 supply chain security.
🌐 Live Resurser
🎯 Key Features
🔌 62 MCP-verktyg
15 OSINT-underrättelse tools (MEP-inflytandepoäng, coalition analysis, voting patterns) + 47 dataåtkomst tools for Claude, ChatGPT, and all MCP-compatible AI assistants.
🏛️ EU-parlamentet Data Access
Direct access to MEP profiles, plenary sessions, voting records, committee information, and parliamentary questions via the official EU-parlamentet Open Data API.
📘 TypeScript & Zod Validation
Written in TypeScript with strict type safety and Zod schema validation for all API inputs and outputs. Rate limiting and security headers included out of the box.
🛡️ SLSA Nivå 3 Security
Supply chain security with SLSA Nivå 3 build provenance attestations, OpenSSF Scorecard validation, and comprehensive security scanning via GitHub Actions.
🧪 1,130+ Unit Tests
1 130+ enhetstester and 71 E2E-tester maintaining 80%+ code coverage. Automated CI/CD pipeline with SLSA Nivå 3 provenance attestations and quality gates.
🔒 OpenSSF Scorecard 7,2/10
Fully aligned with ISO 27001:2022, NIST CSF 2.0, CIS Controls v8.1, and GDPR. OpenSSF Scorecard 7.2/10, SLSA Nivå 3, complete ISMS documentation.
🔧 Featured MCP Tools (62 Total)
15 OSINT-underrättelse tools for deep political analysis + 47 dataåtkomst tools for comprehensive EU-parlamentsdata. Here are some highlights:
👤 get_meps
Retrieve Member of EU-parlamentet (MEP) profiles with filtering by country, political group, and committee membership.
📅 get_plenary_sessions
Access plenary session records, agendas, and proceedings with date-range filtering.
🗳️ get_voting_records
Query detailed voting records including individual MEP votes, vote summaries, and legislative context.
🔍 search_documents
Full-text search across parliamentary documents, reports, opinions, and legislative texts.
🏛️ get_committee_info
Access committee structures, membership, mandates, and recent activities.
❓ get_parliamentary_questions
Retrieve parliamentary questions with answers from MEPs and the European Commission.
📊 analyze_voting_patterns
Analyze voting patterns across political groups, countries, and legislative topics for deeper political intelligence.
📋 track_legislation
Track legislative procedures from proposal through committee review to final vote.
📄 generate_report
Generate structured AI-ready reports on parliamentary activity, voting summaries, and MEP profiles.
📡 Data Sources
🇪🇺 MEPs & Representatives
Complete profiles of all Members of the EU-parlamentet including political group, country, committees, and contact information sourced from the official EU-parlamentet Open Data API.
🏛️ Plenary Sessions
Full plenary session records including agendas, debate transcripts, and outcomes from the EU-parlamentet's open data portal.
📁 Committees & Documents
Committee membership, reports, and opinions alongside the full parliamentary document repository for research and analysis.
❓ Parliamentary Questions
Written and oral questions submitted by MEPs with official Commission and Council responses, enabling accountability tracking.
🛠️ Technology Stack
💻 Runtime
TypeScript/Node.js — Type-safe implementation with full ES module support. Published to npm as european-parliament-mcp-server.
📦 Protocol
Model Context Protocol (MCP) — Standard protocol for AI-assistentintegrations. Compatible with Claude, ChatGPT, and any MCP-compatible AI client.
🔒 Security
SLSA Nivå 3 — Supply chain security with build provenance, reproducible builds, and security scanning. OpenSSF Scorecard validated. Rate limiting and Zod input validation.
🛡️ Security & Quality
EU-parlamentet MCP Server demonstrates enterprise-grade security practices for AI integration middleware.
🚀 Getting Started
1️⃣ Install via npm
Install the package globally or as a project dependency. Requires Node.js 18+ and an MCP-compatible AI client.
📦 View on npm2️⃣ Configure AI Client
Add the MCP server to your AI client configuration (Claude Desktop, Continue, or any MCP-compatible client) to enable EU-parlamentsdata queries.
📖 Installation Guide3️⃣ Query Parliament Data
Use natural language to query MEP profiles, voting records, plenary sessions, and more through your AI assistant. Fork and extend for custom workflows.
📂 Repository💼 Use Cases
🔍 Political Research
Academic and journalistic research on MEP voting patterns, political group alignment, and legislative activity using AI-powered analysis.
📊 Transparency & Accountability
Track MEP performance, attendance, and voting consistency to hold representatives accountable to their constituents and campaign promises.
🏢 Policy Analysis
Monitor legislative developments, committee activity, and policy trends relevant to specific industries or interest areas.
🎓 Education
Teaching tool for European politics courses, demonstrating how open government data can be democratized through AI integration.
🌐 Part of the Hack23 Political Intelligence Ecosystem
EP MCP Server powers AI assistants with structured access to EU-parlamentet data for the broader political intelligence ecosystem.
All projects: Apache-2.0 licensed • OpenSSF Scorecard 7.0+ • SLSA Nivå 3 provenance • CodeQL clean
🎯 Ready to Explore EU-parlamentet Data?
Integrate AI-powered access to EU-parlamentet open datasets into your research, journalism, or policy analysis workflow.