πŸ‡ͺπŸ‡Ί

European Parliament MCP Server Features Latest

Full Model Context Protocol implementation for AI-powered access to European Parliament open datasets. TypeScript, SLSA Level 3, ISMS compliant.

GitHub Release License OpenSSF Scorecard SLSA 3 Verify & Release npm version

Platform Overview

The European Parliament MCP Server is an open-source TypeScript/Node.js implementation of the Model Context Protocol (MCP) designed to give AI assistants structured, programmatic access to European Parliament open datasets. It connects to the official European Parliament Open Data API (data.europarl.europa.eu) and exposes 9 purpose-built tools covering the full breadth of parliamentary activity.

The server achieves SLSA Level 3 supply chain security, maintains 80%+ test coverage with 268 unit tests and 23 E2E tests, and is fully compliant with ISO 27001:2022, NIST CSF 2.0, CIS Controls v8.1, and GDPR. Install via npm and start querying EU Parliament data through your AI assistant.

Key Features

πŸ”Œ Full MCP Protocol Implementation

Complete Model Context Protocol implementation with 9 specialized tools, resource definitions, and tool schemas compatible with all MCP-enabled AI clients.

πŸ‡ͺπŸ‡Ί EU Parliament Data Access

Direct integration with the official European Parliament Open Data API for MEPs, sessions, voting, committees, documents, and questions.

πŸ“˜ TypeScript Type Safety

Fully typed TypeScript codebase with strict mode enabled. All API contracts validated with Zod schemas for runtime type safety.

πŸ›‘οΈ SLSA Level 3 Security

Build provenance attestations, OpenSSF Scorecard validation, dependency security auditing, and automated vulnerability scanning.

πŸ§ͺ High Test Coverage

268 unit tests and 23 E2E integration tests maintaining 80%+ code coverage with automated CI quality gates.

πŸ”’ Security Controls

Rate limiting, security headers, Zod input validation, audit logging, and dependency pinning for enterprise-grade security posture.

πŸ“¦ npm Distribution

Published to npm as european-parliament-mcp-server for simple installation and integration into existing AI workflows.

πŸ“‹ ISMS Documentation

Complete ISMS documentation including threat model, security architecture, BCP, CRA assessment, and financial security plan.

πŸ”§ Extensible Architecture

Modular TypeScript architecture enabling easy addition of new EU Parliament data endpoints and custom tool implementations.

MCP Tools

The server implements 9 specialized MCP tools providing comprehensive access to European Parliament data:

πŸ‘€ get_meps

Retrieve Member of European Parliament (MEP) profiles with optional filtering by country, political group, and committee. Returns full contact information, group affiliations, and committee memberships.

πŸ“… get_plenary_sessions

Access plenary session records and agendas. Filter by date range to retrieve historical and upcoming session information including agenda items and outcomes.

πŸ—³οΈ get_voting_records

Query detailed voting records for any legislative vote. Retrieve individual MEP votes, vote totals by political group, and legislative context for accountability research.

πŸ” search_documents

Full-text search across the European Parliament document repository including reports, opinions, resolutions, and legislative texts. Filter by type, date, and committee origin.

πŸ›οΈ get_committee_info

Access detailed committee information including full membership lists, mandate descriptions, rapporteur assignments, and recent committee activities and opinions.

❓ get_parliamentary_questions

Retrieve written and oral parliamentary questions submitted by MEPs along with official responses from the European Commission and Council of the EU.

πŸ“Š analyze_voting_patterns

Analyze voting patterns across political groups, countries, and legislative topics. Identify cohesion rates, cross-group alliances, and MEP voting consistency over time.

πŸ“‹ track_legislation

Track legislative procedures from initial proposal through committee review, amendments, readings, and final vote. Monitor progress of specific dossiers and identify key decision points.

πŸ“„ generate_report

Generate structured AI-ready reports on parliamentary activity, MEP profiles, voting summaries, and political group analyses formatted for consumption by AI assistants and humans alike.

Security Features

The European Parliament MCP Server implements enterprise-grade security controls aligned with ISMS best practices:

🚦 Rate Limiting

  • Configurable request rate limits per client
  • Sliding window rate limiting algorithm
  • Graceful throttling with informative error messages
  • Protection against API quota exhaustion

βœ… Zod Validation

  • Schema validation for all MCP tool inputs
  • Type-safe API response parsing
  • Strict mode TypeScript throughout
  • Runtime type coercion and sanitization

πŸ”’ Security Headers

  • Content Security Policy (CSP)
  • HSTS for transport security
  • X-Frame-Options and X-Content-Type-Options
  • Dependency pinning and supply chain integrity

πŸ“‹ Audit Logging

  • Structured JSON audit logs for all tool invocations
  • Request/response logging for debugging
  • Error tracking and alerting
  • GDPR-compliant data handling in logs

ISMS Compliance

The European Parliament MCP Server is fully aligned with the Hack23 ISMS framework and international security standards:

🌍 ISO 27001:2022

Information Security Management System compliance with documented security controls, risk assessments, and continuous improvement processes.

πŸ‡ΊπŸ‡Έ NIST CSF 2.0

Cybersecurity Framework alignment across all six functions: Govern, Identify, Protect, Detect, Respond, and Recover.

πŸ”’ CIS Controls v8.1

Implementation of prioritized CIS security controls for hardened configuration and continuous monitoring.

πŸ‡ͺπŸ‡Ί GDPR

General Data Protection Regulation compliance for processing publicly available European Parliament data with privacy-by-design principles.

Data Model Overview

The server provides structured access to the following European Parliament data domains:

MEP Data

Comprehensive MEP information enabling political analysis and accountability research:

  • Profile: Name, nationality, date of birth, political biography
  • Affiliation: Political group, national party, constituency
  • Committees: Full and substitute member positions
  • Contact: Official EU Parliament contact information

Plenary & Voting Data

Complete plenary session and voting record data for transparency and accountability:

  • Sessions: Agenda, dates, location (Strasbourg/Brussels)
  • Votes: Individual MEP votes, for/against/abstain tallies
  • Context: Legislative dossier, committee recommendation, debate references

Documents & Questions

Access to the full parliamentary document repository and question archive:

  • Documents: Reports, opinions, resolutions, amendments
  • Questions: Written questions, oral questions, priority questions
  • Responses: Official Commission and Council responses