mcp-portugal
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-portugal Is 123456789 a valid NIF, and what type?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-portugal
A Model Context Protocol (MCP) server for Portuguese public data. Give any MCP-capable AI assistant (Claude Desktop, Claude Code, Cursor, …) reliable, deterministic tools to validate a NIF, an IBAN, a postal code, and to look up national holidays — no API keys, runs locally over stdio.
🌍 English · Português · 📚 Documentation
Tools
Tool | Description |
| Validate a NIF (check digit) and classify the taxpayer type. |
| Validate an IBAN (ISO 7064 mod-97); flags PT IBANs. |
| Validate a CP7 postal code ( |
| National holidays for a year, including movable (Easter-based). |
| Whether a given |
Related MCP server: brasil-mcp-essentials
Use with Claude Desktop / Claude Code
Add to your MCP config (e.g. claude_desktop_config.json, or .mcp.json for
Claude Code):
{
"mcpServers": {
"portugal": {
"command": "npx",
"args": ["-y", "mcp-portugal"]
}
}
}Then ask: "Is 123456789 a valid NIF, and what type?" or "List the Portuguese holidays in 2026."
Run locally
npm install
npm start # runs the stdio server (tsx)
npm test # unit + stdio integration tests
npm run build # tsc -> dist/To test it by hand with the MCP Inspector:
npx @modelcontextprotocol/inspector npx -y mcp-portugalRoadmap
Postal-code → locality lookup (CTT open data)
ATCUD / invoice QR-code composition (via
pt-fiscal)IBAN → bank name resolution
Contributions welcome — see CONTRIBUTING.md.
License
MIT © Marcelo Domingues
Available Tools
5 toolsis_holidayÉ feriado?A
Indica se uma data (YYYY-MM-DD) é feriado nacional em Portugal.
Inputs: date (required).
list_holidaysFeriados nacionaisA
Lista os feriados nacionais obrigatórios de Portugal para um ano, incluindo os móveis (baseados na Páscoa).
Inputs: year (required).
validate_ibanValidar IBANA
Valida um IBAN (checksum ISO 7064 mod-97). Indica também se é um IBAN português válido.
Inputs: iban (required).
validate_nifValidar NIFA
Valida um NIF português (estrutura, dígito inicial e dígito de controlo) e devolve o tipo de contribuinte.
Inputs: nif (required).
validate_postal_codeValidar código postalA
Valida o formato de um código postal português (CP7, NNNN-NNN).
Inputs: postalCode (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 5 tools
Each tool targets a distinct domain concept: NIF, IBAN, postal code, holiday listing, and holiday checking. There is no overlap or ambiguity between them, and the descriptions make the purpose of each tool immediately clear.
The naming mostly follows a consistent verb_noun pattern: validate_nif, validate_iban, validate_postal_code, list_holidays, is_holiday. The main deviation is the use of 'is_holiday' instead of 'validate_holiday', but this is still readable and predictable.
With 5 tools, the server is well-scoped to Portugal-specific validation and holiday data. Each tool fills a clear niche without redundancy, and the count is appropriate for the domain.
The set covers common Portuguese data validation needs (NIF, IBAN, postal code) and national holidays comprehensively. A minor gap is the lack of validation for other Portuguese identifiers like NIPC, but NIF validation already covers taxpayer types, making this a workable surface.
Maintenance
Related MCP Connectors
An open MCP server for the Portuguese housing market, run by flatin.pt. No API key, no registration, no rate-limit negotiation. Twelve tools: • imt_calculate — IMT and Imposto do Selo on a purchase, 2026 tables, including the reduced table, the relief for buyers aged 35 or under and the flat rate for non-residents • imi_rate / imi_annual_cost — the IMI rate of any of the 308 municipalities for 2023–2025, and the annual bill for a given VPT • construction_barometer — how many building-permit cases enter a town hall each month (our own indicator: monthly for three municipalities, annual for eight, method and revision policy published) • search_newbuilds / get_newbuild — 250 new developments, 53 municipalities, 71 developers, with stage and, where published, price • where_to_live / municipality_stats / compare_municipalities — municipal comparisons • glossary_lookup — Portuguese property and tax terms • request_consultation / subscribe_digest — reaching a human The data behind the tax tools is published as open data under CC BY 4.0 on the Portuguese national portal (dados.gov.pt) and archived on Zenodo with a permanent DOI. Anyone may reuse it. Humans, not bots, answer the people who get in touch: a home purchase involves personal data under the GDPR and decisions that cannot be refunded.
MCP server for public_holidays_mcp
Official Openapi® MCP server: Italian company data, PEC, SMS, vehicles, geocoding and more APIs.
AI VAT Number Validation: hosted MCP server for EU VAT number checks via VIES.
Related MCP Servers
AlicenseAqualityDmaintenanceMCP server for Portuguese Parliament open data, enabling AI agents to access legislative initiatives, deputies, plenary votes, petitions, and parliamentary committees.128 npmMIT
brasil-mcp-essentialsofficial
AlicenseAqualityCmaintenanceA privacy-first MCP server providing 14 offline Brazilian utilities including document validation, boleto parsing, PIX BR Code generation/parsing, and calendar tools.221MIT- AlicenseCqualityCmaintenanceA no-key-first MCP server providing access to UK public data including postcodes, bank holidays, carbon intensity, flood warnings, and government datasets.12261MIT
- AlicenseNot gradedqualityBmaintenanceMCP server for accessing BPstat (Banco de Portugal) statistics API without API keys. Enables querying Portuguese central bank data through natural language.293 npmMIT