Skip to main content

MCP server for TenderAPI: French (BOAMP) and EU (TED) public procurement data

Project description

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.

Install

Requires Python 3.10+.

From PyPI (once published):

pip install tenderapi-mcp

From source:

git clone https://github.com/IDNSIDNS/tenderapi-mcp
cd tenderapi-mcp
pip install -e .

Configure

Get a free API key at https://tenderapi.fr/.

Set the env var:

export TENDERAPI_KEY=ta_your_key_here

Use with Claude Desktop

Edit your Claude Desktop config:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "tenderapi": {
      "command": "tenderapi-mcp",
      "env": {
        "TENDERAPI_KEY": "ta_your_key_here"
      }
    }
  }
}

Restart Claude Desktop. The tenderapi server should appear in the tool picker.

Use with other MCP clients

Any MCP client supporting stdio transport. The binary tenderapi-mcp (installed by pip) is the entry point.

Tools exposed

Tool Tier 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 webhook alert profiles 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

  • Free: 100 req/day, tenders only
  • Starter (5 €/mo HT): 1 000 req/day, adds awards + webhooks
  • Pro (15 €/mo HT): 3 000 req/day, adds winner intelligence

See https://tenderapi.fr/#pricing.

Local development

Override the API base URL via TENDERAPI_BASE_URL (default https://tenderapi.fr).

License

MIT, see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tenderapi_mcp-0.5.0.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tenderapi_mcp-0.5.0-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file tenderapi_mcp-0.5.0.tar.gz.

File metadata

  • Download URL: tenderapi_mcp-0.5.0.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for tenderapi_mcp-0.5.0.tar.gz
Algorithm Hash digest
SHA256 cdea615da391e83628cc228d8ec2bba185f7859d4cd1b3d6bed4b99275ea6733
MD5 463ce1ba586234a99ccaa6a9bbcbefaa
BLAKE2b-256 0fc8bf7a4eef0904cea0be532b6ac6f0641320023a813cb91ef7c60af95770f6

See more details on using hashes here.

File details

Details for the file tenderapi_mcp-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: tenderapi_mcp-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 8.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for tenderapi_mcp-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cd850277caebc9c08f2a20ff6eba13bad6c9e4148b9ce282e455e04a001839e6
MD5 ef4dc0918ad3b2c3d7d60195fe235166
BLAKE2b-256 34f6846b240eb2f8eac7ff70c15a293c9e3df1afc7e60acae977f2d6690b600c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page