mcpbeat Sign in

pl-firmy: Polish company check MCP Server

by almmity-api Your server? Claim it
answering

pl-firmy: Polish company check is answering right now. Last checked 9 min ago. It exposes 20 tools. Last commit 12 Oct 2026.

Verify Polish companies: VAT white list (MF), KRS, VIES, payment audit PDF, monitoring.

Uptime history 21 days of history
21 days agonow
100.0%
Uptime 24h
91 of 91 checks
20
Tools
read from the server
137 ms
Response time
average over 24h
0
Stars
last commit 12 Oct 2026

What changed 35

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 22 October 2026. No other catalogue keeps this.

22 Oct 12 tool descriptions were rewritten16 times that day add_watch, calculate_late_interest, check_vat_whitelist and 9 more
22 Oct 11 tools appeared build_transfer_title, calculate_late_interest, draft_payment_demand and 8 more
22 Oct 5 tools changed the parameters they ask for7 times that day add_watch, check_vat_whitelist, list_watches and 2 more
22 Oct a tool changed version
and 6 more, back to 22 October 2026

Nothing serious here today

Today is the operative word: we check pl-firmy: Polish company check every 15 minutes and re-read its code on every release. Watch it and you find out the day that stops being true.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 9 min ago.

run in your terminal
claude mcp add pl-firmy --transport http https://api.almmity.com/mcp
Settings → Connectors → Add custom connector, then paste this address
https://api.almmity.com/mcp
~/.codex/config.toml
[mcp_servers.pl-firmy]
url = "https://api.almmity.com/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "pl-firmy": {
      "url": "https://api.almmity.com/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "pl-firmy": {
      "type": "http",
      "url": "https://api.almmity.com/mcp"
    }
  }
}

Available tools 20

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

generate
generate_correction_xml
Build an FA(3) correction invoice (RodzajFaktury KOR). Header amounts are the difference versus the original. Pass beforeLines to emit state-before (StanPrzed) and state-after rows; otherwise lines are the delta. Does not send the invoice to KSeF. Callable without an API key.
generate_fa3_xml
Build a sales invoice XML in the FA(3) schema (kodSystemowy FA (3), variant 3) from seller, buyer and line items. Header VAT is computed from the summed net base of each rate. Does not send the invoice to KSeF and does not store it. Callable without an API key.
watch
add_watch
Once a day, check one Polish contractor (one NIP) in public registries. The check reads VAT status and white-list bank accounts from the Ministry of Finance, and reads KRS for liquidation, bankruptcy or restructuring. It stores the NIP, any bank accounts you choose to watch, an optional label, and a snapshot of that check. Change alerts go only to the e-mail of the signed-in account owner (the OAuth-linked KSeF Płatności account, or the owner of the almmity API key). It never e-mails the contractor and it never contacts anyone else. It does not accept a webhook address or another e-mail address. If this account has no e-mail on file, the watch is still stored and alerts are visible with list_watches and in the panel. Adding the same NIP again updates that watch. Stop monitoring with remove_watch. Requires sign-in (OAuth) or an almmity API key. Does not accept a KSeF token or a password.
remove_watch
Remove one contractor, identified by NIP, from monitoring for your account. Deletes the watch and stops future alerts. Requires sign-in (OAuth) or an almmity API key.
build
build_transfer_title
Build a Polish bank transfer title that carries one KSeF invoice number or a collective identifier (art. 108g VAT). mode=mpp builds the split-payment message /VAT/IDC/INV/TXT and checks the supplier NIP checksum. Does not send a payment. Callable without an API key.
calculate
calculate_late_interest
Calculate Polish late-payment interest with the same rates and day count as ksef.almmity.com: commercial (NBP reference + 10 pp), medical public debtor (+ 8 pp) or statutory (reference + 5.5 pp), plus the 40/70/100 EUR compensation converted at the NBP euro rate. Returns the segments. It creates a temporary PDF file on api.almmity.com, reachable by an unguessable link for one hour, then deleted. Does not file anything. Callable without an API key. The NBP rate lookup reads a public API and does not change it.
company
find_company
Combine the MF VAT white list and KRS into one normalized company profile. Provide one of nip, regon or krs. Reads public registries and does not change them. Callable without an API key, within the daily per-IP limit.
contractor
contractor_due_diligence
Concise risk summary for a Polish contractor by NIP: VAT status, whitelisted accounts (optionally verify one bank account), and KRS liquidation, bankruptcy or restructuring flags. Reads public registries and does not change them. Callable without an API key, within the daily per-IP limit.
cost
list_cost_invoices
List cost invoices already stored on the linked KSeF Płatności account: number, seller, amounts, due date, payment status and white-list check. Requires OAuth scope invoices.read. Never ask the user for a KSeF token or a password. Does not download new invoices from KSeF.
draft
draft_payment_demand
Draft a Polish pre-court payment demand (wezwanie do zapłaty) from the same interest calculation as calculate_late_interest, including art. 187 of the Code of Civil Procedure. Returns the text. It creates a temporary PDF file on api.almmity.com, reachable by an unguessable link for one hour, then deleted. Does not send the letter. Callable without an API key.
export
export_transfer_batch
Prepare an Elixir-0 transfer file for selected cost invoices on the linked KSeF Płatności account. Each account is re-checked on the MF white list for today; unsafe lines are left out of the file. Requires OAuth scope transfers.prepare. The file is not sent to a bank. Never ask for a KSeF token or a password.
krs
get_krs_extract
Current KRS (National Court Register) extract: name, legal form, address, share capital, board and representation, proxies, PKD codes, liquidation and bankruptcy flags. Reads a public registry and does not change it. Callable without an API key, within the daily per-IP limit.
nip
nip_checksum
Check the checksum of a Polish NIP (weights 6,5,7,2,3,4,5,6,7). Local arithmetic only. Callable without an API key. Does not look the NIP up in any registry.
payment
payment_audit_report
Before paying a Polish contractor, verify the NIP and bank account on the MF VAT white list for the payment date, check KRS and VIES, and store a PDF proof of due diligence (MF request IDs, timestamps, findings, SHA-256). Flags the 15 000 PLN rule (art. 117ba of the Tax Ordinance, split payment). Requires an almmity API key. Does not send a payment.
summarize
summarize_ksef_invoice
Parse an FA(3) XML into a short Polish summary: parties, dates, net, VAT, gross, split payment, due date and bank account. Returns a link to the XML-to-PDF viewer. It creates a temporary PDF file on api.almmity.com, reachable by an unguessable link for one hour, then deleted. Nothing is sent to KSeF or to anyone. Callable without an API key.
unpaid
unpaid_due_soon
List unpaid cost invoices on the linked KSeF Płatności account that are overdue or due within withinDays (default 7, max 90). Requires OAuth scope invoices.read. Never ask for a KSeF token or a password.
validate
validate_ksef_xml
Validate a KSeF FA(3) invoice XML against the official Ministry of Finance schema (when xmllint and the vendored XSD are available) and against business rules: NIP checksum, totals, bank account checksum, required JST/GV, correction references. Returns Polish error messages. Does not send the invoice to KSeF. Callable without an API key.
vat
check_vat_whitelist
Query the Ministry of Finance VAT white list (wl-api.mf.gov.pl). Returns the full taxpayer card: name, NIP, VAT status, REGON, KRS, address, every account (groups of 4), registration/denial/removal/restoration dates with legal basis, representatives, authorized clerks, partners, virtual accounts, and the MF requestId (legal proof of the answer). decision is czynny, zwolniony, niezarejestrowany or not found. Pass nip, or nips (up to 30, one search/nips call) for a batch with progress. Optionally bank_account to verify that account against the NIP: result TAK or NIE plus a separate requestId (the 15 000 PLN proof). When both nip and bank_account are set, the top-level requestId is the account-check id and detail.requestId is the taxpayer-search id. Or pass regon, or bank_account alone to find the owner. Reads a public registry and does not change it. Callable without an API key, within the daily per-IP limit. Errors and the daily MF limit come back in Polish.
vies
vies_check
Validate an EU VAT number via the European Commission VIES REST API, for example PL7740001454 or DE811569869. Reads a public registry and does not change it. Callable without an API key, within the daily per-IP limit.
watches
list_watches
List contractors monitored for your account, with the last stored status and recent change events. Reads only this server's database. Requires sign-in (OAuth) or an almmity API key.

Endpoints

URLTransportStateLatencyChecked
https://api.almmity.com/mcp streamable-http answering 145 ms 9 min ago

Alternatives to pl-firmy: Polish company check

same job, measured the same way
Romania
by robyroro

Romanian company reports, ONRC search, public contracts, VAT checks and local monitoring

108 installs/wk local only
Poland KRS Company Registry Lookup & Monitor (KYB)
by nero-engine

Polish company records from the official KRS register API, with alerts on new registry entries.

answering
Guardr
by guardr

Hosted MCP for website health monitoring. Tools: check_site, list_sites, get_site.

answering
VATFind
by vatfind

Find VAT numbers and EINs, resolve company identities, and monitor company-record changes.

answering
Registercheck
by registercheck

German commercial register: company profiles, officers, shareholders, events and monitoring.

answering
Vérif Entreprise FR
by railway-up-api-production-24833

French company KYB (SIREN): status, insolvency, VAT, BODACC monitoring alerts. Free preview; x402.

8 tools answering
Tengence GEO Agent
by tengence-team

GEO/SEO content pipeline MCP: plan, write, gate-check, publish, submit, monitor AI visibility.

102 installs/wk local only
Tengence GEO Agent
by tengence

GEO/SEO content pipeline MCP: plan, write, gate-check, publish, submit, monitor AI visibility.

local only

pl-firmy: Polish company check — questions

Answers built from our own checks of this server.

What can pl-firmy: Polish company check do?
It exposes 20 tools, read directly from the server on our last check. Among them: add_watch, build_transfer_title, calculate_late_interest, check_vat_whitelist, contractor_due_diligence, draft_payment_demand and 14 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
What is pl-firmy: Polish company check mostly used for?
Its tools cluster around generate and watch. That is what this server is built to work with — the grouping comes from the actual tool names, not from a category we assigned.
Is pl-firmy: Polish company check working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 91 of 91 checks got a reply (100.0%), average response time 137 ms. The bar chart above shows every period we have measured.
How do I connect pl-firmy: Polish company check?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does pl-firmy: Polish company check need an API key?
No. pl-firmy: Polish company check completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 20 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is pl-firmy: Polish company check?
It answers our handshake in 137 ms on average, which is faster than 85% of all working MCP servers we measure. That puts it in the quick quarter of the ecosystem. The comparison comes from our own checks across the whole registry, every 15 minutes.
Is pl-firmy: Polish company check open source?
The code is open source: it is published under the MIT licence and 0 stars on GitHub. The licence covers the code in the repository, not the hosted service at api.almmity.com, which runs on its operator's own terms.