Skip to main content
Glama

Catalunya 2022

Server Details

Cerca de text complet al pla Catalunya 2022 - RESET: 3 àmbits, 12 objectius, 91 accions. CA/EN/ES.

Ownership verified
Status
Healthy
Uptime
100.0% over 69 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
Catalunya-2022/mcp
GitHub Stars
0
Server Listing
Catalunya 2022 MCP Server

TDQS

A4.4/5.0

Scored across 4 tools

Disambiguation4/5

Each tool has a distinct primary function: metadata for structure, get_section for full text, list_proposals for filtered action lists, and search_document for keyword search. The main overlap is that both get_document_metadata and list_proposals expose action slugs, but descriptions clarify their different purposes (hierarchy vs. flat filtered list).

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern: get_document_metadata, get_section, list_proposals, search_document. No mixing of conventions or vague verbs.

Tool Count5/5

Four tools is well-scoped for a static policy document server. Each tool covers a necessary operation: structure discovery, content retrieval, proposal listing, and search, with no redundant or missing functionality.

Completeness5/5

The read-only document domain is fully covered: metadata provides the hierarchy and citation, get_section retrieves full text, list_proposals gives filtered access to all actions, and search_document handles keyword lookup. No CRUD operations are needed or expected for this static resource.

Available Tools

4 tools
get_document_metadataDocument structure and citationA
Read-onlyIdempotent
Inspect

Get the complete structure of the policy document "Catalunya 2022 - RESET: Crida per reactivar el país": 3 spheres, 12 goals, 91 actions written by the Grup de Treball Catalunya 2022 (30 civil-society experts). Returns the hierarchy with canonical slugs for navigation via get_section, plus the formal citation with DOI.

NameRequiredDescriptionDefault
localeNoContent language. Defaults to 'ca' (Catalan), the original language of the document. (ca=Catalan, en=English, es=Spanish)ca

Output Schema

NameRequiredDescription
dateYes
titleYes
citationYes
hierarchyYes
languagesYes
structureYes
staticPagesYes
contributorsYes

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the description's added value is the affordance that returned slugs are canonical and feed get_section, plus the DOI citation. It does not discuss caching, document versioning, or locale effects on output, but for a static metadata read that is minor.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the return payload and ending on the navigation/citation purpose; nothing is redundant. The enumerated counts and author detail are informative rather than filler, though the sentence runs long.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With a rich output schema, complete annotations, and one optional parameter, the description only needs to frame the tool's role. It does that well as the document entry point, though it never addresses the locale parameter or what happens if a non-original language is requested.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the single locale parameter is fully documented in the schema with its enum and default, so baseline 3 applies. The description mentions language only indirectly via the Catalan document title and adds no syntax or fallback behavior beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb (Get) and resource (complete structure of the named policy document), and quantifies the payload (3 spheres, 12 goals, 91 actions). It explicitly distinguishes itself from the sibling get_section by positioning itself as the source of canonical slugs used for navigation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'canonical slugs for navigation via get_section' establishes this tool as the entry point before drilling down, which is clear contextual guidance. However, it never states when NOT to use it or how it relates to search_document and list_proposals, so exclusion guidance is absent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sectionRead a sectionA
Read-onlyIdempotent
Inspect

Retrieve the full text of any section of the Catalunya 2022 document by its canonical slug. Slugs follow the pattern: 'sphere-1', 'sphere-1/goal-2', 'sphere-1/goal-2/action-2-1'. Static pages: 'introduction', 'executive-summary', 'train-of-prosperity'. Use get_document_metadata to discover all available slugs.

NameRequiredDescriptionDefault
slugYesCanonical section slug
localeNoContent language. Defaults to 'ca' (Catalan), the original language of the document. (ca=Catalan, en=English, es=Spanish)ca

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and idempotentHint=true, so the agent knows it is a safe read. The description adds valuable context by explaining the slug pattern and static pages, which helps the agent understand the tool's input constraints. It does not describe error handling, but the annotation coverage lowers the burden, and the description contributes meaningful beyond-annotation information.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is four sentences, each earning its place: purpose, slug pattern, static pages, and a pointer to metadata. It is front-loaded with the primary action and contains no filler or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With two parameters, no output schema, and a simple read operation, the description covers the essential aspects: what it retrieves, how to format the slug, and where to get valid slugs. It could optionally mention the return format (e.g., plain text vs. markdown), but given the tool's simplicity and annotation coverage, it is sufficiently complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. Both parameters (slug and locale) are fully described in the schema, including pattern, enum, and default. The description provides concrete slug examples, but these are illustrative rather than adding new semantic meaning not already in the schema. Therefore, it meets the baseline but does not exceed it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description starts with a specific verb and resource: 'Retrieve the full text of any section of the Catalunya 2022 document by its canonical slug.' It clearly differentiates from siblings by focusing on full-text retrieval by slug, and it mentions the sibling get_document_metadata for discovering slugs, setting it apart.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly directs users to 'Use get_document_metadata to discover all available slugs,' which serves as a when-to-use pointer for a sibling tool. While it does not directly compare with search_document or list_proposals, the tool's narrow purpose makes usage clear. There is no misleading guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_proposalsList action proposalsA
Read-onlyIdempotent
Inspect

List all 91 action proposals from the Catalunya 2022 document, optionally filtered by sphere (1-3) or goal (1-12). Returns actionId, goalId, sphereId, title, slug, and url. Use get_section with the returned slug to read full action content.

NameRequiredDescriptionDefault
goalIdNoFilter by goal (1-12)
localeNoContent language. Defaults to 'ca' (Catalan), the original language of the document. (ca=Catalan, en=English, es=Spanish)ca
sphereIdNoFilter by sphere (1-3)

Output Schema

NameRequiredDescription
countYes
proposalsYes

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so no contradiction. The description adds value by stating it returns a fixed set (all 91 proposals) and lists returned fields, which is consistent with annotations. It doesn't mention pagination or rate limits, but given the limited scope and annotations, the description is sufficiently transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences: the first states what the tool does with scope and optional filters, the second explains outputs and next steps. Every sentence is earned and front-loaded with key information. No redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists to document return values, the description covers the essential: scope, filters, returned fields, and usage pattern with sibling tool. The low parameter count (3), no required parameters, and rich annotations make this complete for an agent to select and invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds value by linking the parameters to the specific document context ('Catalunya 2022 document') and explaining the purpose of the returned slug for use with get_section. The locale parameter is well-described in the schema with clear enum values, so the description's additional context on the default is helpful but not essential.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists all 91 action proposals from a specific document (Catalunya 2022), with optional filtering by sphere or goal. The verb 'list' and resource 'action proposals' are specific, and the description distinguishes it from siblings like get_section (for reading full content) and search_document (for searching).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly guides when to use this tool (to list proposals) and what to do next ('Use get_section with the returned slug to read full action content'), effectively differentiating from the sibling get_section tool. It also specifies the optional filters sphereId and goalId, providing clear context for usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_documentSearch the documentA
Read-onlyIdempotent
Inspect

Search the Catalunya 2022 - RESET policy document by keyword. Returns up to 10 results with canonical slugs (for follow-up with get_section) and text snippets; "total" carries the full match count. Terms are matched independently with coverage-based ranking; quoted phrases ("energia sostenible") must match exactly. Handles Catalan/Spanish diacritics automatically (e.g., 'educacio' matches 'educació').

NameRequiredDescriptionDefault
queryYesSearch query (e.g., 'housing', 'educacio', 'digital transformation'). Use terms in the target locale for best results.
scopeNoFilter by section type: 'action' (91 proposals), 'goal' (12 overviews), 'sphere' (3 overviews), or 'static' (introduction, executive summary, train of prosperity)
localeNoContent language. Defaults to 'ca' (Catalan), the original language of the document. (ca=Catalan, en=English, es=Spanish)ca

Output Schema

NameRequiredDescription
totalYesTotal matches before the 10-result cap
messageNoGuidance when no results were found
resultsYes

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and destructiveHint as false, so the description correctly aligns with a safe, read-only search. Beyond annotations, the description adds valuable behavioral details: returns up to 10 results, independent term matching with coverage-based ranking, exact phrase matching for quotes, and automatic diacritic handling. This adds significant depth beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two well-structured sentences, front-loads the core purpose, and each sentence adds critical information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema (not shown to us but present) and detailed annotations, the description covers all needed aspects: search behavior, limits, follow-up integration, language nuances, and scope definitions. No gaps are apparent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds meaning beyond schema: it clarifies the scope values (e.g., '90 proposals' for 'action') and provides usage tips for locale (original language is Catalan). The description also explains the query behavior (independent term matching, phrase quotes) which is not in the schema. This adds enough value to bring the score to 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('search'), resource ('Catalunya 2022 - RESET policy document'), and method ('by keyword'). It distinguishes this tool from siblings by mentioning follow-up with 'get_section' and return of 'canonical slugs', which is unique among the listed siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states when to use this tool (to search the document by keyword) and what to use for follow-up ('get_section' is named). It also provides guidance on how to use it effectively, including tips about quoted phrases for exact matches and diacritic handling. It does not mention alternatives like 'list_proposals' but clearly positions this for searching rather than listing all content.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool update
    • Changedsearch_document5 fields changed
      • addedOutput schema / properties / results / items / properties / actionId
        Added value: +{
        +  "description": "Present on action results",
        +  "type": "string"
        +}
      • addedOutput schema / properties / results / items / properties / goalId
        Added value: +{
        +  "description": "Present on goal and action results",
        +  "maximum": 9007199254740991,
        +  "minimum": -9007199254740991,
        +  "type": "integer"
        +}
      • addedOutput schema / properties / results / items / properties / sphereId
        Added value: +{
        +  "description": "Present on sphere, goal, and action results",
        +  "maximum": 9007199254740991,
        +  "minimum": -9007199254740991,
        +  "type": "integer"
        +}
      • addedOutput schema / properties / total
        Added value: +{
        +  "description": "Total matches before the 10-result cap",
        +  "maximum": 9007199254740991,
        +  "minimum": -9007199254740991,
        +  "type": "integer"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "results"
        -]New value: +[
        +  "results",
        +  "total"
        +]
  2. 4 tool updates
    • Changedget_document_metadata3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / additionalProperties
        Removed value: -false
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "citation": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "author": {
        +          "type": "string"
        +        },
        +        "doi": {
        +          "type": "string"
        +        },
        +        "doiUrl": {
        +          "type": "string"
        +        },
        +        "title": {
        +          "type": "string"
        +        },
        +        "year": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "title",
        +        "author",
        +        "year",
        +        "doi",
        +        "doiUrl"
        +      ],
        +      "type": "object"
        +    },
        +    "contributors": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "count": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        },
        +        "members": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "name": {
        +                "type": "string"
        +              },
        +              "role": {
        +                "type": "string"
        +              },
        +              "slug": {
        +                "type": "string"
        +              },
        +              "url": {
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "name",
        +              "slug",
        +              "role",
        +              "url"
        +            ],
        +            "type": "object"
        +          },
        +          "type": "array"
        +        },
        +        "names": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "count",
        +        "names",
        +        "members"
        +      ],
        +      "type": "object"
        +    },
        +    "date": {
        +      "type": "string"
        +    },
        +    "hierarchy": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "goals": {
        +            "items": {
        +              "additionalProperties": false,
        +              "properties": {
        +                "actionCount": {
        +                  "maximum": 9007199254740991,
        +                  "minimum": -9007199254740991,
        +                  "type": "integer"
        +                },
        +                "actions": {
        +                  "items": {
        +                    "additionalProperties": false,
        +                    "properties": {
        +                      "id": {
        +                        "type": "string"
        +                      },
        +                      "slug": {
        +                        "type": "string"
        +                      },
        +                      "title": {
        +                        "type": "string"
        +                      }
        +                    },
        +                    "required": [
        +                      "title",
        +                      "slug",
        +                      "id"
        +                    ],
        +                    "type": "object"
        +                  },
        +                  "type": "array"
        +                },
        +                "id": {
        +                  "maximum": 9007199254740991,
        +                  "minimum": -9007199254740991,
        +                  "type": "integer"
        +                },
        +                "slug": {
        +                  "type": "string"
        +                },
        +                "title": {
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "title",
        +                "slug",
        +                "id",
        +                "actionCount",
        +                "actions"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "id": {
        +            "maximum": 9007199254740991,
        +            "minimum": -9007199254740991,
        +            "type": "integer"
        +          },
        +          "slug": {
        +            "type": "string"
        +          },
        +          "title": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "title",
        +          "slug",
        +          "id",
        +          "goals"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "languages": {
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "staticPages": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "slug": {
        +            "type": "string"
        +          },
        +          "title": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "title",
        +          "slug"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "structure": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "actions": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        },
        +        "contributors": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        },
        +        "goals": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        },
        +        "spheres": {
        +          "maximum": 9007199254740991,
        +          "minimum": -9007199254740991,
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "spheres",
        +        "goals",
        +        "actions",
        +        "contributors"
        +      ],
        +      "type": "object"
        +    },
        +    "title": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "title",
        +    "date",
        +    "languages",
        +    "structure",
        +    "citation",
        +    "hierarchy",
        +    "staticPages",
        +    "contributors"
        +  ],
        +  "type": "object"
        +}
    • Changedget_section2 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / additionalProperties
        Removed value: -false
    • Changedlist_proposals3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / additionalProperties
        Removed value: -false
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "count": {
        +      "maximum": 9007199254740991,
        +      "minimum": -9007199254740991,
        +      "type": "integer"
        +    },
        +    "proposals": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "actionId": {
        +            "type": "string"
        +          },
        +          "goalId": {
        +            "maximum": 9007199254740991,
        +            "minimum": -9007199254740991,
        +            "type": "integer"
        +          },
        +          "slug": {
        +            "type": "string"
        +          },
        +          "sphereId": {
        +            "maximum": 9007199254740991,
        +            "minimum": -9007199254740991,
        +            "type": "integer"
        +          },
        +          "title": {
        +            "type": "string"
        +          },
        +          "url": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "actionId",
        +          "goalId",
        +          "sphereId",
        +          "slug",
        +          "title",
        +          "url"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "proposals",
        +    "count"
        +  ],
        +  "type": "object"
        +}
    • Changedsearch_document3 fields changed
      • changedInput schema / $schema
        Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
      • removedInput schema / additionalProperties
        Removed value: -false
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "https://json-schema.org/draft/2020-12/schema",
        +  "additionalProperties": false,
        +  "properties": {
        +    "message": {
        +      "description": "Guidance when no results were found",
        +      "type": "string"
        +    },
        +    "results": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "slug": {
        +            "description": "Canonical section slug, usable with get_section",
        +            "type": "string"
        +          },
        +          "snippet": {
        +            "description": "Content snippet with **highlighted** matches",
        +            "type": "string"
        +          },
        +          "title": {
        +            "type": "string"
        +          },
        +          "type": {
        +            "enum": [
        +              "sphere",
        +              "goal",
        +              "action",
        +              "static"
        +            ],
        +            "type": "string"
        +          },
        +          "url": {
        +            "description": "Canonical page URL on 2022.cat in the requested locale",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "slug",
        +          "type",
        +          "title",
        +          "snippet",
        +          "url"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "results"
        +  ],
        +  "type": "object"
        +}
  3. 4 tool updates
    • First observedget_document_metadata
    • First observedget_section
    • First observedlist_proposals
    • First observedsearch_document

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Connects LLMs to over 2,850 datasets from 13 Catalan and Spanish open data portals, enabling natural language search and real-time queries of public data.
    8
    22 npm
    22
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables any MCP client to discover and query official Catalonia statistics through read-only tools and resources, including statistic catalogues, table metadata, filtered JSON-stat data, territorial breakdowns, and Markdown tables with source attribution.
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    Provides access to Catalonia's statistical data via the IDESCAT Tables API v2. It enables users to navigate catalogs, inspect metadata, and query data with territorial filters and resolved labels.
    5
    1
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.