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 namedateFrom(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:
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
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-serveror configure npm to use a user directory.
Method 2: Install from GitHub
Install globally via npm from GitHub:
Add to Claude Desktop configuration:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Restart Claude Desktop - The server will be ready to use!
Method 3: Local Development Installation
Clone the repository:
Install dependencies:
Build the project:
Add to Claude Desktop configuration (use absolute path):
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 |
| Your Bearer token for the Prozorro API | Yes |
|
| Base URL for the API | Yes |
|
Getting API Credentials
To obtain API credentials and URL for Prozorro:
Contact the author
Retrieve API token and URL
Use the token and URL in your configuration
Common Usage Workflows
Workflow 1: Search Tenders by Organization
Workflow 2: Find Recent Tenders
Troubleshooting
Server not appearing in Claude Desktop
Check that the path in
claude_desktop_config.jsonis correctEnsure you've built the project with
npm run buildVerify that Node.js is installed (version 18 or higher required)
Restart Claude Desktop
Check Claude Desktop logs for errors
API Request Failures
Verify your
PROZORRO_API_TOKENis valid and not expiredCheck that
PROZORRO_SERVICE_URLis correctThe 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
Bearerprefix if requiredCheck that your token has the necessary permissions
Verify the token hasn't expired
Development
Project Structure
Running in Development Mode
Building for Production
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.