Rejestr.io MCP Server
Provides access to Poland's largest business registry database, enabling company search, beneficiary checks, and financial document retrieval via natural language.
README
Rejestr.io MCP Server
A Model Context Protocol (MCP) server providing access to Poland's largest business registry database - rejestr.io.
📋 What is this?
This MCP server enables AI assistants and applications to:
- 🔍 Search companies by name, NIP (Tax ID), or KRS (Court Register)
- 🏢 Retrieve detailed company information
- 👥 Check real beneficiaries from CRBR (Central Register of Real Beneficiaries)
- 🔗 Analyze connections between companies and individuals
- 📊 Access financial documents and statements
- 📄 Browse KRS (National Court Register) records
🎯 Choose Your Setup
👤 Are you a Claude Desktop user? → Jump to Claude Desktop Setup
👨💻 Are you a developer/want local control? → Jump to Developer Setup
👤 For Claude Desktop Users
This section is for non-technical users who want to use this MCP server with Claude Desktop app.
Step 1: Get rejestr.io API Key
- Register at rejestr.io
- Purchase an API plan (various options available)
- Copy your API key from the user panel
Step 2: Install Python
- Download Python 3.13 or newer from python.org
- During installation, check "Add Python to PATH"
- Verify installation by opening terminal and typing:
python --version
Step 3: Download and Configure Server
- Download this repository (green "Code" button → "Download ZIP") and extract it
- Create a
.envfile in the main project folder with your API key:REJESTR_IO_API_KEY=your_api_key_here
Step 4: Configure Claude Desktop
-
Open Claude Desktop config file:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- Windows:
-
Add this configuration (replace
PATH_TO_PROJECTwith full path to project folder):Windows:
{ "mcpServers": { "rejestr-io": { "command": "python", "args": ["-m", "rejestr_io_mcp"], "cwd": "C:\\Users\\YourName\\rejestr-io-mcp", "env": { "PYTHONPATH": "C:\\Users\\YourName\\rejestr-io-mcp" } } } }macOS/Linux:
{ "mcpServers": { "rejestr-io": { "command": "python3", "args": ["-m", "rejestr_io_mcp"], "cwd": "/home/your_name/rejestr-io-mcp", "env": { "PYTHONPATH": "/home/your_name/rejestr-io-mcp" } } } } -
Save the file and restart Claude Desktop
Step 5: Test It
Open Claude Desktop and ask:
Check my rejestr.io account balance
If everything works correctly, Claude should return your account balance information.
🐛 Troubleshooting (Claude Desktop)
Claude doesn't see the tools:
- Verify paths in
claude_desktop_config.jsonare correct - Make sure
.envfile contains valid API key - Restart Claude Desktop completely
Authorization error:
- Check if API key in
.envis correct - Verify your API plan is active at rejestr.io
- Check account balance
Import errors:
- Ensure Python is installed correctly
- Check Python version:
python --version(requires 3.13+) - Try reinstalling:
pip install httpx python-dotenv mcp
👨💻 For Developers / Local Usage
This section is for developers who want to integrate this MCP server with custom agents, applications, or use it locally.
Quick Start
# Clone the repository
git clone https://github.com/your-user/rejestr-io-mcp.git
cd rejestr-io-mcp
# Create virtual environment (recommended)
python -m venv .venv
source .venv/bin/activate # Linux/macOS
# or
.venv\Scripts\Activate.ps1 # Windows PowerShell
# Install dependencies
pip install -e .
# Create .env file with your API key
echo "REJESTR_IO_API_KEY=your_api_key_here" > .env
Local Testing
# Run server in stdio mode
python -m rejestr_io_mcp
# Use MCP Inspector for interactive testing
npx @modelcontextprotocol/inspector python -m rejestr_io_mcp
Integration with Custom Agents
The server communicates via stdio using the Model Context Protocol. Example integration:
import asyncio
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
async def run_agent():
server_params = StdioServerParameters(
command="python",
args=["-m", "rejestr_io_mcp"],
env={"REJESTR_IO_API_KEY": "your_key_here"}
)
async with stdio_client(server_params) as (read, write):
async with ClientSession(read, write) as session:
await session.initialize()
# List available tools
tools = await session.list_tools()
print(f"Available tools: {[tool.name for tool in tools.tools]}")
# Call a tool
result = await session.call_tool(
"get_company_info_using_nip",
arguments={"nip": "5252408074"}
)
print(result)
asyncio.run(run_agent())
Project Structure
rejestr-io-mcp/
├── rejestr_io_mcp.py # Main MCP server implementation
├── pyproject.toml # Project configuration & dependencies
├── .gitignore # Git ignore file
└── README.md # This documentation
Environment Variables
REJESTR_IO_API_KEY(required) - Your rejestr.io API key
Dependencies
- Python 3.13+
- httpx >= 0.28.1 - Async HTTP client
- mcp >= 1.25.0 - Model Context Protocol SDK
- python-dotenv - Environment variable management
API Endpoints Used
All endpoints use https://rejestr.io/api/v2 base URL:
GET /org?nazwa={name}- Search companiesGET /org/{krs}- Get company by KRSGET /org/nip/{nip}- Get company by NIPGET /org/{krs}/crbr- Get beneficiariesGET /org/{krs}/krs-powiazania- Get company connectionsGET /osoby/{id}- Get person dataGET /osoby/{id}/krs-powiazania- Get person connectionsGET /org/{krs}/krs-rozdzialy/{chapter}- Get KRS chapterGET /org/{krs}/krs-dokumenty- List financial documentsGET /org/{krs}/krs-dokumenty/{doc_id}?format=json- Get financial statement (costs 0.50 PLN)GET /konto/stan- Check account balance
Adding to Other MCP Clients
For Cline (VSCode extension): Add to your VSCode settings:
{
"mcp.servers": {
"rejestr-io": {
"command": "python",
"args": ["-m", "rejestr_io_mcp"],
"cwd": "/path/to/rejestr-io-mcp"
}
}
}
For custom applications: Use the MCP SDK to connect to the server via stdio transport.
🛠️ Available Tools
Company Search
-
get_company_info_using_name- Search company by nameFind information about "CD Projekt" company -
get_company_info_using_nip- Get company data by NIP (Tax ID)Show company with NIP 5252408074 -
get_company_info_using_krs- Get company data by KRS numberWhat are the details of company KRS 0000012345?
Detailed Information
-
get_company_krs_documentation- Get specific KRS chapter- Available chapters:
ogolny,oddzialy,akcje,wzmianki,zobowiazania,przeksztalcenia
Show general chapter from KRS for company 0000012345 - Available chapters:
-
get_person_data- Get person informationShow data for person ID 123456
Beneficiaries and Connections
-
get_beneficiary- List of real beneficiaries from CRBRWho is the beneficiary of company KRS 0000012345? -
get_connections_by_krs- Company connectionsShow all connections for company KRS 0000012345 -
get_connections_by_person- Person connectionsIn which companies does person ID 123456 operate?
Financial Documents
-
get_financial_documents- List of financial documentsShow available financial statements for KRS 0000012345 -
get_financial_statement_in_json- Download statement (costs 0.50 PLN)Download financial statement document ID 789 for KRS 0000012345
Account Management
get_token_amount- Check account balanceHow much credit do I have on my rejestr.io account?
💡 Usage Examples
Company Analysis
Find "Allegro" company and show:
1. Basic information
2. Real beneficiaries
3. All connections with other companies
Due Diligence
For company KRS 0000012345 check:
- Is it in liquidation or bankruptcy
- Who is the real beneficiary
- What connections it has with other entities
- Latest financial statements
Person Analysis
Find Jan Kowalski in company X, then show all companies
where this person holds any position
📝 Important Notes
- ⚠️ Costs: Downloading financial statements in JSON costs 0.50 PLN per document, rest operations are cost per usage.
- 🔐 Security: Never share your API key. The
.envfile should be in.gitignore - 📊 Limits: Check your API plan limits at rejestr.io
- 🔄 Updates: Data in rejestr.io is regularly updated from official registries
📚 Additional Resources
📄 License
MIT License - feel free to use, modify, and distribute this code.
🤝 Contributing
Bug reports and pull requests are welcome!
Made with ❤️ for the Polish business data community
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。