Registry / llm-agents / european-parliament-mcp-server

european-parliament-mcp-server

JSON →
library1.2.9jsnpmunverified

The `european-parliament-mcp-server` package provides a Model Context Protocol (MCP) server specifically designed to offer AI assistants structured, type-safe access to European Parliament open data. Currently at version 1.2.9, this server is built on TypeScript and runs on Node.js versions 25.0.0 and higher. It integrates parliamentary datasets covering MEPs, plenary sessions, committees, and legislative documents into AI workflows, acting as a crucial component for political intelligence and OSINT applications. The project maintains a continuous release cadence, often issuing several minor updates monthly, focusing on new MCP tools, specific European Parliament features, infrastructure enhancements, and dependency management. Key differentiators include its specialized focus on EU parliamentary data, a robust TypeScript implementation, and advanced analytical capabilities such as MEP influence scoring, coalition cohesion analysis, party defection detection, and legislative scoring.

llm-agents
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

The library primarily targets ESM. CommonJS `require` usage should explicitly access named exports.

import { EuropeanParliamentMCPServer } from 'european-parliament-mcp-server';

Import types using `import type` for clarity and to avoid bundling issues in some build environments. This type defines configuration options for the server.

import type { ServerConfig } from 'european-parliament-mcp-server';

Specific analytical tools might be available as named exports from sub-paths like '/tools', providing direct access to data processing functionalities.

import { getMepLegislativeScores } from 'european-parliament-mcp-server/tools';

This quickstart demonstrates how to initialize and start the European Parliament MCP Server using a basic configuration, including environment variables for port and API keys, and logs its successful startup. It highlights minimal setup for server operation.

import { EuropeanParliamentMCPServer, type ServerConfig } from 'european-parliament-mcp-server'; async function startMcpServer() { const config: ServerConfig = { port: parseInt(process.env.PORT ?? '8080', 10), logLevel: process.env.NODE_ENV === 'production' ? 'info' : 'debug', // The European Parliament API may require an API key for certain endpoints or higher rate limits. // Configure necessary external API keys securely via environment variables. apiKeys: { europeanParliament: process.env.EP_API_KEY ?? '' // Placeholder for actual API key }, // Additional configuration options may be required based on deployment and features activated // e.g., database connection strings, caching settings, etc. // This example assumes minimal necessary configuration to get the server running. }; try { const server = new EuropeanParliamentMCPServer(config); await server.start(); console.log(`European Parliament MCP Server running on port ${config.port}`); console.log('Access the server documentation at /docs once it is running.'); } catch (error) { console.error('Failed to start European Parliament MCP Server:', error); process.exit(1); } } startMcpServer();
Debug
Known footguns
breakingThe `cohesionScore` field in coalition pair analysis was relabeled to `sizeSimilarityScore`. Consumers using the old field name will encounter undefined values or errors.
breakingUnsupported European Parliament API parameters (specifically 'year' and 'date') have been purged from schemas, clients, and tools. Using these parameters in requests will no longer be supported and may result in errors or incorrect query behavior.
gotchaThis package requires Node.js version 25.0.0 or higher. Running it on older Node.js versions will likely lead to compatibility issues, 'engine' errors, or unexpected crashes.
gotchaThe `get_adopted_texts` function in versions prior to 1.2.9 might have returned incomplete or inappropriate responses for documents with pending content, leading to data quality issues.
Upgrade
Version history

Breaking-change detection hasn't run for this library yet.

Audit
Security & dependencies

CVE tracking and dependency tree are planned for a later release.

Agent activity
18 hits · last 30 days
bytedance
5
gptbot
4
ahrefsbot
4
script
1
bingbot
1
Resources