nipregon
Server Details
Polish company registry: 4.4M firms, KRS/REGON data, VAT white list checks, financial statements
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.4/5 across 4 of 4 tools scored.
Each tool serves a distinct purpose: VAT verification, company profile, financials, and name search. No overlaps.
All tools follow consistent verb_noun pattern: check_vat_whitelist, get_company, get_financials, search_company.
4 tools is appropriate for a focused domain of Polish company data; neither too few nor too many.
Covers core operations for accessing Polish company info but lacks some advanced features like detailed financial breakdowns or historical data.
Available Tools
7 toolscheck_risk_flagsCheck sanctions and KNF warningsARead-onlyIdempotentInspect
Compliance red-flag check for a Polish company (legal entity) by NIP. USE THIS for KYC/AML or before onboarding a counterparty: returns whether the company appears on Polish or EU sanctions lists (as the sanctioned subject) and whether it has a public warning from the KNF (Polish Financial Supervision Authority). A KNF warning is a notice filed with the prosecutor, not a conviction: apply the presumption of innocence. Legal entities only (sole traders are out of scope). Exact match on NIP/KRS/REGON. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| nip | Yes | Polish tax ID (NIP), 10 digits |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, destructiveHint. Description adds crucial context: exact match on identifiers, presumption of innocence for KNF warnings, and scope limitation (sole traders excluded).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences front-loaded with purpose, then usage, then detail. Every sentence adds value; no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose, behavior, limitations, and annotations well. Lacks explicit description of return format (e.g., boolean or flags) but implies outcome.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameter descriptions. The description adds no new semantics for the nip parameter beyond restating it's for Polish companies, matching the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool performs a compliance red-flag check for Polish companies by NIP, specifying it checks sanctions and KNF warnings. This distinguishes it from siblings like check_vat_whitelist and get_company.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises use for KYC/AML or before onboarding, and clarifies legal entities only. Lacks explicit naming of alternatives but context is adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_vat_whitelistCheck company on the VAT white listARead-onlyIdempotentInspect
Check a Polish company's VAT status in the Ministry of Finance taxpayer register (the 'white list', biała lista KAS) and, optionally, whether a given bank account number is registered to that company. USE THIS before paying an invoice: in Poland, paying over PLN 15,000 to an account outside the white list has tax consequences. Returns VAT status and account-match result. Live query to the official KAS register. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| nip | Yes | Polish tax ID (NIP), 10 digits | |
| account | No | Polish bank account number (26 digits), optional |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds that it's a 'live query to the official KAS register' and explicitly states 'Read-only', reinforcing non-destructive behavior. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four concise sentences front-loaded with the main action. No redundant information; every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite lacking an output schema, the description states it returns 'VAT status and account-match result', which suffices. The tool is simple, and all necessary context (parameters, usage, behavior) is covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema documents parameters. The description adds value by explaining the account parameter's purpose (check if registered) and specifying format details (26 digits), complementing the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks VAT status and optionally verifies bank accounts, using specific terminology (white list, biała lista KAS). It distinguishes from siblings like get_company and search_company by focusing on VAT and payment context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises using this before paying an invoice, citing tax consequences for payments over PLN 15,000 to non-white-list accounts. This provides clear when-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_companyGet full company profile by NIPARead-onlyIdempotentInspect
Get the full registry profile of a Polish company by its NIP (10-digit tax ID). USE THIS when the user gives a NIP and wants company details, address, board members, or registry status. Returns address, legal form, status, KRS, REGON, PKD activity codes, board members (names from the public KRS register) and VAT status. Data from KRS, REGON and CEIDG public registers. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| nip | Yes | Polish tax ID (NIP), 10 digits |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. Description adds that data comes from public registers (KRS, REGON, CEIDG) and is read-only, providing context beyond annotations. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first sentence states purpose and when to use, second lists return contents and sources. Every sentence is valuable, front-loaded, and no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, description adequately explains return values (address, legal form, status, KRS, REGON, PKD codes, board members, VAT status) and data sources. Could detail structure of board members but sufficient for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (one parameter, nip, with pattern and description). Description repeats that it's a 10-digit tax ID but adds no new semantics beyond the schema. Baseline 3 for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool gets the full registry profile of a Polish company by NIP, listing specific data returned. It implicitly distinguishes from siblings like check_vat_whitelist (VAT only) and get_financials (financial data).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells when to use: 'USE THIS when the user gives a NIP and wants company details, address, board members, or registry status.' Lacks explicit when-not or alternative mentions, but the context with siblings makes it clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_financialsGet company financial statementsARead-onlyIdempotentInspect
Get yearly financial statements of a Polish company by NIP, as filed with the National Court Register (KRS). USE THIS when the user asks about a company's revenue, profit, assets or financial results. Returns per-year revenue, net profit, total assets, equity and liabilities. Data from financial statements (RDF/KRS). Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| nip | Yes | Polish tax ID (NIP), 10 digits |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, destructiveHint, and idempotentHint. Description adds value by specifying the data source (RDF/KRS) and explicitly listing return fields, which helps the agent understand what data to expect. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load the purpose and usage guidance. No extraneous words; all sentences are informative and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, the description lists key return fields (revenue, profit, assets, equity, liabilities) and the data source. With a single well-documented parameter and read-only semantics, this is fully adequate for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only parameter `nip` is fully described in the schema (pattern, description). The description does not add any new parameter-specific semantics. With 100% schema coverage, baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool retrieves yearly financial statements of a Polish company by NIP. It specifies the data source (KRS) and lists returned fields (revenue, profit, assets, etc.). It distinguishes from sibling tools by focusing on financial data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit usage context: 'USE THIS when the user asks about a company's revenue, profit, assets or financial results.' This provides clear guidance. However, it does not explicitly state when not to use or contrast with sibling tools, which would be a minor improvement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_leiGet the company LEI codeARead-onlyIdempotentInspect
Get the Legal Entity Identifier (LEI, ISO 17442) of a Polish company (legal entity) by NIP, from the GLEIF register. USE THIS when the user needs a company's LEI for cross-border or financial-market reporting (MiFID, EMIR, payments). Returns the LEI, the registered legal name and the LEI status. Coverage is partial. Legal entities only. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| nip | Yes | Polish tax ID (NIP), 10 digits |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and destructiveHint. The description adds value by stating 'Coverage is partial. Legal entities only. Read-only.' This informs the agent about data completeness and entity restrictions beyond what annotations provide. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences. First states core function, second provides usage guidance, third summarizes return fields and limitations. No redundant words. Each sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple tool (single param, no output schema) and rich annotations, the description covers all necessary aspects: purpose, input, output structure, usage scope, limitations. It is complete for an agent to understand and invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The sole parameter 'nip' has 100% schema description coverage (already includes format and explanation). The description only mentions 'by NIP' without adding new semantic details. Per guidelines, with high schema coverage baseline is 3, and the description does not exceed this.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get the Legal Entity Identifier (LEI, ISO 17442) of a Polish company (legal entity) by NIP, from the GLEIF register.' It specifies the resource (LEI), action (retrieve), input (NIP), and origin (GLEIF). This is specific and distinct from siblings like get_company or get_financials, which deal with different data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states 'USE THIS when the user needs a company's LEI for cross-border or financial-market reporting (MiFID, EMIR, payments).' This gives clear context for when to use the tool. However, it does not explicitly mention when not to use it or direct to alternatives (e.g., for general company data use get_company), which would improve differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_public_tendersGet public procurement contracts wonARead-onlyIdempotentInspect
Get Polish public-procurement contracts awarded to a company (legal entity) by NIP, as published in the Public Procurement Bulletin (BZP). USE THIS for due diligence or sales intelligence when the user asks what public tenders or government contracts a company has won. Returns up to 25 most recent awards (subject, contracting authority, city, date, value) plus the total count and total value across all awards. Legal entities only. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| nip | Yes | Polish tax ID (NIP), 10 digits |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds that it returns up to 25 most recent awards and includes total count/value. This provides operational detail beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loading the core purpose. Every sentence adds value: purpose, usage guidance, and output/constraints. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given one parameter, no output schema, and good annotations, the description covers everything needed: input, output details, limits (25), constraints (legal entities), and usage context. The agent can correctly decide and invoke.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter (nip) is fully described in the schema with pattern and description. The description reinforces 'by NIP' and 'legal entities only', but adds no new format or constraints. With 100% schema coverage, a score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves Polish public procurement contracts for a company by NIP. It specifies the data source (BZP) and the output fields (subject, authority, city, date, value). This distinguishes it from sibling tools like get_company or check_risk_flags.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'USE THIS for due diligence or sales intelligence when the user asks what public tenders or government contracts a company has won.' It also notes legal entities only. While it doesn't describe when not to use or name alternatives, the purpose is clearly scoped.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_companySearch Polish companies by nameARead-onlyIdempotentInspect
Search Polish companies by name (fuzzy match). USE THIS when the user asks to find a Polish company, look up a firm by name, or get its NIP/KRS/REGON. Returns NIP, KRS, city, status and a profile URL. Data from the Polish court (KRS) and statistical (REGON) registers. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (1-10, default 5) | |
| query | Yes | Company name or part of it |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint; description adds that it performs fuzzy matching, returns specific fields, and sources data from KRS and REGON registers.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences front-loaded with purpose, usage guidance, and return details; no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, description lists returned fields (NIP, KRS, city, status, profile URL) and data sources, providing sufficient context for a read-only search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters; description adds no new semantic detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it searches Polish companies by name with fuzzy match, and the verb 'search' distinguishes it from sibling tools like check_vat_whitelist or get_company.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'USE THIS when the user asks to find a Polish company...' but does not mention alternative tools for specific lookups by NIP/KRS/REGON (e.g., get_company).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!