Skip to main content
Glama

EU Tender MCP

Live, structured European public-procurement intelligence for SMEs — as an MCP server. Search opportunities, analyze cross-border risk, and understand EU tenders — all from inside Claude, Cursor, or any MCP client.

The value here is information an LLM cannot know: current tender opportunities, EU thresholds, CPV codes, and cross-border risk patterns. It's built for a consulting, services, or supply SME that wants to bid on public contracts outside its home member state.


Why it's genuinely useful (and not just another wrapper)

Thing an LLM fakes from memory

What this MCP actually does

"What's the EU threshold for services?"

Returns the real figure (€143k standard) with the category it applies to

"Find me tenders in Germany for software"

Returns structured, filterable tender records (country/CPV/value/deadline)

"Is this RFP risky to bid from abroad?"

Runs a red-flag scan (bonds, turnover floors, local-presence, short deadlines) + an honest SME fit score

"What CPV code is 'cleaning services'?"

Returns the CPV division with aliases

"What does this notice type mean?"

Explains pin, cn-standard, results, etc.

Every tool is deterministic, typed, and honest about its data source — it never fabricates "live" opportunities when a TED API key isn't configured.


Tools (7)

Tool

What it does

search_tenders

Search tenders by query / country / CPV / value range / deadline

market_snapshot_tool

Activity by country & sector, typical values, urgent deadlines

analyze_tender

Red-flag scan + 0-100 SME fit score (by tender id or pasted RFP text)

look_up_cpv

Translate a description into EU CPV division codes

look_up_notice_type

Explain what a notice type (pin, cn-standard, results…) signals

eu_threshold

Whether a value is above EU mandatory-publication thresholds

tender_details

Full structured record for one tender


Install & run

python3 -m venv .venv
.venv/bin/pip install -e .
.venv/bin/pytest tests/ -q      # 38 tests, incl. a real MCP stdio integration

Start the server (stdio)

.venv/bin/eu-tender-mcp
# or
.venv/bin/python -m tendermcp.server

Connect a client

Claude Desktop — add to your MCP config (claude_desktop_config.json): mcpServers → see configs/claude-desktop.json. Point PYTHONPATH at the repo absolute path.

Claude Code / Cursor / other MCP clients — use configs/mcp-config.json and install the package (pip install -e .) so python3 -m tendermcp.server resolves.


Data model

  • Default provider: a bundled set of clearly-labeled sample tenders (source bundled_sample) so the MCP works out of the box, is demoable, and is fully testable with no key.

  • Live TED (roadmap): register a TED API key, set TED_API_KEY, and implement TEDLiveProvider._fetch() (in providers.py, already stubbed). Until then, no live data is ever fabricated — the labeled sample is returned instead.


Project layout

eu-tender-mcp/
├── tendermcp/
│   ├── server.py        ← FastMCP server wiring all tools
│   ├── knowledge.py     ← CPV codes, notice types, EU thresholds, red-flag rules
│   ├── analyzer.py      ← red-flag scan + SME fit scoring (offline, deterministic)
│   ├── providers.py     ← provider interface + bundled/live providers
│   ├── models.py        ← typed Tender / search-params models
│   ├── intel.py         ← market-snapshot aggregations
│   └── sample_data.py   ← labeled demo tenders
├── configs/             ← Claude Desktop / generic MCP client configs
├── tests/               ← 38 tests including real stdio integration
├── pyproject.toml
└── README.md

Roadmap / honest notes

  • Live TED feed is the single biggest upgrade — it needs a registered TED/OPEN API key + account feed URL (account-specific), which only a user can supply. The provider seam is ready.

  • More red-flag rules and jurisdiction nuance are planned; the analyzer is transparent on purpose (it outputs reasons, not false precision).

  • Not legal advice. The analyzer is a triage aid; always verify against the full tender documents.

MIT licensed.

-
license - not tested
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Government tender search for AI agents. UK, EU and US procurement opportunities.

  • Live EU funding data in your AI: grant calls, programmes, consortium partners, VCs, incubators.

  • UK public procurement data for AI agents: tenders, contracts, buyer and supplier profiles.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/omardaaboul/eu-tender-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server