ADF: EU Tenders, EU Funding, CVE KEV EPSS, EU CERT Advisories, Amsterdam Events
EU tenders and funding, CVEs with KEV and EPSS, EU CERT advisories, Amsterdam events. Pay per query.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"agentdatafeed": {
"url": "https://agentdatafeed.com/mcp"
}
}
}Remote endpoints
https://agentdatafeed.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (3)
🟢list_datasets
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. 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. 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.
Input Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"datasets": {
"type": "array",
"description": "One entry per dataset.",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Dataset id to pass to get_sample or query_dataset."
},
"title": {
"type": "string",
"description": "Display name."
},
"description": {
"type": "string",
"description": "Coverage, sources and fields."
},
"records": {
"type": "integer",
"description": "Records in the current snapshot."
},
"updated": {
"type": "string",
"description": "Snapshot time, ISO 8601 UTC."
},
"price_usd_per_query": {
"type": "string",
"description": "Price in USD per paid query."
},
"payment": {
"type": "string",
"description": "Payment method."
},
"query": {
"type": "string",
"description": "Paid HTTPS query endpoint."
},
"sample": {
"type": "string",
"description": "Free sample endpoint."
},
"schema": {
"type": "string",
"description": "JSON Schema URL for the records."
},
"parameters": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"description": "Filter name to meaning; pass these as query_dataset filters."
},
"fields_always_present": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields every record carries."
}
},
"required": [
"id",
"price_usd_per_query",
"query",
"parameters"
]
}
}
},
"required": [
"datasets"
]
}🟢get_sample(dataset)
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.
Input Schema
{
"type": "object",
"properties": {
"dataset": {
"type": "string",
"enum": [
"amsterdam-events",
"security-advisories",
"eu-tenders",
"eu-funding",
"cert-advisories",
"eu-medicines"
],
"description": "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)."
}
},
"required": [
"dataset"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"dataset": {
"type": "string",
"description": "Dataset id."
},
"paid_placement_note": {
"type": "string",
"description": "Meaning of the paid_placement field."
},
"sample": {
"type": "array",
"items": {
"type": "object"
},
"description": "Up to 5 records; fields follow the dataset JSON Schema linked in list_datasets. Every record has verification and paid_placement."
}
},
"required": [
"dataset",
"sample"
]
}🟢query_dataset(dataset, filters)
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, eu-tenders $0.01, eu-funding $0.005, cert-advisories $0.003, eu-medicines $0.005 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; eu-tenders: country, cpv, q, deadline_after, deadline_before, published_since, min_value, nature, 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. For free records without filters use get_sample.
Input Schema
{
"type": "object",
"properties": {
"dataset": {
"type": "string",
"enum": [
"amsterdam-events",
"security-advisories",
"eu-tenders",
"eu-funding",
"cert-advisories",
"eu-medicines"
],
"description": "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)."
},
"filters": {
"type": "object",
"additionalProperties": {
"type": "string"
},
"description": "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."
}
},
"required": [
"dataset"
],
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"payment_required": {
"type": "boolean",
"description": "Always true: the endpoint needs an x402 payment."
},
"http_endpoint": {
"type": "string",
"description": "GET this URL with an x402 payment to receive the records."
},
"price_usd": {
"type": "string",
"description": "Price per call in USD."
},
"x402": {
"type": [
"object",
"string"
],
"description": "x402 v1 payment requirements (scheme, network, asset, amount, payTo); v2 terms come in the PAYMENT-REQUIRED header of the endpoint."
}
},
"required": [
"payment_required",
"http_endpoint",
"price_usd"
]
}Community
Evidence