

โ ๏ธ Project Status: This project is currently in development and requires additional validation and testing. While the core functionality is implemented, it has not been thoroughly tested in production environments. Please use with caution and report any issues you encounter.
๐ Quick Start
Get started with the OParl MCP Server in minutes:
# Install the package
pip install oparl-mcp-server
# Run the server
python -m oparl_mcp.server
โจ Features
๐ MCP Integration
Full Model Context Protocol compliance
๐๏ธ OParl Support
Access to all OParl 1.1 object types
๐ Multi-Implementation
Works with various OParl implementations
๐ Authentication
Support for API key authentication
๐ Rich Data
Parliamentary meetings, documents, organizations, and more
๐ Search
Advanced search and filtering capabilities
๐ณ Docker Ready
Containerized deployment options
๐งช Testing
Comprehensive test suite included
๐ Documentation
๐๏ธ Supported OParl Objects
- System - API system information
- Body - Parliamentary bodies and institutions
- Organization - Political parties and groups
- Person - Representatives and officials
- Meeting - Parliamentary sessions and events
- AgendaItem - Meeting agenda items
- Paper - Documents and papers
- Consultation - Public consultations
- File - Attachments and media
- Location - Meeting venues and addresses
๐ OParl Implementations
The server works with various OParl implementations:
- Generic OParl API -
https://api.oparl.org
- Munich City Council -
https://oparl.muenchen.de
- Cologne City Council -
https://oparl.koeln.de
- Hamburg Parliament -
https://oparl.hamburg.de
๐ ๏ธ Installation
From PyPI
pip install oparl-mcp-server
From Source
git clone https://github.com/jtwolfe/oparl-mcp-server.git
cd oparl-mcp-server
pip install -e .
Docker
docker run -p 8000:8000 jtwolfe/oparl-mcp-server
๐ Usage
Basic Configuration
from oparl_mcp import OParlMCPServer, OParlConfig
# Create configuration
config = OParlConfig(
base_url="https://api.oparl.org",
api_key="your-api-key", # Optional
timeout=30.0
)
# Create and run server
server = OParlMCPServer(config)
server.run()
Environment Variables
export OPARL_BASE_URL="https://api.oparl.org"
export OPARL_API_KEY="your-api-key"
export OPARL_TIMEOUT="30.0"
export OPARL_LOG_LEVEL="INFO"
๐ค Contributing
We welcome contributions! Please see our Contributing Guide for details.
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
- OParl for the parliamentary data standard
- FastMCP for the MCP framework
- The open-source community for inspiration and support
Ready to get started? Check out our Quick Start Guide or explore the API Reference.