Moradas — Portuguese addresses & postal codes

dev.moradasPublished by moradas.devOfficial publisherv0.2.0Updated Oct 28, 2026

Portuguese address autocomplete, postal codes, list checks; typo-tolerant, municipality-first; free.

VerifiedStreamable HTTPWeb executableLocation & LifestyleData & Analytics

Overview

AI-generated overview

Remote MCP server for Portuguese addresses and postal codes: autocomplete, CP7 resolution, postal-code lookup and bulk address checks.

What you can do
  • Autocomplete Portuguese addresses or postal codes from free text, returning street, localidade, concelho, distrito and cp7
  • Resolve the exact 7-digit postal code for a street and door number using an art_id from autocomplete
  • Look up a postal code to get its localidade, concelho, distrito and covered streets
  • Check a whole list of addresses in one call, such as a CRM column, order import or customer base
When to use it
Useful when an assistant has to work with Portuguese addresses: cleaning or validating a customer or shipping list, filling in postal codes, or looking up what a postal code covers. It is aimed at Portugal-specific address data rather than general geocoding.
Requirements
A remote streamable HTTP endpoint at moradas.dev; no packages, environment variables or headers are declared, and no authentication is declared. Network access to the endpoint is needed.
Before you install
Address lists submitted to verify_addresses are sent to a third-party service, so avoid including extra personal data beyond the addresses being checked. The service is described as free, but no terms or data-retention details are given.

Installation

In SourceWeft

  1. Open Moradas — Portuguese addresses & postal codes in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/dev.moradas%2Fmoradas/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "moradas-portuguese-addresses-postal-code": {
      "type": "http",
      "url": "https://moradas.dev/mcp"
    }
  }
}

Tools

4

suggest_address

Autocomplete a Portuguese address or postal code. Pass free text (street, optionally locality and door number, e.g. 'av liberdade lisboa 196') or a postal code (e.g. '1000-098'). Returns suggestions with street, localidade (postal locality), concelho, distrito and cp7. When cp7 is null the street spans several postal codes: call resolve_postal_code with art_id and the door number. The beginning of a municipality or large locality name ('lisb', 'carcav') returns that place itself first (art_id 0). A suggestion found after correcting a typo in q carries corrected: true.

Parametersqrequiredcount

resolve_postal_code

Resolve the exact 7-digit postal code (CP7) for a street and door number. art_id comes from suggest_address (art_id 0 is a whole locality or municipality and cannot be resolved). Returns resolved address (or null) and the list of postal-code segments of that street.

Parametersart_idrequirednumerorequired

postal_code_info

Look up a Portuguese postal code (CP7, e.g. '1000-098'): localidade, concelho, distrito and the streets it covers.

Parameterscp7required

verify_addresses

Check a list of Portuguese addresses in one call: a column from a CRM or spreadsheet, an order import, a customer base before shipping or mailing. Each item is checked like suggest_address (a door number in the text picks the exact postal code; a postal code is looked up as such). Results come back in input order, one per item: id exactly as sent (null when not sent), q, status, cp7 and suggestion. status 'ok' — the postal code was determined and is in cp7; 'ambiguous' — no single answer (several candidates with nothing to tell them apart, a street with several postal codes and no door number, or just a locality): cp7 is null and suggestion is the best candidate for a person to confirm; 'not_found' — nothing matched: suggestion is null. suggestion has the same shape as a suggest_address suggestion. Up to 100 items per call; a call with N items counts as N requests against the rate limit (about 50 per 10 seconds per IP), so send up to 50 at a time. For a single address use suggest_address.

Parametersitemsrequired

Version history

2
  1. v0.2.0LatestOct 6, 2026
  2. v0.1.0Sep 16, 2026

Score

83% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • LicenseNot applicable

    A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.