MCP server exposing 3 tools for ukraine-public-spending.
This URL is a JSON-RPC 2.0 endpoint over HTTP. Issue POST requests with a JSON-RPC body. Browsers and search crawlers land here on GET.
POST https://gateway.pipeworx.io/ukraine-public-spending/mcp
Content-Type: application/json
{"jsonrpc":"2.0","id":1,"method":"tools/list"}
ua_spend_payments — Ukrainian public-money payments from the State Treasury (spending.gov.ua, keyless): every treasury payment made BY a payer EDRPOU and/or TO a recipient EDRPOU in a date window of up to 92 days. Each row has transaction date, amount (UAH), payer name + EDRPOU, recipient name + EDRPOU, payment purpose text (Ukrainian), budget code, KEKV economic code, and the contract number when the Treasury recorded one. Returns totals and top counterparties across the whole window plus the newest `limit` rows. Use for: who a city council or ministry paid, which public bodies paid a supplier, and what for. Payments to private individuals arrive with the code masked by the Treasury. For payer->recipient pairs use ua_spend_between; to line payments up with ProZorro tenders use ua_spend_prozorro_link.ua_spend_between — Payments from ONE Ukrainian public payer to ONE recipient (both by EDRPOU) in a window of up to 92 days, from State Treasury data on spending.gov.ua (keyless). Returns found true/false, payment count, total UAH, a per-month breakdown, and the payment rows with purpose text and any recorded contract number. found:false means the Treasury published no payment between the two in that window — not proof none was made (some payers, e.g. defence, are withheld). Use to check whether and how much a specific public body paid a specific supplier.ua_spend_prozorro_link — Line up a Ukrainian supplier's State Treasury receipts (spending.gov.ua) with its ProZorro procurement tenders, by supplier EDRPOU. Returns the public bodies that paid the supplier in the window (count, total UAH), the supplier's ProZorro tenders (tenderID, title, buyer + buyer EDRPOU, value, status), and, for each of the largest payers, the ProZorro tenders where that payer was the buyer and this supplier took part — returned as CANDIDATE links. A shared counterparty does not prove which contract a payment settles — every link is labelled candidate, with the matching basis stated. Use for supplier due diligence across procurement and actual payments. Keyless.Code samples (curl / TypeScript / one-click client install), schemas, and the live playground are on the pack page:
https://pipeworx.io/packs/ukraine-public-spending/
Pipeworx is an open MCP gateway connecting AI agents to live data. pipeworx.io