occasioni.it: bandi e incentivi italiani
Server Details
Italian public grants for businesses, refreshed nightly: search, matching, deadlines, reports.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 15 tools
Most tools have clearly distinct roles: search/detail/matching/stats/trends/orders/places/jobs are separable. There is mild potential overlap between search_places and relocation_programmes, and between catalogue_stats and search_incentives, but the descriptions make the intended use reasonably clear.
All names use snake_case, which is consistent, but the naming convention is mixed: some are verb_noun (search_incentives, get_place), while others are noun phrases (catalogue_stats, closing_soon, plan_preview, relocation_programmes). The names remain readable, but an agent cannot rely on a single predictable pattern.
Fifteen tools is appropriate for a rich domain spanning incentives, municipalities, remote jobs, paid reports, and aggregate statistics. Each tool appears to earn its place by covering a distinct view or workflow rather than duplicating another.
The surface covers the main workflows: search and detail for incentives/places/jobs, business matching, recurring-call forecasting, relocation programmes, statistics/trends, and paid product ordering with status retrieval. Minor gaps exist around detailed remote-job retrieval, product detail beyond list_products, and broader order lifecycle management, but these are not severe.
Available Tools
15 toolscatalogue_statsNumeri del catalogoARead-onlyInspect
Live numbers: open calls, calls closing in 30 days, grants, total budget, remote jobs, places, and per-region counts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds genuine value beyond them by flagging that the numbers are 'Live' (i.e., current rather than cached or historical) and by enumerating the payload, which matters because no output schema exists.
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?
A single front-loaded sentence led by the key qualifier 'Live numbers', with the metric list earning each word by telling the agent what will come back. No filler, no repetition of the title.
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?
With no output schema, the description must carry the burden of describing returns, and it does so by listing every metric including per-region counts. It stops short of indicating the response shape (flat object vs. nested per-region map) or whether figures are scoped to a market, which is a modest residual gap for an aggregate tool.
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 takes zero parameters, so there is nothing for the description to disambiguate; the baseline for a parameterless tool is 4. The description correctly implies no input is needed.
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 enumerates exactly which catalogue metrics are returned (open calls, closing-in-30-days, grants, budget, remote jobs, places, per-region counts), so the resource is unambiguous even without an explicit verb. It does not, however, distinguish itself from siblings like catalogue_trends or closing_soon, whose names overlap with the metrics listed here.
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?
There is no statement of when to call this versus catalogue_trends (historical?) or closing_soon (the same 30-day closing metric is listed here), and no prerequisites or exclusions are given. The word 'Live' weakly implies a real-time snapshot in contrast to a trends tool, but that is inference rather than guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
catalogue_trendsAndamento dei bandi nel tempoARead-onlyInspect
Time series of the Italian incentives catalogue since 2021: calls opened per month, calls open at mid-month, calls closing per month, seasonality (which months are busy), a 6-month estimate with range, and which purposes are growing. Optional region.
| Name | Required | Description | Default |
|---|---|---|---|
| region | No | Regione |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds crucial contextual behavior that annotations miss, such as defining the temporal scope ('since 2021') and detailing the output complexity like 'a 6-month estimate with range.' This level of detail significantly improves the agent's understanding of the data's boundaries and predictive nature.
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 exceptionally concise, packing a wealth of data about the tool's function into a single, dense, and highly effective sentence. It front-loads the core purpose (time series) before listing the specific metrics available.
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 definition is highly complete. It covers the specific type of data, the temporal scope, the detailed contents of the time series (opened, closing, seasonality), and the optional filtering capability. It provides all necessary context for a successful call.
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?
Since schema description coverage is 100%, the baseline for this score is 3. The description successfully confirms the parameter's optional nature ('Optional region') but adds minimal semantic value beyond the structured definition.
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 defines the resource (Italian incentives catalogue) and the action (time series/trends), going beyond the simple name. It differentiates itself from other catalogue tools by specifying the inclusion of metrics like 'calls opened per month' and 'seasonality'.
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?
While it does not explicitly contrast itself with siblings like 'catalogue_stats,' the description's focus on 'time series' and '6-month estimate' clearly positions it for trend analysis rather than static lookups. This distinction acts as a strong usage guide for when this specific tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
closing_soonBandi in scadenzaARead-onlyInspect
Open calls closing within N days (default 30), soonest first.
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | Giorni | |
| limit | No | Risultati | |
| region | No | Regione |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
It explicitly states a behavioral trait: the `days` parameter has a default value of 30. Since annotations provide safety hints (`readOnlyHint`), this description successfully adds helpful, non-obvious operational context regarding default behavior.
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 definition is extremely concise and front-loads the most important information (what it filters by and the default time window) in a single, readable sentence.
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?
It is comprehensive for a filtering tool, defining the time scope, the default behavior, and the sorting order of results ('soonest first'). It provides all the logical constraints needed to utilize the tool correctly.
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?
Since schema description coverage is 100%, the parameter semantics are highly valued when the description adds specific functional meaning. Explaining that the results are ordered 'soonest first' provides critical context on expected output structure and prioritization.
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 tool is clearly designed to identify 'open calls closing soon,' which distinguishes it from general call listings or order searches in the sibling tools. The title ('Bandi in scadenza') and description provide immediate context.
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 does not advise the agent on when to use this specific tool versus a broader search function (like using `search_remote_jobs` for all jobs). It states what the tool *does*, not how it fits into a decision tree of available tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_orderOrdina un servizio per l'utenteAInspect
Orders a paid report. With an API key that has credit, it is paid at once and generated; otherwise it returns a checkout_url to hand to the human (Stripe), who pays and receives the report by email. Input depends on the product: verifica/bozza need ref (incentive id) and input (business profile + project); piano needs input (questionnaire answers); luogo needs ref (place id); kit needs input.cv, input.role and input.jobs (remote-job ids).
| Name | Required | Description | Default |
|---|---|---|---|
| ref | No | Id della scheda (bando o comune) quando serve | |
| Yes | Email dell'utente che riceverà il report | ||
| input | No | Dati per il report (profilo, progetto, risposte, CV) | |
| product | Yes | Prodotto |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the readOnlyHint=false/openWorldHint=false annotations: it discloses that the order is charged and generated immediately when credit exists, that otherwise a Stripe checkout_url must be handed to a human, and that the report is delivered by email. That is exactly the payment/auth/delivery context an agent needs before calling a non-idempotent purchase 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?
Front-loads the core behavior and billing outcome in the first two sentences, with the per-product input rules last. The final sentence is a dense run-on packing five product variants, but every clause carries actionable information.
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?
No output schema exists, yet the description covers return outcomes (report generated immediately vs. checkout_url for human payment, email delivery) and resolves the ambiguous nested `input` object per product. Combined with the annotations, an agent has enough to invoke this correctly.
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 coverage is 100% (baseline 3), but the description adds materially more: it specifies conditional requirements per product (verifica/bozza need ref + input; piano needs input; luogo needs ref; kit needs input.cv, input.role, input.jobs) that the schema's flat required list does not express. This prevents invalid calls the schema alone would allow.
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?
States a specific verb and resource ("Orders a paid report") and immediately clarifies the scope/billing model, which distinguishes it from read-side siblings like get_order and list_products. An agent knows this is the purchase/creation entry point, not a lookup.
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?
Explains the two execution paths (API key with credit vs. no credit returning a checkout_url) and which inputs each product requires, which is strong contextual guidance. It stops short of naming alternatives (e.g., use plan_preview first, or list_products to discover the product enum), so no explicit when-not routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
expected_callsBandi che tornanoARead-onlyInspect
Calls that recur every year (same body, same call, opened in at least two years): past openings, usual month and the expected next opening date, with a confidence level. Use it to tell a user when a closed call should reopen.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Filtra per testo nel titolo o nell'ente | |
| limit | No | Risultati | |
| within_days | No | Solo quelli attesi entro N giorni |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the read-only annotation, the description specifies crucial behavioral traits of the data: it returns 'past openings, usual month and the expected next opening date, with a confidence level.' This explains the content and nature of the predicted data.
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 definition is exceptionally concise. It delivers highly complex functional logic—including specific temporal and pattern-matching criteria—in a short, two-sentence summary without any redundant phrasing.
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?
Despite the lack of an output schema, the description comprehensively explains the *nature* of the information returned (dates, confidence levels, past/future openings), providing the agent with all necessary context for successful use.
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?
With 100% schema description coverage, the description is not required to explain individual parameters. However, the Italian descriptions clarify the function of each filter (e.g., 'Filtra per testo') and results constraint ('Risultati'), adding necessary semantic context.
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 defines the resource (calls) and the precise criteria for selection: recurring yearly, matching a specific body, and being opened at least two years ago. This specificity makes it stand out from general search tools.
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 provides a direct use case for the tool: 'Use it to tell a user when a closed call should reopen.' This gives the agent a clear operational trigger for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_incentiveScheda completa di un bandoARead-onlyInspect
Full card of one incentive: requirements, beneficiaries, eligible costs, amounts, deadline, official link and the source summary.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Id della scheda, es. "incentivi:1000" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value by detailing the specific information returned (requirements, deadline, official link), though the safety profile is handled by the annotations. It does not disclose critical operational behavior like rate limits or transformation rules.
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 definition is highly concise. It uses a single, dense sentence to cover the resource name, the operation, and the entirety of the data returned, ensuring zero 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?
Despite missing an explicit output schema, the description is highly complete regarding the data structure by listing all key fields (requirements, costs, deadlines, etc.) that the agent can expect in the returned object.
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 coverage is 100%, meaning the schema already defines the parameter semantics completely. The description does not add additional meaning or context to the input 'id' field.
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 purpose is perfectly clear: retrieving the full detail (card) of a single specific incentive. The description clearly specifies what the resource is and what it includes without ambiguity.
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?
While it doesn't explicitly mention sibling tools like 'search_incentives', the description clearly defines the scope of this tool as retrieving a 'full card' of *one* item, implicitly guiding the user to use the search tool for broad queries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_orderStato e contenuto di un ordineBRead-onlyInspect
Status of an order by its token; when ready, the full report as structured JSON.
| Name | Required | Description | Default |
|---|---|---|---|
| token | Yes | Token dell'ordine |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds one genuinely new behavioral fact: the response is gated on readiness and otherwise only returns status. It omits the status vocabulary, whether polling is expected, and any rate/latency traits for a read that may be called repeatedly.
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?
A single front-loaded sentence with no filler; the resource and access key come first. The semicolon clause is compact but the two-phase behavior could have been stated more crisply.
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?
With no output schema, the description carries the burden of explaining returns, and 'full report as structured JSON' is only a gesture at the shape. An agent knows it gets status or a report but not what status values exist or what the report contains, which matters for deciding whether and when to re-call.
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 coverage is 100% and the single 'token' parameter is documented there as 'Token dell'ordine'. The description's 'by its token' restates the schema without adding format, provenance, or validity details, so the baseline 3 applies.
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?
States a specific verb and resource ('Status of an order by its token') and hints at the payload ('full report as structured JSON'), which is enough to separate it from create_order. It is slightly muddled because it presents two purposes (status check vs. full report) without saying which one a given call returns.
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 'when ready' clause implies a poll-until-ready workflow, which is the only usage signal. It never names an alternative or states prerequisites (e.g., where the token comes from, what to do while not ready).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_placeScheda di un comuneBRead-onlyInspect
One municipality: population, province, coordinates, programmes for new residents, and the regional incentives open to people.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Id della scheda (es. "comune:028001") o codice ISTAT |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true and openWorldHint=false (safe, closed-dataset read), so the description need only add context. It does useful work by listing the content an agent will get back, which matters because there is no output schema, but it says nothing about failure behavior for an unrecognized id or about result size/shape.
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 clause, fully front-loaded, no filler. Every item listed is real information about the payload rather than restatement of the title.
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?
With no output schema, the description carries the return-value burden and does list the payload contents, which is the main thing an agent needs. What is missing is lookup semantics (does it error on an unknown id? exact match only?), a modest but real gap rather than a fundamental one.
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 coverage is 100% and the single parameter documents both the 'comune:028001' format and the ISTAT code alternative with an example. The description adds nothing beyond the schema, which is the expected baseline when the schema does the work.
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 names a single specific resource ('One municipality') and enumerates its contents — population, province, coordinates, programmes, incentives — which is enough to separate it from the plural sibling search_places. However, it is a noun-phrase fragment with no explicit verb ('retrieve a single municipality's profile'), so the action is inferred rather than stated.
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 guidance on when to call this versus search_places, get_incentive, or relocation_programmes, all of which overlap in subject matter. The reader must infer that this is the detail-fetch counterpart to a search, which is plausible but never stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_productsServizi a pagamentoARead-onlyInspect
Paid services an agent can order for its user (eligibility check, application draft, personal plan, municipality dossier, remote-job kit) and subscriptions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety and closed-world profile is covered. The description adds that these are orderable services and subscriptions, but it does not describe return format, pagination, or how this relates to create_order. There is no contradiction with annotations.
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?
It is a single sentence with a useful parenthetical list and no filler. It could front-load the listing action more clearly, but it remains compact and readable.
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 zero-parameter, no-output-schema catalogue read, the description provides sufficient domain context: paid services, subscriptions, and example service types. Annotations cover the read-only nature, and no critical invocation detail is missing, though the relationship to order creation could be clearer.
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. There is nothing for the description to clarify beyond the product categories already mentioned.
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 identifies the resource as paid services and subscriptions and gives concrete examples such as eligibility check and remote-job kit. It is clear enough, but it does not explicitly state a list action or distinguish itself from siblings like create_order or catalogue_stats.
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 phrase 'an agent can order for its user' implies this is a pre-order catalogue, which gives some usage context. However, there is no explicit when-to-use guidance, no exclusions, and no mention of alternatives such as search_incentives or create_order.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
match_businessBandi adatti a un'attivitàARead-onlyInspect
Ranks the open calls for a business profile and explains each score in plain Italian. No model call: a transparent database score.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Dimensione | |
| limit | No | Risultati (max 50) | |
| young | No | Compagine prevalentemente under 36 | |
| female | No | Compagine prevalentemente femminile | |
| region | Yes | Regione della sede operativa | |
| sector | No | Settore | |
| purposes | No | Cosa vuole finanziare | |
| grant_only | No | Solo contributi a fondo perduto | |
| innovative | No | Startup o PMI innovativa iscritta | |
| beneficiary | No | Tipo di soggetto | |
| description | No | Descrizione libera dell'attività e del progetto (max 600 caratteri) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true and openWorldHint=false, so the description has a lower bar. It still adds genuinely useful behavior context: the score is computed by a transparent database query with "No model call", so the agent knows results are deterministic and explainable rather than LLM-generated. It stops short of describing ordering, tie-breaking, or what the explanation text looks like.
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 sentences, zero filler, and the core action plus the key differentiator (transparent, non-model score) are front-loaded. Nothing in the description is repeated from the title or wasted.
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?
With 11 parameters and only one required, the description never says the remaining ten are optional profile filters that refine the match, nor what happens when they are omitted (broad match? lower score confidence?). Since there is no output schema, the description carries some return-value burden and does say scores are explained, but the shape of the result (ranked list with per-item rationale) is only implied.
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 100% with four enums, so all 11 parameters are already documented in structured form; the description adds no parameter-level meaning beyond what the schema says. Baseline 3 applies. One gap the description could have closed but did not: which of the ten optional filters meaningfully change the ranking versus merely narrow candidates.
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?
"Ranks the open calls for a business profile and explains each score" gives a specific verb (ranks), resource (open calls/bandi) and output characteristic (explained scores). It does not name or contrast itself with search_incentives, the obvious sibling, so the agent must infer the distinction between profile-based ranking and keyword search.
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?
Use is implied: an agent that has a set of business attributes (region, size, sector, purposes) will infer this is the profile-matching path, and the word "Ranks" hints results are ordered rather than filtered. However, there is no explicit "use this instead of search_incentives when..." routing and no statement about which parameters actually affect the score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
plan_previewAnteprima del piano per ripartireARead-onlyInspect
Free preview of the secondlife.it personal plan: how many places, remote jobs and incentives fit a person, with the top few of each. No model call.
| Name | Required | Description | Default |
|---|---|---|---|
| age | No | Fascia di età | |
| move | No | Disponibilità a trasferirsi | |
| work | No | Che lavoro cerca | |
| house | No | Casa | |
| budget | No | Budget per il trasferimento | |
| family | No | Situazione familiare | |
| female | No | Donna (per incentivi all'imprenditoria femminile) | |
| skills | No | Aree di competenza | |
| english | No | Parla inglese a livello lavorativo | |
| region_to | No | Regione dove vorrebbe vivere (vuoto = qualunque) | |
| place_size | No | Dimensione del luogo ideale | |
| region_from | No | Regione in cui vive oggi |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered; the description still adds genuinely new behavior: no model call (deterministic, cheap, no LLM latency) and a result shape of counts plus 'the top few of each'. It leaves unstated what happens when all twelve optional filters are omitted.
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 short sentences, purpose front-loaded, the cost/behavior caveat trailing as a single clause. Nothing repeats the schema and nothing is padding.
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 read-only, twelve-optional-parameter preview with no output schema, it conveys the return content (counts + shortlists) and the cost profile, which is what an agent needs to call it. The remaining gap is whether omitted filters mean 'any' across the board or trigger defaults.
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 coverage is 100% with enums on nine of twelve parameters and an explicit 'vuoto = qualunque' note on region_to, so the schema carries parameter meaning alone. The description contributes nothing about how filters combine or what defaults apply when a field is skipped, which is exactly what is missing at the schema level.
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?
States a concrete deliverable: a free personal plan preview counting how many places, remote jobs and incentives fit a person, with the top few of each. That is specific enough for an agent to know what comes back, though it never names a sibling (search_places, search_incentives, search_remote_jobs) to contrast against, so the boundary is inferred rather than declared.
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?
'Free preview' plus 'No model call' implicitly positions it as the cheap first-pass option before any full/paid planning step, which is real usage signal. But there is no explicit when-to-use/when-not, and no mention of the search_* siblings that cover the same domains, so an agent must guess whether one search_incentives call or this preview is the right starting move.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
relocation_programmesProgrammi per chi si trasferisceARead-onlyInspect
Verified programmes that pay or help people to move: 1-euro houses, residence bonuses, subsidised homes, remote-worker schemes. Each with its official source.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Tipo | |
| limit | No | Risultati | |
| region | No | Regione |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds genuine context beyond that: the records are 'verified' and each carries 'its official source', a provenance claim that tells the agent this is curated data rather than raw listings.
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 short sentences: what it is and why to trust it. No repetition of the title, no filler, and the enumeration is front-loaded where it is most useful.
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?
With no output schema and only three optional simple parameters, the description covers what the tool returns at a conceptual level and establishes data quality. Minor gaps remain around default result count and whether results are nationwide when region is absent.
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 coverage is 100%, so all three parameters are documented structurally, and the description's list of programme kinds loosely maps to the type enum values. It still says nothing about how limit is applied or what region filtering means when omitted, so baseline 3 is right.
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?
States a concrete resource (verified relocation programmes) and enumerates the four sub-categories, so an agent knows exactly what corpus it returns. It does not, however, differentiate itself from siblings like search_incentives or get_incentive, which look like adjacent entry points to similar data.
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?
There is no statement of when to use this tool versus search_incentives, get_incentive, or search_places, nor any prerequisite or exclusion. Filterability by type/region is only inferable from the schema, not signalled in prose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_incentivesCerca bandi e incentiviARead-onlyInspect
Search Italian public grants, incentives and calls (national catalogue incentivi.gov.it plus regional and chamber-of-commerce calls), refreshed nightly. Open calls only by default. Text in Italian.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Testo libero, es. "digitalizzazione negozi" | |
| size | No | Dimensione impresa | |
| sort | No | Ordine | |
| limit | No | Risultati (max 50) | |
| offset | No | Salta i primi N | |
| region | No | Regione | |
| sector | No | Settore | |
| purpose | No | Finalità | |
| aid_form | No | Forma di aiuto | |
| min_amount | No | Contributo massimo almeno di N euro | |
| beneficiary | No | Tipo di beneficiario | |
| include_closed | No | Includi anche i bandi chiusi | |
| closing_within_days | No | Solo bandi che chiudono entro N giorni |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered; the description adds genuinely new context: data provenance, a nightly refresh cadence, and the default open-calls filter. It stops short of describing result shape or pagination behavior, but the additions are real value beyond the annotations.
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?
Three short sentences, zero padding, with the resource and scope front-loaded before the freshness and default-filter details. Every sentence adds a distinct fact.
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 13-parameter tool with no output schema, the description never sketches what a result contains (deadline, amount, region, link) or how limit/offset pagination behaves, so the agent cannot anticipate the return payload. Source, freshness and default scope are covered, making it minimally adequate rather than complete.
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 100% with 7 well-documented enums, so the schema carries the parameter burden and baseline 3 applies. The description contributes two useful hints — Italian-language input for q and the open-only default that explains include_closed — but nothing about sort, min_amount semantics, or pagination interplay.
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?
States a concrete verb and resource ('Search Italian public grants, incentives and calls') and names the underlying sources (incentivi.gov.it, regional, chamber-of-commerce). It is clearly a bulk search rather than a single-record fetch, so it separates from get_incentive, but it never names a sibling tool explicitly to route the agent.
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?
'Open calls only by default' implies the primary usage context, but there is no explicit when-to-use guidance against alternatives such as closing_soon (deadline-driven lookups) or match_business (profile-based matching). The agent must infer which tool to pick from sibling names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_placesComuni italianiBRead-onlyInspect
Italian municipalities (all 7,900) with population, coordinates and any programme that pays people to move there (1-euro houses, residence bonuses).
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Nome del comune | |
| limit | No | Risultati | |
| region | No | Regione | |
| max_population | No | Popolazione massima | |
| min_population | No | Popolazione minima | |
| with_programmes | No | Solo comuni con un programma per chi si trasferisce |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered; the description only adds that the dataset is complete (7,900 comuni) and what fields it carries. It says nothing about the 50-result cap, ordering, or how results are shaped — context an agent would want when paging or ranking.
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?
A single front-loaded sentence with the dataset scope first and the differentiating content (relocation programmes with concrete examples) second. Nothing is redundant or padded.
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?
No output schema exists and the tool has six optional filters, so the description should carry more than field names — nothing on what a result record looks like beyond 'population, coordinates, programme', and no routing versus siblings. The dataset-size and completeness note is the main compensating detail; the rest is thin for a search tool with this many knobs.
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 100%, so q, region, the population bounds, limit and with_programmes are all documented in the schema. The description's mention of 'any programme that pays people to move there' loosely hints at with_programmes but adds no matching, format or default behaviour, so baseline 3 applies.
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 names the resource precisely and scopes it (all 7,900 Italian municipalities with population, coordinates and relocation-programme flags), so an agent knows what data sits behind the tool. It never states the verb ('search/filter') and does not differentiate from siblings like relocation_programmes or search_incentives, which also touch this domain.
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?
There is no when-to-use / when-not-to-use guidance at all. Given siblings such as get_place, relocation_programmes and search_incentives, the description should say whether this is the entry point for name/region lookups versus the programme-specific tools; it stays silent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_remote_jobsLavori da remoto aperti all'ItaliaBRead-onlyInspect
Remote jobs workable from Italy (Jobicy, Remotive, Himalayas; credit and apply link kept). Filter by text or skill area.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Testo libero, es. "customer support" | |
| limit | No | Risultati | |
| skills | No | Aree di competenza |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds useful behavioral context that source attribution and apply links are preserved, but it does not disclose pagination, result ordering, rate limits, or how the limit is applied.
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 definition is compact and front-loaded: it names the resource, geographic scope, sources, and filtering options in two short clauses. The parenthetical is useful rather than wasteful, though the sentence is slightly dense.
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 simple three-parameter read-only search tool with no output schema, the description covers the core purpose and sources. However, it does not describe what a result contains or how the limit affects output, leaving some operational context incomplete.
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 coverage is 100%, so the baseline is 3. The description maps filtering to text and skill area, which aligns with q and skills, but it adds no syntax, format, or behavior detail for the limit parameter beyond what the schema already provides.
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 resource: remote jobs workable from Italy, with named sources and filter dimensions. It does not explicitly say 'search', but the tool name and filtering language make the action clear. No sibling tool is similar, so sibling differentiation is not a major gap.
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 usage by saying results can be filtered by free text or skill area, but it does not state when to use this tool versus alternatives or any exclusions. The sibling list contains unrelated domains, so explicit routing guidance is less critical, but it remains implicit rather than explicit.
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.
15 tool updates
- First observed
catalogue_stats - First observed
catalogue_trends - First observed
closing_soon - First observed
create_order - First observed
expected_calls - First observed
get_incentive - First observed
get_order - First observed
get_place - First observed
list_products - First observed
match_business - First observed
plan_preview - First observed
relocation_programmes - First observed
search_incentives - First observed
search_places - First observed
search_remote_jobs
Related MCP Connectors
Search Spain's BOE/BORME gazettes, open EU funding calls and EU TED tenders. Keyless sources.
- BidRoverOAuthcom.bidrover
Find, score and track public-sector bids, RFPs, grants and tenders from 100+ official sources.
Live EU funding data in your AI: grant calls, programmes, consortium partners, VCs, incubators.
Search 31,000+ open US grants, federal contracts, and foundations. Checked daily, free tier.
Related MCP Servers
- AlicenseBqualityCmaintenanceEnables monitoring Italian public funding opportunities, normalizing them into a canonical model, and ranking them against a company profile with a two-stage matcher.62MIT
- AlicenseAqualityDmaintenanceReal-time search of Japanese government subsidies and grants (official jGrants data): deadlines, amounts, eligibility, filterable by prefecture.2MIT
- AlicenseAqualityFmaintenanceMatch your tech product or consulting service to thousands of live government tenders, RFPs, grants, and frameworks from 25+ official sources worldwide.438 npm6MIT
- FlicenseNot gradedqualityDmaintenanceEnables searching and retrieving details of over 500,000 Spanish government grants and subsidies from the official BDNS database, without requiring an API key.-
Glama MCP Gateway
Add one secure layer between your agents and this server.