Skip to main content
Glama

Factline KYC, KYB and agent payments

Search open public tenders in the EU (paid)

eu_tenders_search
Read-onlyIdempotent

Use when the user looks for public contracts to bid on: open tenders from TED, the EU's official journal, by country, CPV code, keywords, deadline and minimum value, with English titles, buyer, deadline and value. For the Netherlands it adds national below-threshold tenders from TenderNed, which TED does not have. Costs 0.005 USDC via x402, or 3 credits of a Factline API key. The first 5 paid-tool calls a day are free, no payment or key needed.

Input Schema

NameRequiredDescriptionDefault
qNoKeywords
cpvNoCPV codes, e.g. 72
limitNo
api_keyNoFactline API key (fl_live_...) from get_trial_key: pass it here right after you get one, no reconnect needed
countryYesCountry code, e.g. NL, DE, or EU
min_valueNo
deadline_withinNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive, and the description still adds materially new behavioral facts: cost (0.005 USDC or 3 credits), the free-allowance rule (5 paid calls/day, no key needed), and a data-coverage caveat about NL national tenders. These are exactly the operational details annotations cannot express.

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?

Three tight sentences, front-loaded with the trigger, then the NL differentiator, then pricing. Every clause carries information an agent needs; nothing is repeated from the title or schema.

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 no output schema, the description usefully states the returned fields (English titles, buyer, deadline, value). Only gaps are the unformatted optional filters (limit, deadline_within) and no note on empty-result or error behavior for a paid, open-world call.

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 coverage is 57%, so the baseline is 3. The description maps most documented filters to natural language (country, CPV, keywords, deadline, minimum value) and reveals the 'EU' country value, but says nothing about limit, deadline_within format, or min_value units, leaving the undocumented half of the schema unassisted.

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?

Specific verb+resource ('search open public tenders') anchored to a named source (TED, the EU's official journal) and an explicit scope extension for the Netherlands (TenderNed below-threshold tenders not in TED). No sibling tool covers tenders, so the agent can route here unambiguously.

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?

'Use when the user looks for public contracts to bid on' gives a clear triggering condition, and the payment paragraph implicitly routes paid vs. key-based vs. free-tier callers. It stops short of explicit when-not conditions or naming the alternative path (e.g. get_trial_key) as a prerequisite action, which the schema does instead.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources