Querido Diário (municipal)
Server Details
Searches MUNICIPAL official gazettes from thousands of city halls (Querido Diário / Open Knowledge B
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- mcp-dir/querido_diario-mcp
- GitHub Stars
- 0
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.3/5 across 7 of 7 tools scored. Lowest: 3.7/5.
Several tools overlap: connect, toolkit_info, and authenticate all deal with connection/account state, and report_bug duplicates a sub-operation inside marketplace. Only querido_diario_buscar has a clearly distinct purpose, so an agent would have to rely heavily on long descriptions to avoid picking the wrong utility.
Naming mixes generic English platform verbs (authenticate, connect, show_version, report_bug) with a Portuguese domain-specific name (querido_diario_buscar) and a noun-style monolith (marketplace). There is no consistent verb_noun convention across the tool surface.
Seven tools is within a normal range and not bloated by itself. However, most tools are platform infrastructure utilities rather than domain tools, so the collection feels padded around the single actual Querido Diário capability.
For a server about searching municipal official gazettes, the only domain operation is querido_diario_buscar with no obvious support for filtering by municipality, date, or state, and no fetch/full-text/pagination operations. The surrounding platform tools cover connectivity and administrative state but do not fill the domain-level gaps.
Available Tools
7 toolsauthenticateAIdempotentInspect
MCP.AI for IDE agents (Cursor, etc.): log in in the browser, copy the access token. Best: add it to this server's config as a header Authorization: Bearer <token> for a permanent, non-expiring connection. Or paste it here for a session-only login: call with { token: "" } after the user pastes, or with no args to get the link.
| Name | Required | Description | Default |
|---|---|---|---|
| token | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotent and non-destructive hints; the description adds valuable behavioral context: token expiry semantics ('permanent, non-expiring' vs 'session-only'), user involvement (browser login and paste), and the no-args link behavior. It does not describe return values or failure modes, but this is not critical for an auth tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded, covering all necessary instructions in two sentences with no filler. It is slightly dense due to long clauses and nested alternatives, but every part earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter auth tool with no output schema, the description is substantially complete: it explains the browser step, the permanent vs session options, and the no-args link behavior. A minor gap is the lack of any indication of what a successful or failed token call returns, but this is not essential for invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one optional token string with 0% description coverage, so the description carries the burden. It explains that token is a JWT pasted from the browser, how to invoke with it, and what happens when omitted. This adds strong meaning beyond the raw schema, though it omits token validation or format details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states this tool authenticates MCP.AI for IDE agents, describing the browser login, token capture, and two invocation modes. It scopes the tool away from generic siblings like 'connect' by specifying the exact auth flow and resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly distinguishes between a permanent config-header approach and a session-only pasted-token approach, with clear instructions to call with no args to retrieve the link. It does not explicitly name sibling alternatives or state when not to use the tool, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
connectARead-onlyIdempotentInspect
Returns connection status and URLs. When all providers are connected, returns authenticated:true and empty pending[]. When credentials are missing, returns connect_url for the toolkit and per-install URLs.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint. Description adds valuable behavioral context by specifying return states (authenticated:true/pending[] vs connect_url), going beyond the annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load the primary purpose and then detail conditional outcomes. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity (no params, no output schema) and rich annotations covering safety, the description is complete for a status-check tool. It explains return states adequately, though it doesn't elaborate on URL specifics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so baseline is 4 per guidelines. Description adds zero parameter information, which is appropriate since there are none to explain.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it returns connection status and URLs, with specific behavior described (authenticated:true when connected, connect_url when missing). Distinguishes from siblings like authenticate by focusing on status retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage for checking connection status but provides no explicit when-to-use or when-not-to-use guidance, nor mentions alternatives like authenticate for establishing connections.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
marketplaceAInspect
The official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them. Covers capability requests like "find an MCP that does X", "consulta um CPF", "is there a tool for Y". Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile (every tool with its id + params, pricing, auth) so you pick the right tool_id → invoke RUNS that tool. KEY: invoke works even when the MCP is NOT installed — it runs the tool pontualmente (one-off), without adding the MCP to the toolkit and without bloating the tool list. If the MCP needs a credential/login, invoke returns a connect link; if it is paid and the wallet is empty, invoke returns a checkout/top-up link (the user opens it, then you retry). Use install only to make an MCP PERMANENT in the active toolkit (its tools then show up natively in future sessions); prefer invoke for a single/occasional use. list_tools lists what is callable right now. subscribe/cancel handle per-MCP billing; report_bug sends feedback; request_mcp asks us to build a NEW MCP when nothing fits. Search/describe flag installed_in_toolkit vs installed_in_workspace. Writes (install/uninstall/subscribe/cancel and the one-off install behind invoke) require workspace owner/admin. It also carries the mcp.ai PROMPT LIBRARY, which is about ready-made prompt TEXT rather than MCPs: search_prompts finds one, get_prompt returns its full text with {{variables}} filled, and publish_prompt saves a prompt and returns a shareable mcp.ai/p/ link that opens without login.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | No | ||
| action | No | search | |
| mcp_id | No | ||
| message | No | ||
| tool_id | No | ||
| arguments | No | {} | |
| immediate | No | ||
| tier_slug | No | ||
| prompt_body | No | ||
| prompt_slug | No | ||
| prompt_tool | No | ||
| prompt_vars | No | {} | |
| conversation | No | [] | |
| prompt_title | No | ||
| request_name | No | ||
| cancel_reason | No | ||
| cancel_comment | No | ||
| prompt_targets | No | ||
| report_context | No | ||
| prompt_category | No | ||
| request_details | No | ||
| prompt_description | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the sparse annotations (only readOnlyHint=false, openWorldHint=true), the description discloses critical behaviors: invoke runs one-off even when the MCP isn't installed without bloating the toolkit, returns a connect link if credentials are needed and a checkout/top-up link if the wallet is empty (then retry), writes require workspace owner/admin, and search/describe flag installed_in_toolkit vs installed_in_workspace. This is rich behavioral disclosure well beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Every sentence earns its place given the extreme complexity (14 actions, 23 params, no output schema) — there is zero filler. However, it is a single continuous wall of text with no paragraph breaks, bullets, or emphasis, which makes the dense information harder to parse. The length is justified but the structure could be improved.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool this complex (23 params, 14 action values, no output schema, no param descriptions), the description is remarkably complete: it covers the full dispatch flow, the one-off vs permanent distinction, auth/payment link behaviors, permission requirements, the prompt-library subsystem, and the auxiliary actions (list_tools, subscribe/cancel, report_bug, request_mcp). Small gaps remain (resume action, immediate param, cancel_reason semantics), but it achieves near-complete coverage where structured data provides none.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% across 23 parameters, so the description carries the full burden. It explains the semantic core well: the action enum dispatch (search/describe/invoke/install/list_tools/subscribe/cancel/report_bug/request_mcp and the three prompt ops), tool_id+arguments via the invoke flow, tier_slug via pricing mention, and prompt_vars via the variable-substitution explanation. However, several params (immediate, resume, conversation, prompt_targets, report_context) are not explicitly mapped, so the 0% coverage gap isn't fully closed despite strong coverage of the critical ones.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific, multi-faceted purpose: 'the official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them.' It names concrete capability requests ('find an MCP that does X', 'is there a tool for Y') and lays out the core search→describe→invoke dispatch flow, which clearly distinguishes this aggregator tool from siblings like authenticate, connect, and report_bug.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage guidance is explicit and prescriptive: 'Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile... so you pick the right tool_id → invoke RUNS that tool,' plus a direct when-to-use contrast: 'use install only to make an MCP PERMANENT... prefer invoke for a single/occasional use.' It also names the fallback path ('request_mcp asks us to build a NEW MCP when nothing fits') and the prompt-library sub-flow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
querido_diario_buscarARead-onlyIdempotentInspect
Busca em diários oficiais MUNICIPAIS (milhares de prefeituras) por termo/nome — útil pra menções fora do Judiciário: licitações, nomeações, contratos, sanções municipais. Complementa o DJEN (que é judicial). Cada resultado traz trechos (excerpts) + URL do diário. Para nome exato, use aspas no termo.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | ||
| termo | Yes | ||
| data_fim | No | ||
| data_inicio | No | ||
| territory_ids | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish read-only/idempotent/non-destructive behavior; the description adds beyond that by disclosing the result shape (excerpts + diary URL). It does not discuss pagination or limits, but this is a minor gap given the strong annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact, front-loaded with the core scope, and every sentence adds value: use cases, DJEN contrast, output summary, and query tip.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a search tool with no output schema, it already conveys the main purpose, typical uses, and output contents. The main completeness gap is the underdocumented optional parameters, but the core workflow is sufficiently clear.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description explains the main required parameter ('termo') and advises quoted exact-name searches, which adds real meaning beyond the bare schema. However, with 0% schema-description coverage, it leaves size, data_fim/data_inicio, and territory_ids without any behavioral or formatting guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies a search action ('Busca') over a specific resource ('diários oficiais MUNICIPAIS'), and distinguishes it from DJEN by noting the judicial vs. municipal scope. It also names concrete use cases (licitações, nomeações, contratos, sanções municipais), so the tool's function is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly says to use this tool for non-judicial municipal gazette mentions and names DJEN as the complement/alternative for judicial content. It also gives a practical query tip: use quotes for exact names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
report_bugAIdempotentInspect
Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.
| Name | Required | Description | Default |
|---|---|---|---|
| context | No | ||
| message | Yes | ||
| conversation | No | [] |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide idempotentHint=true and readOnlyHint=false, covering side-effect expectations. The description adds context about including the conversation for reproduction, but doesn't disclose what the tool does with the report (e.g., whether it sends data externally, logs, or returns a confirmation). No contradiction with annotations, but limited additional behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the purpose and then adds a practical hint. Every word serves a purpose; no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a reporting tool with simple parameters scraped from a JSON schema (no output schema), the description covers the core purpose and explains the most important parameter (conversation) for reproduction. It could elaborate on 'message' and 'context', but the tool is straightforward and the description meets the essential need.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage for its three parameters alerting on the need for description compensation. The description only explains 'conversation' (as the array with recent messages for reproduction), leaving 'message' and 'context' unexplained. This is insufficient given the low schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states 'Report a bug, missing feature, or send feedback', clearly identifying the tool's purposehol. It distinguishes from siblings (e.g., 'authenticate', 'connect') by focusing on issue reporting, and adds a specific instruction about including the conversation array for reproduction. This is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool (e.g., when encountering a bug or wanting to provide feedback) but does not explicitly compare it to alternative tools or state when not to use it. The instruction to include the conversation array gives some usage context, but no explicit exclusions or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
show_versionARead-onlyIdempotentInspect
Show the current MCP platform and adapter versions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds that it shows 'MCP platform and adapter versions,' which provides minor extra context about the output but no further behavioral detail. This is acceptable but not above the baseline.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence, completely front-loaded, with no filler. Perfectly concise for a simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple version query with no parameters in input schema stub and no output schema shown (but the description fully explains what is returned). Given the simplicity confirmed by the empty schema and read-only annotations, the description is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so no parameter semantics are needed. Baseline 4 is appropriate; the description adds no parameter information because there are none.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Show') and the resource ('current MCP platform and adapter versions'). This is distinct from sibling tools like toolkit_info, which likely provides broader information, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. However, as a simple version-check tool, the usage is self-evident and implied by its name and description. No exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
toolkit_infoARead-onlyIdempotentInspect
Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the description does not need to restate safety. It adds value by describing the informational content (installed MCPs, connection status, accounts, catalog tool counts), which goes beyond the annotations. No contradictions exist, and the behavior is fully disclosed as a read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that immediately states 'Returns the current toolkit state' and then enumerates the relevant components. Every word adds value, with no fluff or redundancy. It is efficiently structured for quick parsing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and no output schema, the description carries the burden of explaining the result. It lists all major categories of information returned (installed MCPs, connection status, accounts, catalog tool counts), which is comprehensive for a simple state inspection tool. A 4 is warranted because it is clear and complete enough for the agent to understand what it will receive, though it could specify the data format or hierarchy.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. The description explains the meaningful content of the output (what the tool returns), which is the primary semantic contribution. Since there is no schema to clarify, the description effectively compensates by listing the key data elements.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Returns' and names the resource 'current toolkit state', detailing the exact contents: installed MCPs, connection status, connected accounts, and catalog tool counts. This clearly differentiates it from siblings like show_version (version info) and connect/authenticate (actions), leaving no ambiguity about its purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly communicates usage by stating what it returns, making it obvious that it should be used to inspect toolkit state. It does not explicitly mention when not to use it or alternatives, but the context from sibling names (authenticate, connect, marketplace) suggests this is the read-only status tool. A 4 is appropriate for clear context without explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- FlicenseAqualityCmaintenanceAllows querying the Diário Oficial do Estado do Piauí (DOE-PI) in natural language: list editions, search content, and read full texts without downloading PDFs.4
- FlicenseNot gradedqualityCmaintenanceEnables searching and querying Brazilian politically exposed persons and federal public servants data through natural language.
- AlicenseNot gradedqualityCmaintenanceConsulta em fonte oficial documentos de transferência de município via uma ferramenta de leitura, com pagamento por uso e hospedagem na plataforma.MIT
- FlicenseNot gradedqualityCmaintenanceEnables read-only searches of official sources from Italian local entities by forwarding queries to the Fonti Ufficiali API.