pypi tenderapi-mcpstreamable-httpMITupdated 27d ago
Expose TenderAPI (French BOAMP + EU TED public procurement data) as MCP tools for AI agents (Claude Desktop, Cursor, Continue, Zed, etc.).
¿Qué puedes hacer con tenderapi mcp?
TenderAPI MCP server
Expose TenderAPI (French BOAMP + EU TED public procurement data) as MCP tools for AI agents (Claude Desktop, Cursor, Continue, Zed, etc.).
A thin wrapper over the public REST API at https://tenderapi.fr.
Coverage: BOAMP (France) since March 2015, and TED for FR/DE/IT/ES/UK since 2015 (legacy XML format until end 2023, then eForms), refreshed daily.
Two ways to use it
1. Hosted server — no install, no key
The fastest way to try it. Point any MCP client at the hosted endpoint:
https://tenderapi.fr/mcp
Claude Desktop / Claude Code:
{
"mcpServers": {
"tenderapi": {
"type": "streamable-http",
"url": "https://tenderapi.fr/mcp"
}
}
}
Exposes search_tenders and get_tender. Anonymous, free, limited to 30 tool calls per day per IP. No account, nothing to install.
Awards, winner intelligence and alert profiles are not available anonymously — they need a key, see below.
2. Local server (pip) — full toolset
Requires Python 3.10+ and a free API key.
pip install tenderapi-mcp
Get a free key at https://tenderapi.fr/ (100 requests/day), then:
{
"mcpServers": {
"tenderapi": {
"command": "tenderapi-mcp",
"env": {
"TENDERAPI_KEY": "ta_your_key_here"
}
}
}
}
Claude Desktop config location:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Restart the client. The tenderapi server should appear in the tool picker.
From source instead of PyPI:
git clone https://github.com/IDNSIDNS/tenderapi-mcp
cd tenderapi-mcp
pip install -e .
Any MCP client supporting stdio transport works. The tenderapi-mcp binary installed by pip is the entry point.
Tools exposed
| Tool | Tier | Hosted (keyless) | Description |
|---|---|---|---|
search_tenders |
Free | ✅ | Search BOAMP + TED tenders with typed filters (CPV, region, budget, deadline, source, etc.) |
get_tender |
Free | ✅ | Fetch a single tender by id |
search_awards |
Starter | — | Search award notices (who won which contract, for how much) |
get_award |
Starter | — | Fetch a single award by id |
winner_intel |
Pro | — | Aggregated winner stats: top companies by CPV / region / year |
me |
any | — | Current key tier, quota remaining, available features |
list_profiles, get_profile, create_profile, update_profile, delete_profile |
Starter | — | Manage alert profiles (daily email digest, Teams card, or webhook) for new-tender matches |
upgrade_tier, billing_portal |
any | — | Stripe checkout and billing-management links |
PINs (prior-information notices) are excluded from search_tenders by default; pass include_planning=true to include them. A deadline_after/deadline_before filter drops notices with no submission deadline unless include_null_deadline=true.
Tiers
- Hosted, keyless: 30 tool calls/day per IP, tenders only
- Free key: 100 req/day, tenders only
- Starter (5 €/month): 500 req/day, adds awards + alert profiles (email digest, Teams or webhook)
- Pro (15 €/month): 1 500 req/day, adds winner intelligence
Prices are final — no VAT is charged (art. 293 B French tax code). See https://tenderapi.fr/#pricing.
Local development
Override the API base URL via TENDERAPI_BASE_URL (default https://tenderapi.fr).
Requirements
Pinned to the mcp 1.x line: version 2.0.0 removed mcp.server.fastmcp, which this
server is built on. Migration to the 2.x API is tracked separately.
License
MIT, see LICENSE.
Instalación
Añade tenderapi mcp a tu cliente. Elige el que uses.
{
"servers": {
"tenderapi-mcp": {
"type": "http",
"url": "https://tenderapi.fr/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
claude mcp add tenderapi-mcp -- uvx tenderapi-mcpcodex mcp add tenderapi-mcp -- uvx tenderapi-mcpamp mcp add tenderapi-mcp -- uvx tenderapi-mcp{
"mcpServers": {
"tenderapi-mcp": {
"command": "uvx",
"args": [
"tenderapi-mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"tenderapi-mcp": {
"command": "uvx",
"args": [
"tenderapi-mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"mcpServers": {
"tenderapi-mcp": {
"command": "uvx",
"args": [
"tenderapi-mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"tenderapi-mcp": {
"command": "uvx",
"args": [
"tenderapi-mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"tenderapi-mcp": {
"command": "uvx",
"args": [
"tenderapi-mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"tenderapi-mcp": {
"type": "local",
"command": "uvx",
"args": [
"tenderapi-mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"tenderapi-mcp": {
"command": {
"path": "uvx",
"args": [
"tenderapi-mcp"
]
}
}
}
}Add to your Zed `settings.json`.
uvx tenderapi-mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
5 herramientas
tenderapi mcp expone 5 herramientas a un agente conectado.
- search_tenders
- Free
- get_tender
- Free
- search_awards
- Starter
- get_award
- Starter
- winner_intel
- Pro
Puntuación
81 / 100
Excelente
- Documentación22/25
- Mantenimiento25/25
- Confianza13/20
- Capacidad6/15
- Instalación15/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 19 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 5 tool(s) documented
- Provides prompt templates
- Provides resources
- 18 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Historial de versiones
| Versiones | Publicada |
|---|---|
| 0.8.0Última | 12 ago 2026 |
| 0.7.4 | 9 ago 2026 |
| 0.7.3 | 9 ago 2026 |
| 0.7.2 | 9 ago 2026 |
| 0.7.1 | 10 jul 2026 |
| 0.7.0 | 8 jul 2026 |
| 0.6.2 | 30 jun 2026 |
| 0.6.1 | 29 jun 2026 |
| 0.6.0 | 28 jun 2026 |
| 0.5.1 | 18 jun 2026 |
| 0.5.0 | 17 jun 2026 |
| 0.4.0 | 3 jun 2026 |
| 0.3.0 | 2 jun 2026 |
| 0.2.0 | 13 may 2026 |
| 0.1.2 | 7 may 2026 |
| 0.1.1 | 4 may 2026 |