Connect any Open Data to any LLM with Model Context Protocol.
https://github.com/OpenDataMCP/OpenDataMCPStop manually searching for CSV files and API endpoints when you need real data in your LLM conversations. OpenDataMCP connects public datasets directly to your AI workflows through the Model Context Protocol, turning Claude (and soon other LLMs) into a data-aware assistant that can answer questions with actual facts instead of hallucinations.
You're building with LLMs, but when you need current transit data, government statistics, or public datasets, you're stuck with:
Meanwhile, millions of open datasets sit unused because there's no easy way to pipe them into AI conversations.
OpenDataMCP solves this with a simple CLI that connects data sources to your LLM in seconds:
# Connect Swiss railway data to Claude
uvx odmcp setup ch_sbb
# Restart Claude, then ask: "Are there any delays on trains from Zurich to Geneva?"
# Claude now has live access to SBB disruption data
No API keys, no data wrangling, no context switching. Your LLM conversations become grounded in real-world data.
Instant Data Access: Transform "I don't have current data" into specific, factual responses. Ask about train delays, government statistics, or public health data and get current information.
Zero Infrastructure: No servers to manage, no databases to maintain. The CLI handles MCP server setup and configuration automatically.
Extensible by Design: Built on a provider system that makes adding new data sources straightforward. If there's an open dataset you need, you can contribute a provider module.
Community-Driven Growth: Instead of waiting for vendors to add data sources, the community builds and shares providers for datasets they actually use.
Transit and Urban Planning: Get real-time transit disruptions, route planning data, or city infrastructure information directly in your analysis conversations.
Government Data Analysis: Query census data, public spending records, or regulatory information without leaving your LLM interface.
Research and Journalism: Access public health statistics, environmental data, or economic indicators while writing or fact-checking.
Business Intelligence: Incorporate public market data, regulatory filings, or industry statistics into your strategic planning conversations.
The architecture is straightforward: OpenDataMCP provides MCP servers that act as bridges between specific data sources and your LLM client. Each provider module handles the API specifics for a particular dataset or organization.
# See available data sources
uvx odmcp list
# Get details about a specific provider
uvx odmcp info ch_sbb
# Connect it to Claude
uvx odmcp setup ch_sbb
The CLI configures Claude Desktop's MCP settings automatically. After restarting Claude, you'll see a hammer icon indicating the data source is connected.
OpenDataMCP uses a template-based approach for adding new providers. Each data source gets its own Python module following a standard pattern:
# Example provider structure
class DataProvider:
def __init__(self):
self.name = "provider_name"
self.description = "What this data source provides"
def get_tools(self):
# Define available queries
def get_resources(self):
# Define static data resources
The framework handles MCP protocol details, so you focus on data access logic. Whether you're connecting REST APIs, CSV endpoints, or database queries, the template provides the structure.
OpenDataMCP fits into existing development workflows without disruption:
The same providers work in both interactive Claude conversations and programmatic MCP implementations.
Right now, OpenDataMCP focuses on Claude Desktop integration, but support for other LLM clients is planned. The provider ecosystem is growing, with Switzerland's 12,000+ datasets as an early focus area.
The project prioritizes simplicity and community contribution over complex abstractions. This keeps the barrier low for adding new data sources while maintaining consistency across providers.
Install uv (the Python package manager OpenDataMCP uses):
# macOS
brew install uv
# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
Then connect your first data source:
# List available providers
uvx odmcp list
# Connect one to Claude
uvx odmcp setup [provider_name]
Restart Claude Desktop, and you're ready to ask data-grounded questions.
The real value emerges when you stop thinking about data sources as separate tools and start treating them as extensions of your LLM's knowledge base. OpenDataMCP makes that shift frictionless.