Prozorro MCP Server

Prozorro MCP Server

Provides AI models with access to Ukrainian government procurement data from Prozorro, enabling search and retrieval of tender information by organization, date range, and other criteria.

Category
Visit Server

README

Prozorro MCP Server

A Model Context Protocol (MCP) server that provides AI models with seamless access to Ukrainian government procurement data from Prozorro - Ukraine's public procurement system.

ā—ā—ā— Providing all the available features requires to have a proxy server and database, so right now MCP API is not available publicly. To get API URL and API token, please contact the author.

Features

  • šŸ” Search Tenders: Advanced search capabilities by EDRPOU code, legal name, or date ranges
  • ⚔ Fast: Direct API integration with Prozorro's public procurement database
  • šŸ› ļø Easy Integration: Simple setup with Claude Desktop and other MCP clients

Available Tools

search_tenders

Searches for government tenders based on various criteria (Right now data are available only for 2025 year).

Parameters:

  • EDRPOUCode (string, optional): The unique identifier code of the organization (Ukrainian tax ID)
  • legalName (string, optional): A substring to match against the organization's legal name
  • dateFrom (string, optional): Start date for the search (ISO 8601 format, e.g., 2025-01-01)
  • dateTo (string, optional): End date for the search (ISO 8601 format, e.g., 2025-12-31)
  • limit (number, optional): Maximum number of records to return (default: 100, max: 1000)

Returns: Array of tender objects with detailed information including tender ID, title, organization details, dates, and procurement status.

Installation

Method 1: Install from npm (Recommended)

The easiest way to install the MCP server is via npm:

npm install -g prozorro-mcp-server

After installation, add to Claude Desktop configuration:

Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "prozorro": {
      "command": "prozorro-mcp-server",
      "env": {
        "PROZORRO_API_TOKEN": "your-api-token-here",
        "PROZORRO_SERVICE_URL": "mcp-api-url-here"
      }
    }
  }
}

Restart Claude Desktop and you're ready to use the server!

Note: On Linux/macOS, if you encounter permission issues, you may need to use sudo npm install -g prozorro-mcp-server or configure npm to use a user directory.

Method 2: Install from GitHub

  1. Install globally via npm from GitHub:
npm install -g git+https://github.com/VladyslavMykhailyshyn/prozorro-mcp-server.git
  1. Add to Claude Desktop configuration:

Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "prozorro": {
      "command": "prozorro-mcp-server",
      "env": {
        "PROZORRO_API_TOKEN": "your-api-token-here",
        "PROZORRO_SERVICE_URL": "mcp-api-url-here"
      }
    }
  }
}
  1. Restart Claude Desktop - The server will be ready to use!

Method 3: Local Development Installation

  1. Clone the repository:
git clone https://github.com/VladyslavMykhailyshyn/prozorro-mcp-server.git
cd prozorro-mcp-server
  1. Install dependencies:
npm install
  1. Build the project:
npm run build
  1. Add to Claude Desktop configuration (use absolute path):
{
  "mcpServers": {
    "prozorro": {
      "command": "node",
      "args": ["/absolute/path/to/prozorro-mcp-server/build/index.js"],
      "env": {
        "PROZORRO_API_TOKEN": "your-api-token-here",
        "PROZORRO_SERVICE_URL": "https://prozorro.gov.ua"
      }
    }
  }
}

Configuration

The server requires specific environment variables to function correctly. You can set these in the Claude Desktop configuration or in a .env file for local development.

Variable Description Required Example
PROZORRO_API_TOKEN Your Bearer token for the Prozorro API Yes Bearer abc123...
PROZORRO_SERVICE_URL Base URL for the API Yes https://mcp-service-url....

Getting API Credentials

To obtain API credentials and URL for Prozorro:

  1. Contact the author
  2. Retrieve API token and URL
  3. Use the token and URL in your configuration

Common Usage Workflows

Workflow 1: Search Tenders by Organization

1. Use search_tenders with EDRPOUCode to find all tenders from a specific organization
2. Review the returned tender details including dates, amounts, and status
3. Filter results by date range if needed

Workflow 2: Find Recent Tenders

1. Use search_tenders with dateFrom and dateTo parameters
2. Optionally filter by organization name using legalName
3. Limit results for better performance

Troubleshooting

Server not appearing in Claude Desktop

  1. Check that the path in claude_desktop_config.json is correct
  2. Ensure you've built the project with npm run build
  3. Verify that Node.js is installed (version 18 or higher required)
  4. Restart Claude Desktop
  5. Check Claude Desktop logs for errors

API Request Failures

  • Verify your PROZORRO_API_TOKEN is valid and not expired
  • Check that PROZORRO_SERVICE_URL is correct
  • The Prozorro API may have rate limits - consider adding delays between requests
  • Network connectivity to prozorro.gov.ua is required
  • Some tenders might be temporarily unavailable

Authentication Errors

  • Ensure your API token includes the Bearer prefix if required
  • Check that your token has the necessary permissions
  • Verify the token hasn't expired

Development

Project Structure

prozorro-mcp-server/
ā”œā”€ā”€ src/
│   ā”œā”€ā”€ index.ts              # Main MCP server entry point
│   ā”œā”€ā”€ tenders.ts            # Tender search implementation
│   └── types.ts              # TypeScript type definitions
ā”œā”€ā”€ build/                    # Compiled JavaScript (generated)
ā”œā”€ā”€ package.json
ā”œā”€ā”€ tsconfig.json
└── README.md

Running in Development Mode

# Watch mode - auto-rebuild on changes
npm run dev

# In another terminal
npm start

Building for Production

npm run build

API Information

This server uses the Prozorro public API to retrieve tender information. For more details about the Prozorro system and available data:

  • Prozorro Website: https://prozorro.gov.ua/
  • API Documentation: https://prozorro.gov.ua/api
  • Data Format: JSON responses with detailed tender information

License

ISC

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Contact

For issues and questions, please use the GitHub Issues page.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured