oc_tender_search

Pack: open-contracting · Endpoint: https://gateway.pipeworx.io/open-contracting/mcp

Search international public procurement — government tenders, contract notices, and contract awards published under the OCDS Open Contracting Data Standard. Covers 18 national and subnational publishers across developing countries and Europe: Africa (Kenya, Nigeria, Ghana, Zambia, Liberia, Rwanda, Tanzania), Latin America (Uruguay, Honduras, Guatemala, Peru, Dominican Republic, Mexico/Oaxaca), the Balkans (Albania, Kosovo, Croatia), Thailand (Bangkok), and Italy (ANAC anti-corruption authority). Free-text query matches tender title, buyer (procuring government entity), and description, and works in English even though most publishers file their text in Spanish, Albanian, Croatian, Italian or Thai: the query is searched alongside its equivalents in the language of the country you filter to, so “Ministry of Health” also finds “MINISTERIO DE SALUD”. The response echoes every spelling it searched in query_match. Filter by country, status (e.g. tender, award, complete), category (works | goods | services), min_value (tender value floor), and days (recently released). Returns one row per contracting process (latest release) with buyer, value, procurement method, deadlines, and award details when present. Data is refreshed weekly from official OCDS publications (OCP Data Registry). Use oc_coverage first to see which countries have data and how fresh it is.

Parameters

NameTypeRequiredDescription
querystringnoFree-text matched (case-insensitive) against tender title, buyer, and description, e.g. “road construction”, “medical supplies”, “ministry of health”.
countrystringnoCountry name, forgiving match (e.g. “Thailand”, “mexico”, “kosovo”). One of: ${COUNTRIES.join(’ | ’)}.
statusstringnoContracting process status, e.g. “tender”, “award”, “complete”.
categorystringnoMain procurement category. One of: ${CATEGORIES.join(’ | ’)}.
min_valuenumber,stringnoOnly processes whose tender value is at or above this (in the publisher’s currency).
daysnumber,stringnoOnly releases published within this many days.
limitnumber,stringnoMax results (1-100, default 20).

Example call

Arguments

{
  "query": "Ministry of Health",
  "country": "Dominican Republic",
  "limit": 5
}

curl

curl -X POST https://gateway.pipeworx.io/open-contracting/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"oc_tender_search","arguments":{"query":"Ministry of Health","country":"Dominican Republic","limit":5}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('oc_tender_search', {
  "query": "Ministry of Health",
  "country": "Dominican Republic",
  "limit": 5
});

More examples

{
  "query": "Ministry of Defence",
  "country": "Croatia",
  "limit": 3
}
{
  "query": "road construction",
  "country": "Kenya",
  "limit": 5
}
{
  "query": "medical supplies",
  "country": "Peru",
  "category": "goods",
  "min_value": 50000,
  "days": 30,
  "limit": 10
}

Connect

Add this to your MCP client config, or use one-click install buttons:

{
  "mcpServers": {
    "open-contracting": {
      "url": "https://gateway.pipeworx.io/open-contracting/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build September 4, 2026