Dades Obertes Catalunya MCP for AI. Query Catalonia's public government data with natural language.
Works with every AI agent you already use
…and any MCP-compatible client








Connect to your AI in seconds.
Dades Obertes Catalunya lets your agent search and query thousands of public datasets from Catalonia's official open data portal. Use natural language to find relevant dataset IDs via `search_catalog`, then use those identifiers with `query_dataset` to filter, select specific columns, and extract structured information on topics like health, transport, or demographics.
What your AI can do
Query dataset
Runs advanced queries against a specific dataset using complex filters and selection parameters.
Search catalog
Searches the full open data catalog to find relevant datasets by keyword or category name.
Find the unique identifiers needed to query by searching the Dades Obertes Catalunya catalog using keywords or categories.
Filter and retrieve structured rows from any dataset by applying complex criteria, selecting only the columns you need, and sorting results.
Group raw data results to calculate or summarize metrics across entire datasets on demand.
Ask an AI about this
Waiting for input…
Dades Obertes Catalunya: 2 Tools for Data Discovery
These two tools let you first locate the right open data catalog, and then run complex, filtered queries against that dataset.
Make your AI actually useful.
Add this MCP to Claude, Cursor, or Windsurf and your AI stops guessing. It gets real tools to look things up, take action, and handle the stuff you keep doing by hand.
Start using Dades Obertes Catalunya on VinkiusQuery Dataset
Runs advanced queries against a specific dataset using complex filters and selection parameters.
Search Catalog
Searches the full open data catalog to find relevant datasets by keyword or category...
Security and governance baked right in.
Pick your AI client below to get set up. Just create a Vinkius account, subscribe, and you're instantly up and running. We handle the entire backend infrastructure, delivering out-of-the-box support for HTTPS Streamable, SSE, and OAuth2—zero messy routing required.
Choose How to Get Started
Build a custom MCP for your own tools, or connect a ready-made integration from our catalog.
Build Your Own
Turn any API into an MCP. Import a spec, define Agent Skills, or deploy with MCPFusion.
- Import from OpenAPI, Swagger, or YAML specs
- Create Agent Skills with progressive disclosure
- Deploy to edge with MCPFusion framework
- Built in DLP, auth, and compliance on every call
- Real time usage dashboard and cost metering
- Publish to catalog or keep private
Make Your AI Do More
Start with Dades Obertes Catalunya, then connect any of our 5,100+ other servers whenever your AI needs more. One click, no limits.
- Use this MCP plus 5,100+ others, all in one place
- Add new capabilities to your AI anytime you want
- Every connection is secured and compliant automatically
- Track usage and costs across all your servers
- Works with Claude, ChatGPT, Cursor, and more
- New servers added to the catalog every week
Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by Dades Obertes Catalunya. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.
VINKIUS INFRASTRUCTURE
Cloud Hosted
Managed infra
V8 Isolated
Sandboxed per request
Zero-Trust Proxy
No stored credentials
DLP Enforced
Policy on every call
GDPR Compliant
EU data residency
Token Compression
~60% cost reduction
Works with Claude, ChatGPT, Cursor, and more
The Model Context Protocol standardizes how applications expose capabilities to LLMs. Instead of operating in isolation, your AI gains direct access to external platforms, live data, and real-world actions through secure, standardized connections.
This connection provides 2 powerful capabilities that interface natively with Claude, ChatGPT, Cursor, and other compatible AI platforms. No middleware. No custom integration required.
Dealing with public government statistics used to be a huge headache.
If you're doing research, you know the drill: You have to jump between ten different municipal websites. You find one dataset, download it as a CSV, open it in Excel, and then try to copy relevant columns into your master spreadsheet. Then you repeat that process for the next department.
Now? You just ask your agent what data you need from the entire catalog. It finds the source ID, runs the complex query for you, and hands over a clean table of exactly what you asked for. No manual downloading, no formatting headaches.
Querying specific public data with `query_dataset`
Writing complex filters or joins used to require knowing the exact schema of a dataset and writing specialized query language. If you missed one column name, your whole analysis failed.
This MCP handles that complexity for you. You simply describe the relationship—'show me all records where location X is in province Y'—and the system executes the accurate database logic behind the scenes.
What your AI can actually do with this
Need to pull public statistics from the Government of Catalonia? This MCP lets your agent browse thousands of government datasets without you having to manually navigate dozens of websites. You start by searching the entire catalog using keywords—it'll point you toward the right dataset ID. Once you have that identifier, you can run complex queries against it in natural language.
For instance, you can ask the system to find all records about electric vehicle charging stations within a specific postal code and only show the location and power rating. The whole process happens through your AI client, which handles the underlying data structure. Vinkius makes connecting this open data platform easy, letting any MCP-compatible client run sophisticated queries that used to require an actual database expert.
You just talk to it.
019e3884-9543-70b9-9a8f-bb8998926b4e Here's how it actually works
The bottom line is: your AI client handles all the back-and-forth of data discovery and querying so you just get the final, filtered list.
First, subscribe to this MCP. You can optionally add a Socrata App Token if you plan on making heavy queries.
Next, tell your AI client what kind of data you need (e.g., 'datasets about hospital populations'). The agent uses the search_catalog tool to find relevant IDs.
Finally, give the system the target ID and the specific filters or metrics you want. The agent executes a query using query_dataset and returns the results.
Who is this actually for?
Data Analysts who spend too much time exporting CSVs. Researchers needing to cross-reference government statistics quickly. Developers building agents that need structured public data inputs.
Needs to pull combined, filtered stats (e.g., combining population density with transport routes) without manually downloading and cleaning multiple government spreadsheets.
Must quickly find and cross-reference public data on demographics or environmental changes across different municipal datasets for a paper.
Needs to test API interaction flows or build proof-of-concept code that requires structured, publicly available reference data.
What Changes When You Connect
Stop manually downloading spreadsheets. Use search_catalog to find the right dataset ID, then use query_dataset to pull exactly the columns and rows you need in one go.
Filter massive datasets instantly. Instead of writing complex SQL syntax, ask your agent to 'show me records where population is over 10k' using the query function.
Cross-reference multiple data points easily. You can find identifiers for transport routes and then immediately query them against demographic data in a single workflow.
Get structured results right away. The system handles grouping and limiting, giving you clean, actionable lists without needing to write any aggregation code yourself.
Saves research time. Instead of wasting hours navigating government portals, you let your agent do the searching and querying for you.
See it in action
Analyzing urban growth trends
A researcher asks their agent to find datasets related to 'urban planning' using search_catalog. They then use that ID with query_dataset to filter for records where the year is between 2010 and 2015, getting a clean list of growth metrics.
Checking infrastructure capacity
A developer needs data on electric vehicle charging stations. They use search_catalog to find the relevant dataset ID, then run a query to see all records where 'power_kw' is above 50 and group them by location.
Comparing public health metrics
A data analyst wants to compare hospital capacity across regions. They use search_catalog for 'health centers,' get the ID, and then query it using query_dataset with complex filtering on location and date ranges.
Finding demographic information
A student needs to know population trends. They ask their agent to search the catalog for 'demographics,' get the ID, and then query it to show them the top 5 records sorted by the largest population count.
The honest tradeoffs
Trying to write custom API calls
The user manually tries to build a complex URL with filters and limits based on documentation, which is prone to syntax errors.
Let your agent handle it. First, use search_catalog to confirm the correct dataset ID. Then, tell your AI client what you want (e.g., 'show me all records where X is true')—the agent uses query_dataset correctly.
Forgetting to narrow down the scope
The user asks for 'all data' without specifying a date range or column, resulting in an overwhelming dump of records.
Always be specific. Tell your agent exactly what you need: Use query_dataset and specify $where: "date >= 2020" to limit the scope.
Assuming data is available in a single source
The user thinks all transport data is in one place, leading to incomplete research.
Use search_catalog first. It helps you find multiple related datasets (e.g., finding separate catalogs for 'trains' and 'buses') that you can then query separately.
When It Fits, When It Doesn't
Use this MCP if your data is structured, public government information—things like population counts, facility locations, or transport schedules. It’s built for filtering and searching known records.
Don't use it if you need real-time streaming feeds (like live sensor data) or if the data is proprietary and locked behind a private internal API key. For those cases, look for specialized connectors designed for continuous streams or enterprise databases.
Questions you might have
How do I find the unique identifier for a specific dataset? +
Use the search_catalog tool with a descriptive query. The response will include the 4x4 alphanumeric ID (e.g., 'abcd-1234') which you can then use with the query_dataset tool.
Can I filter data by specific values like a city or a date range? +
Yes! When using query_dataset, use the $where parameter to apply SoQL filters. For example, $where: "poblacio > 5000" or $where: "comarca = 'Barcelonès'".
Is a Socrata App Token mandatory to use this server? +
No, it is optional. However, providing a DADES_APP_TOKEN allows for higher rate limits and prevents throttling during intensive data exploration.
When I use `query_dataset`, how do I handle extremely large result sets? +
Use the $limit and $offset parameters. You can request results in controlled batches to manage memory and ensure you process every record systematically without overwhelming your client.
What kind of metadata does `search_catalog` return so I know if a dataset is right for me? +
search_catalog provides the dataset's official identifier, its associated categories, and a brief description. This lets you verify the data source before attempting any complex queries.
How do I perform a general keyword search across all columns using `query_dataset`? +
You need to use the $q: parameter instead of filtering with $where:. This allows you to run full-text searches, finding records based on keywords across multiple fields.
If my AI client fails when using `query_dataset`, what is the first thing I should check? +
Check your usage against the API's standard rate limits. While basic access works, applying a Socrata App Token dramatically increases throughput and prevents connection failures.
Before running `query_dataset`, how do I use `search_catalog` to narrow down my research area? +
When using search_catalog, specify keywords or categories in your prompt. This narrows the catalog from thousands of records, allowing you to select only the precise dataset ID you need.
We've already built the connector for Dades Obertes Catalunya. Just plug in your AI agents and start using Vinkius.
No hosting. No infrastructure. No complex setup.
All 2 tools are live and waiting.
You're up and running in seconds.
Vinkius gives your AI agents access to the full catalog of app connectors, all fully managed, secure, and enterprise-ready. One subscription, every tool you need.
Built, hosted, and secured by Vinkius. You just connect and go.