ADF: EU/UK Tenders, EU Law, Funding, Medicines, Shortages, Recalls, Sanctions, CVE, CERT, Holidays
Server Details
EU/UK tenders, EU law, funding, medicines, drug shortages, recalls, sanctions, CVE, CERT, holidays.
- Status
- Healthy
- Uptime
- 100.0% over 21 days
- Last Tested
- Transport
- Streamable HTTP ยท MCP 2025-06-18
- URL
TDQS
Scored across 4 tools
Each tool has a clearly distinct role: list_datasets for discovery, get_sample for free inspection, query_dataset for paid filtered access, and send_feedback for feedback. The descriptions explicitly distinguish free samples from paid filtered queries, so an agent should not confuse them.
All tool names use consistent snake_case verb_noun patterns: get_sample, list_datasets, query_dataset, send_feedback. There are no mixed conventions or vague names.
Four tools is well-scoped for a multi-dataset data marketplace: discovery, sampling, querying, and feedback. The many underlying datasets are handled through parameters rather than an excessive number of tools.
The surface covers the core lifecycle: discover datasets, inspect samples, construct paid queries, and provide feedback. A minor gap is that query_dataset does not fetch records itself and instead returns an external x402 payment URL, but this appears intentional and documented.
Available Tools
4 toolsget_sampleGet 5 free sample recordsARead-onlyIdempotentInspect
Free. Returns 5 real, current records from one dataset so you can check fields and quality before paying. Takes no filters: for records matching a date, place, vendor, country or keyword, use query_dataset.
| Name | Required | Description | Default |
|---|---|---|---|
| dataset | Yes | Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; vulnerability-watch: Vulnerability watch; eu-tenders: EU public tenders; uk-tenders: UK public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists); product-recalls: Product recalls and safety alerts (US FDA, US CPSC, US NHTSA, Health Canada, Transport Canada, CFIA, UK FSA, UK OPSS); eu-legislation: EU legislation: new and amended acts in the Official Journal (regulations, directives, decisions); drug-shortages: Medicine shortages (US FDA, EMA); public-holidays: Public and bank holidays (official government lists, current and next year). |
Output Schema
| Name | Required | Description |
|---|---|---|
| sample | Yes | Up to 5 records; fields follow the dataset JSON Schema linked in list_datasets. Every record has verification and paid_placement. |
| dataset | Yes | Dataset id. |
| paid_placement_note | No | Meaning of the paid_placement field. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive behavior, and openWorldHint=false. The description adds meaningful context beyond those fields: the call is free, returns exactly 5 records, returns real current records, and accepts no filters. It does not discuss rate limits or response shape, but the output schema covers returns.
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 three short sentences with no wasted language. The key qualifier 'Free' is front-loaded, followed immediately by what is returned and the alternative for filtered records.
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 one-parameter sampling tool with full enum documentation, an output schema, and safety annotations, the description is complete. It explains the sample size, cost, filtering limitation, and the correct alternative without needing to restate schema or return details.
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%, and the single dataset parameter has a fully documented enum with detailed dataset definitions. The description reinforces that the tool operates on one dataset and takes no filters, but it adds no syntax or selection guidance beyond the schema.
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 states a specific verb and resource: it returns 5 real, current sample records from one dataset so the caller can inspect fields and quality before paying. It clearly distinguishes this sampling tool from the filter-based query_dataset sibling.
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 when to use this tool (to check fields and quality before paying) and when not to use it (for records matching a date, place, vendor, country, or keyword), naming query_dataset as the alternative. The no-filter constraint leaves little room for misuse.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_datasetsList datasets, prices and filtersARead-onlyIdempotentInspect
Free. Returns every agentdatafeed dataset with record count, last update, price per query, filters and links. Call it first to choose a dataset, then use get_sample to inspect records or query_dataset for filtered data. When to use each dataset: amsterdam-events: Use when a user asks what is on in Amsterdam on a date or in a district, plans travel, venues, staffing, security or deliveries around large events, or needs crowd sizes, road closures context or permit status before the event appears on ticket sites. security-advisories: Use when a user asks whether a CVE is actively exploited, which vulnerabilities in a vendor or product to patch first, whether it is used in ransomware campaigns, or needs CISA KEV due dates, required actions and FIRST EPSS exploit probability in one call. vulnerability-watch: Use when a user asks which recent vulnerabilities affect a server product or version, wants new critical CVEs (for example CVSS 9 or higher) for a vendor this week, or needs CVSS, affected version ranges and exploit signals (KEV, EPSS) for a CVE in the news. eu-tenders: Use when a user asks which public tenders or government contracts are open in an EU country or sector, wants bid opportunities by CPV code or keyword with a deadline, or needs to monitor what public buyers are procuring before the deadline passes. uk-tenders: Use when a user asks which UK government or public sector contracts are open to bid, wants UK tender opportunities by sector, CPV code, keyword, region or buyer with the deadline and value, or needs Find a Tender and Contracts Finder notices in one search, for example SME-friendly IT tenders in Scotland closing this month. eu-funding: Use when a user asks which EU grants, subsidies or Horizon Europe calls are open or coming up for a topic, sector or organisation type, needs the deadline, budget and call link for an EU funding opportunity, or looks for small cascade funding calls for SMEs and start-ups. cert-advisories: Use when a user asks whether the Dutch, German or French national CERT or CERT-EU has warned about a CVE, vendor or product, needs the official European advisory ID and link for a patch or NIS2 report, or wants recent government advisories that cover known exploited (CISA KEV) vulnerabilities. eu-medicines: Use when a user asks whether a medicine or active substance is authorised in the EU, who holds the marketing authorisation, what it is indicated for, whether there is a current EMA-monitored shortage, or which safety communications and referral procedures concern it. sanctions-entities: Use when a user or a KYC, AML, procurement or shipping workflow needs to check whether a company, organisation, vessel or aircraft is on the EU or OFAC sanctions list, find the programme and legal basis of a listing, or look up a sanctioned vessel by IMO number; not for screening individual people. product-recalls: Use when a user, shop, marketplace, procurement or compliance workflow asks whether a product, food, medicine, medical device, vehicle, tyre or child car seat has been recalled or flagged as unsafe in the US (FDA, CPSC, NHTSA), Canada or the UK, which allergen or hazard caused it, how serious the recall class is, whether a recalled car should not be driven, or which recalls concern a given brand, firm or vehicle make. eu-legislation: Use when a user, compliance, legal or policy workflow asks which EU regulations, directives or decisions were recently published or amended on a topic, whether an act is in force and from when, which acts amend or repeal a given CELEX number, or needs the CELEX, ELI or OJ reference and the official EUR-Lex link of an EU act. drug-shortages: Use when a user, pharmacist, hospital, wholesaler or procurement workflow asks whether a medicine or active substance is currently in short supply in the US or the EU, why, since when, when supply is expected back, which manufacturers or strengths are affected, or whether alternatives are available. public-holidays: Use when a user, scheduler, payroll, logistics or booking workflow needs to know whether a date is an official public or bank holiday in one of the covered countries or regions, which holidays fall in a date range, or how to count business days around holidays this year or next year.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| datasets | Yes | One entry per dataset. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely new context: the call is 'Free' (no cost/quota concern) and it discloses which fields are returned, including price per query. It does not mention rate limits or catalog staleness, so it stops short of a 5.
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-loaded well โ purpose, return fields, and sibling routing come before the long dataset catalog. However the bulk of the text is a ~15-entry catalogue of use cases, much of it verbose and bordering on marketing copy, which inflates the definition far beyond what an agent needs at selection time.
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?
An output schema exists, so return values need no explanation, and there are no parameters to document. Given the zero-argument, read-only nature of the call, the description covers everything needed to decide to invoke it and what to do next.
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; baseline 4 applies. The description correctly implies no filtering inputs by describing it as returning the full catalog.
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 ('Returns every agentdatafeed dataset') and enumerates exactly what comes back (record count, last update, price per query, filters, links). It also positions itself as the entry point ahead of the named siblings, so an agent can distinguish it from get_sample and query_dataset immediately.
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?
Explicitly says to call it first, then routes to get_sample for record inspection and query_dataset for filtered queries. The per-dataset 'when to use' paragraphs give concrete triggering conditions (e.g. CISA KEV due dates, CPV codes, IMO lookups), which is the selection guidance an agent actually needs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
query_datasetGet the paid query URL and x402 termsARead-onlyIdempotentInspect
Paid data access. Returns no records itself: it builds the HTTPS query URL for your filters and returns the x402 payment terms (USDC on Base; amsterdam-events $0.005, security-advisories $0.003, vulnerability-watch $0.003, eu-tenders $0.01, uk-tenders $0.005, eu-funding $0.005, cert-advisories $0.003, eu-medicines $0.005, sanctions-entities $0.005, product-recalls $0.005, eu-legislation $0.005, drug-shortages $0.005, public-holidays $0.002 per call). Send a GET to http_endpoint with an x402 client (v2 PAYMENT-SIGNATURE or v1 X-PAYMENT header) to receive up to 100 matching records; no account or API key. Filters per dataset: amsterdam-events: from, to, district, q, min_visitors, limit, offset; security-advisories: cve, vendor, product, q, added_since, ransomware, min_epss, limit, offset; vulnerability-watch: cve, vendor, product, q, min_cvss, kev, updated_since, limit, offset; eu-tenders: country, cpv, q, deadline_after, deadline_before, published_since, min_value, nature, limit, offset; uk-tenders: nation, region, cpv, q, buyer, deadline_after, deadline_before, published_since, min_value, category, sme, status, source, limit, offset; eu-funding: q, programme, status, type, deadline_after, deadline_before, min_budget, limit, offset; cert-advisories: cve, vendor, product, q, cert, country, type, updated_since, kev, limit, offset; eu-medicines: q, type, category, substance, atc, area, holder, status, flag, shortage, updated_since, limit, offset; sanctions-entities: q, list, type, programme, country, identifier, updated_since, limit, offset; product-recalls: q, country, authority, source, category, classification, firm, allergen, status, since, limit, offset; eu-legislation: type, author, subject, q, celex, amends, published_since, in_force, limit, offset; drug-shortages: q, substance, country, status, since, source, holder, area, limit, offset; public-holidays: country, region, date_from, date_to, year, type, q, limit, offset. For free records without filters use get_sample.
| Name | Required | Description | Default |
|---|---|---|---|
| dataset | Yes | Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; vulnerability-watch: Vulnerability watch; eu-tenders: EU public tenders; uk-tenders: UK public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists); product-recalls: Product recalls and safety alerts (US FDA, US CPSC, US NHTSA, Health Canada, Transport Canada, CFIA, UK FSA, UK OPSS); eu-legislation: EU legislation: new and amended acts in the Official Journal (regulations, directives, decisions); drug-shortages: Medicine shortages (US FDA, EMA); public-holidays: Public and bank holidays (official government lists, current and next year). | |
| filters | No | Optional filters as name to string value, for example {"country":"NLD","cpv":"72","limit":"5"}. Allowed names per dataset are listed in this description and in list_datasets. |
Output Schema
| Name | Required | Description |
|---|---|---|
| x402 | No | x402 v1 payment requirements (scheme, network, asset, amount, payTo); v2 terms come in the PAYMENT-REQUIRED header of the endpoint. |
| price_usd | Yes | Price per call in USD. |
| http_endpoint | Yes | GET this URL with an x402 payment to receive the records. |
| payment_required | Yes | Always true: the endpoint needs an x402 payment. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial behavior beyond the readOnly/idempotent annotations: it declares that no records are returned, that payment is required with per-dataset USDC pricing, the accepted header versions (v2 PAYMENT-SIGNATURE / v1 X-PAYMENT), the 100-record cap, and that no account or API key is needed. These are exactly the non-obvious operational facts an agent needs before calling.
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 critical facts (no records, payment, follow-up GET) are front-loaded and every clause is substantive, but the per-dataset filter enumeration collapses thirteen lists into a single dense paragraph that is difficult to scan or parse. Information-dense but structurally poor.
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 two-parameter tool with an output schema, everything an agent needs is present: what is returned, how to pay, how to follow up, record caps, and the valid filter names per dataset. Nothing material is left unstated.
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 already 100%, but the filters parameter is a free-form string map, so the schema alone gives no clue which keys mean anything. The description supplies the complete per-dataset filter vocabulary plus implied limit/offset pagination, which is meaning the schema genuinely cannot convey.
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 output ("builds the HTTPS query URL for your filters and returns the x402 payment terms") and immediately negates the wrong expectation ("Returns no records itself"). This cleanly separates it from get_sample and list_datasets, which an agent could otherwise confuse with a data-fetch tool.
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?
Gives an explicit alternative with its selecting condition: "For free records without filters use get_sample." It also explains the follow-up step (send GET with an x402 client) that must occur after this call, which is genuine routing guidance. It does not explicitly say when list_datasets should be used instead, so it stops short of full when/when-not coverage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
send_feedbackSend feedback (free)AInspect
Free. If you decide not to buy, tell us why (type no_purchase, reason no_budget, cost_too_high, dataset_usability_uncertain or other with a comment): we use this feedback to provide a better offering. If you paid, tell us which other datasets, or other data within the dataset, would be useful (type wishlist, wanted): we use this feedback to provide better datasets, so we can become the one-stop shop for agent dataset needs. Do not include personal data.
| Name | Required | Description | Default |
|---|---|---|---|
| type | Yes | no_purchase: why you did not buy. wishlist: which other datasets or data you want. | |
| reason | No | Required for no_purchase: no_budget, cost_too_high, dataset_usability_uncertain or other (then explain in comment). | |
| wanted | No | Required for wishlist: other datasets, or other data within this dataset, that would be useful. | |
| comment | No | Optional free text for no_purchase; required when reason is other. | |
| dataset | No | Dataset the feedback is about (optional for wishlist). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=false, openWorldHint=false), and the description is consistent with that. It adds a genuinely useful constraint, 'Do not include personal data', plus the rationale for collecting feedback. It does not mention that submissions are non-idempotent (duplicates on repeat calls) or what the caller gets back, so it is additive but not rich.
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 privacy constraint and mode split are front-loaded and useful, but the text re-lists enum values (no_budget, cost_too_high, dataset_usability_uncertain, other) that already appear in the schema, and the repeated 'we use this feedback to provide...' rationale is promotional filler. Two dense sentences that could be tightened by roughly a third.
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 5-parameter write tool with full schema coverage, annotations, and no output schema, the description covers both usage paths and a privacy rule the agent would otherwise not know. Only the post-submission behavior (success signal, duplicate handling) is left unstated, which is minor given no output schema exists.
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 schema already documents every parameter including the conditional requirements for reason, wanted, and comment. The description restates the enum values for reason and the two type modes but adds no format, limit, or edge-case detail beyond what the schema provides, 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?
The description makes clear this tool submits feedback, and splits it into two concrete modes (no_purchase and wishlist) with the intent behind each. The verb is informal ('tell us') rather than a crisp 'submit', but the resource and scope are unambiguous and clearly distinct from read-oriented siblings like query_dataset or list_datasets.
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 gives explicit conditional routing: use type no_purchase if you did not buy, type wishlist if you paid and want to name other datasets. That is stronger than most tools provide. It does not name sibling tools as alternatives, but none of them are genuine substitutes for feedback submission.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Added
send_feedback
2 tool updates
- Changed
get_sample2 fields changed- changed
Input schema / properties / dataset / descriptionPrevious value: -"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; vulnerability-watch: Vulnerability watch; eu-tenders: EU public tenders; uk-tenders: UK public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists); product-recalls: Product recalls and safety alerts (US FDA, Health Canada, Transport Canada, CFIA, UK FSA, UK OPSS)."New value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; vulnerability-watch: Vulnerability watch; eu-tenders: EU public tenders; uk-tenders: UK public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists); product-recalls: Product recalls and safety alerts (US FDA, US CPSC, US NHTSA, Health Canada, Transport Canada, CFIA, UK FSA, UK OPSS); eu-legislation: EU legislation: new and amended acts in the Official Journal (regulations, directives, decisions); drug-shortages: Medicine shortages (US FDA, EMA); public-holidays: Public and bank holidays (official government lists, current and next year)." - changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "vulnerability-watch", - "eu-tenders", - "uk-tenders", - "eu-funding", - "cert-advisories", - "eu-medicines", - "sanctions-entities", - "product-recalls" -]New value: +[ + "amsterdam-events", + "security-advisories", + "vulnerability-watch", + "eu-tenders", + "uk-tenders", + "eu-funding", + "cert-advisories", + "eu-medicines", + "sanctions-entities", + "product-recalls", + "eu-legislation", + "drug-shortages", + "public-holidays" +]
- Changed
query_dataset2 fields changed- changed
Input schema / properties / dataset / descriptionPrevious value: -"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; vulnerability-watch: Vulnerability watch; eu-tenders: EU public tenders; uk-tenders: UK public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists); product-recalls: Product recalls and safety alerts (US FDA, Health Canada, Transport Canada, CFIA, UK FSA, UK OPSS)."New value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; vulnerability-watch: Vulnerability watch; eu-tenders: EU public tenders; uk-tenders: UK public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists); product-recalls: Product recalls and safety alerts (US FDA, US CPSC, US NHTSA, Health Canada, Transport Canada, CFIA, UK FSA, UK OPSS); eu-legislation: EU legislation: new and amended acts in the Official Journal (regulations, directives, decisions); drug-shortages: Medicine shortages (US FDA, EMA); public-holidays: Public and bank holidays (official government lists, current and next year)." - changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "vulnerability-watch", - "eu-tenders", - "uk-tenders", - "eu-funding", - "cert-advisories", - "eu-medicines", - "sanctions-entities", - "product-recalls" -]New value: +[ + "amsterdam-events", + "security-advisories", + "vulnerability-watch", + "eu-tenders", + "uk-tenders", + "eu-funding", + "cert-advisories", + "eu-medicines", + "sanctions-entities", + "product-recalls", + "eu-legislation", + "drug-shortages", + "public-holidays" +]
2 tool updates
- Changed
get_sample2 fields changed- changed
Input schema / properties / dataset / descriptionPrevious value: -"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; vulnerability-watch: Vulnerability watch; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists); product-recalls: Product recalls and safety alerts (US FDA, Health Canada, Transport Canada, CFIA, UK FSA, UK OPSS)."New value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; vulnerability-watch: Vulnerability watch; eu-tenders: EU public tenders; uk-tenders: UK public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists); product-recalls: Product recalls and safety alerts (US FDA, Health Canada, Transport Canada, CFIA, UK FSA, UK OPSS)." - changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "vulnerability-watch", - "eu-tenders", - "eu-funding", - "cert-advisories", - "eu-medicines", - "sanctions-entities", - "product-recalls" -]New value: +[ + "amsterdam-events", + "security-advisories", + "vulnerability-watch", + "eu-tenders", + "uk-tenders", + "eu-funding", + "cert-advisories", + "eu-medicines", + "sanctions-entities", + "product-recalls" +]
- Changed
query_dataset2 fields changed- changed
Input schema / properties / dataset / descriptionPrevious value: -"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; vulnerability-watch: Vulnerability watch; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists); product-recalls: Product recalls and safety alerts (US FDA, Health Canada, Transport Canada, CFIA, UK FSA, UK OPSS)."New value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; vulnerability-watch: Vulnerability watch; eu-tenders: EU public tenders; uk-tenders: UK public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists); product-recalls: Product recalls and safety alerts (US FDA, Health Canada, Transport Canada, CFIA, UK FSA, UK OPSS)." - changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "vulnerability-watch", - "eu-tenders", - "eu-funding", - "cert-advisories", - "eu-medicines", - "sanctions-entities", - "product-recalls" -]New value: +[ + "amsterdam-events", + "security-advisories", + "vulnerability-watch", + "eu-tenders", + "uk-tenders", + "eu-funding", + "cert-advisories", + "eu-medicines", + "sanctions-entities", + "product-recalls" +]
2 tool updates
- Changed
get_sample2 fields changed- changed
Input schema / properties / dataset / descriptionPrevious value: -"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists)."New value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; vulnerability-watch: Vulnerability watch; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists); product-recalls: Product recalls and safety alerts (US FDA, Health Canada, Transport Canada, CFIA, UK FSA, UK OPSS)." - changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "eu-tenders", - "eu-funding", - "cert-advisories", - "eu-medicines", - "sanctions-entities" -]New value: +[ + "amsterdam-events", + "security-advisories", + "vulnerability-watch", + "eu-tenders", + "eu-funding", + "cert-advisories", + "eu-medicines", + "sanctions-entities", + "product-recalls" +]
- Changed
query_dataset2 fields changed- changed
Input schema / properties / dataset / descriptionPrevious value: -"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists)."New value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; vulnerability-watch: Vulnerability watch; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists); product-recalls: Product recalls and safety alerts (US FDA, Health Canada, Transport Canada, CFIA, UK FSA, UK OPSS)." - changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "eu-tenders", - "eu-funding", - "cert-advisories", - "eu-medicines", - "sanctions-entities" -]New value: +[ + "amsterdam-events", + "security-advisories", + "vulnerability-watch", + "eu-tenders", + "eu-funding", + "cert-advisories", + "eu-medicines", + "sanctions-entities", + "product-recalls" +]
2 tool updates
- Changed
get_sample2 fields changed- changed
Input schema / properties / dataset / descriptionPrevious value: -"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA)."New value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists)." - changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "eu-tenders", - "eu-funding", - "cert-advisories", - "eu-medicines" -]New value: +[ + "amsterdam-events", + "security-advisories", + "eu-tenders", + "eu-funding", + "cert-advisories", + "eu-medicines", + "sanctions-entities" +]
- Changed
query_dataset2 fields changed- changed
Input schema / properties / dataset / descriptionPrevious value: -"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA)."New value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA); sanctions-entities: Sanctioned entities, vessels and aircraft (EU and OFAC lists)." - changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "eu-tenders", - "eu-funding", - "cert-advisories", - "eu-medicines" -]New value: +[ + "amsterdam-events", + "security-advisories", + "eu-tenders", + "eu-funding", + "cert-advisories", + "eu-medicines", + "sanctions-entities" +]
2 tool updates
- Changed
get_sample2 fields changed- changed
Input schema / properties / dataset / descriptionPrevious value: -"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories."New value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA)." - changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "eu-tenders", - "eu-funding", - "cert-advisories" -]New value: +[ + "amsterdam-events", + "security-advisories", + "eu-tenders", + "eu-funding", + "cert-advisories", + "eu-medicines" +]
- Changed
query_dataset2 fields changed- changed
Input schema / properties / dataset / descriptionPrevious value: -"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories."New value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories; eu-medicines: EU medicines: authorisations, shortages, safety communications and referrals (EMA)." - changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "eu-tenders", - "eu-funding", - "cert-advisories" -]New value: +[ + "amsterdam-events", + "security-advisories", + "eu-tenders", + "eu-funding", + "cert-advisories", + "eu-medicines" +]
2 tool updates
- Changed
get_sample2 fields changed- changed
Input schema / properties / dataset / descriptionPrevious value: -"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants."New value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories." - changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "eu-tenders", - "eu-funding" -]New value: +[ + "amsterdam-events", + "security-advisories", + "eu-tenders", + "eu-funding", + "cert-advisories" +]
- Changed
query_dataset2 fields changed- changed
Input schema / properties / dataset / descriptionPrevious value: -"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants."New value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants; cert-advisories: European CERT security advisories." - changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "eu-tenders", - "eu-funding" -]New value: +[ + "amsterdam-events", + "security-advisories", + "eu-tenders", + "eu-funding", + "cert-advisories" +]
3 tool updates
- Changed
get_sample3 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / dataset / descriptionAdded value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "dataset": { + "description": "Dataset id.", + "type": "string" + }, + "paid_placement_note": { + "description": "Meaning of the paid_placement field.", + "type": "string" + }, + "sample": { + "description": "Up to 5 records; fields follow the dataset JSON Schema linked in list_datasets. Every record has verification and paid_placement.", + "items": { + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "dataset", + "sample" + ], + "type": "object" +}
- Changed
list_datasets2 fields changed- added
Input schema / additionalPropertiesAdded value: +false - changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "datasets": { + "description": "One entry per dataset.", + "items": { + "properties": { + "description": { + "description": "Coverage, sources and fields.", + "type": "string" + }, + "fields_always_present": { + "description": "Fields every record carries.", + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "description": "Dataset id to pass to get_sample or query_dataset.", + "type": "string" + }, + "parameters": { + "additionalProperties": { + "type": "string" + }, + "description": "Filter name to meaning; pass these as query_dataset filters.", + "type": "object" + }, + "payment": { + "description": "Payment method.", + "type": "string" + }, + "price_usd_per_query": { + "description": "Price in USD per paid query.", + "type": "string" + }, + "query": { + "description": "Paid HTTPS query endpoint.", + "type": "string" + }, + "records": { + "description": "Records in the current snapshot.", + "type": "integer" + }, + "sample": { + "description": "Free sample endpoint.", + "type": "string" + }, + "schema": { + "description": "JSON Schema URL for the records.", + "type": "string" + }, + "title": { + "description": "Display name.", + "type": "string" + }, + "updated": { + "description": "Snapshot time, ISO 8601 UTC.", + "type": "string" + } + }, + "required": [ + "id", + "price_usd_per_query", + "query", + "parameters" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "datasets" + ], + "type": "object" +}
- Changed
query_dataset4 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / dataset / descriptionAdded value: +"Dataset id. amsterdam-events: Amsterdam events; security-advisories: Security advisories; eu-tenders: EU public tenders; eu-funding: EU funding calls and grants." - added
Input schema / properties / filters / descriptionAdded value: +"Optional filters as name to string value, for example {\"country\":\"NLD\",\"cpv\":\"72\",\"limit\":\"5\"}. Allowed names per dataset are listed in this description and in list_datasets." - changed
Output schema / (root)Previous value: -nullNew value: +{ + "properties": { + "http_endpoint": { + "description": "GET this URL with an x402 payment to receive the records.", + "type": "string" + }, + "payment_required": { + "description": "Always true: the endpoint needs an x402 payment.", + "type": "boolean" + }, + "price_usd": { + "description": "Price per call in USD.", + "type": "string" + }, + "x402": { + "description": "x402 v1 payment requirements (scheme, network, asset, amount, payTo); v2 terms come in the PAYMENT-REQUIRED header of the endpoint.", + "type": [ + "object", + "string" + ] + } + }, + "required": [ + "payment_required", + "http_endpoint", + "price_usd" + ], + "type": "object" +}
2 tool updates
- Changed
get_sample1 field changed- changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "eu-tenders" -]New value: +[ + "amsterdam-events", + "security-advisories", + "eu-tenders", + "eu-funding" +]
- Changed
query_dataset1 field changed- changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories", - "eu-tenders" -]New value: +[ + "amsterdam-events", + "security-advisories", + "eu-tenders", + "eu-funding" +]
2 tool updates
- Changed
get_sample1 field changed- changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories" -]New value: +[ + "amsterdam-events", + "security-advisories", + "eu-tenders" +]
- Changed
query_dataset1 field changed- changed
Input schema / properties / dataset / enumPrevious value: -[ - "amsterdam-events", - "security-advisories" -]New value: +[ + "amsterdam-events", + "security-advisories", + "eu-tenders" +]
3 tool updates
- First observed
get_sample - First observed
list_datasets - First observed
query_dataset
Publisher details
- Operator
- AgentDataFeed ยท Publisher source
- Operator website
- https://agentdatafeed.com ยท Publisher source
- Vendor relationship
- Independent ยท Publisher source
- Documentation
- https://agentdatafeed.com ยท Publisher source
- Trust center
- Not applicable
- Restrictions
- Free catalogue and 5 free sample records per dataset. Filtered queries are paid per call via x402 (USDC on Base). Prices are based on market value and can change; the current price is returned with every request. No account, API key or OAuth needed; no regional limits. ยท Publisher source
Related MCP Connectors
Public tenders and contract awards from EU TED and UK Find a Tender, with buyer, value and deadline.
UK and Ireland public sector tenders, contract awards, buyers and expected re-tenders.
Public tenders and contract awards in the UK, US, Canada and EU, and help preparing bids.
EU tenders with no bid, deadlines, competitor maps and company dossiers, dated and stamped.
Related MCP Servers
- AlicenseAqualityFmaintenanceEnables searching for EU public-procurement tenders, analyzing cross-border risk, and understanding tender details through tools for CPV code lookup, EU threshold checks, red-flag scanning, and SME fit scoring.7MIT
- AlicenseNot gradedqualityDmaintenanceEnables search and analysis of European public procurement tenders, including EU above-threshold (TED) and below-threshold from 11 national sources, with hybrid search and filtering.MIT
- AlicenseNot gradedqualityBmaintenanceEnables searching and retrieving detailed information on EU grant calls and tenders from the EU Funding & Tenders Portal, including deadlines, budgets, and topic details.01MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to search and retrieve public procurement notices from 17 sources across Germany, the EU, and the UK, with filtering by country, CPV code, deadline, and contract value, plus full tender details and source freshness checks.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.