mozaia-laws-mcp
Click on "Install 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., "@mozaia-laws-mcpsearch for labour law 2023"
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.
mozaia-laws-mcp
MCP server for the Mozambican law library — give any AI agent real-time access to Mozambican legislation: current text, historical versions, validity status, and citation resolution.
Built on the Mozaia legal intelligence platform. Covers 42 legal domains, 225+ instruments from the Boletim da República, with authoritative citators and temporal versioning.
Quick start
# Install
pip install mozaia-laws-mcp
# Or run without installing (requires uvx)
uvx mozaia-laws-mcpGet an API key at mozaia.mz/developers (free tier available).
Related MCP server: lawyer-mcp
Installation
pip / uv
pip install mozaia-laws-mcp
uv add mozaia-laws-mcpClaude Desktop
Add to claude_desktop_config.json
(~/Library/Application Support/Claude/ on macOS, %APPDATA%\Claude\ on Windows):
{
"mcpServers": {
"mozaia-laws": {
"command": "mozaia-laws-mcp",
"env": {
"MOZAIA_API_KEY": "sk-mozaia-your-key-here",
"MOZAIA_BASE_URL": "https://api.mozaia.mz"
}
}
}
}Cursor / VS Code (Copilot)
{
"mcp": {
"servers": {
"mozaia-laws": {
"command": "mozaia-laws-mcp",
"env": {
"MOZAIA_API_KEY": "sk-mozaia-your-key-here"
}
}
}
}
}uvx (no install)
{
"mcpServers": {
"mozaia-laws": {
"command": "uvx",
"args": ["mozaia-laws-mcp"],
"env": {
"MOZAIA_API_KEY": "sk-mozaia-your-key-here"
}
}
}
}Configuration
Variable | Required | Default | Description |
| Yes | — | API key ( |
| No |
| Override for on-premise or staging |
| No |
| HTTP timeout in seconds |
Tools
search_semantic — natural language search over articles
The primary search tool. Use it when the user asks a legal question in plain language.
Inputs:
Field | Type | Required | Description |
| string | Yes | Legal question in natural language |
| integer | No | Number of results, max 50 (default: 10) |
Example:
search_semantic(q="qual é o prazo de aviso prévio no contrato de trabalho?")
search_semantic(q="indemnização por despedimento sem justa causa", top_k=5)Returns: ranked article list with excerpt, canonical citation, relevance score, and hit type.
get_law_relationships — normative graph
Reveals the full normative chain: what a diploma revokes, amends, implements, and which later instruments affect it. Use before citing a law to ensure it hasn't been superseded by a downstream instrument.
Inputs:
Field | Type | Required | Description |
| string | Yes | Canonical diploma identifier |
| string | No | Filter: |
Example:
get_law_relationships(law_id="lei_trabalho_2007")
get_law_relationships(law_id="lei_trabalho_2007", relation_type="revokes")Returns: outgoing and incoming relationships with peer law_id, effective date, and confidence score.
list_amendments — article version history
Returns every version of an article since original publication, with the amending law and date of each change. Essential for retroactivity analysis and past-fact disputes.
Inputs:
Field | Type | Required | Description |
| string | Yes | Diploma identifier |
| string | Yes | Article number, e.g. |
Example:
list_amendments(law_id="lei_trabalho_2023", article_number="128")Returns: chronological list of versions — text, version label, amending law, validity range, and is_current flag.
search_laws — find a diploma by name or topic
Use this first when you know a law by name or subject but not its law_id.
Inputs:
Field | Type | Required | Description |
| string | No | Free text: title, number ( |
| string | No | Canonical legal domain, e.g. |
| string | No |
|
| integer | No | Publication year, e.g. |
| integer | No | Page number (default: 1) |
| integer | No | Results per page, max 50 (default: 20) |
Example:
search_laws(q="trabalho", domain="labour_law", year=2023)Returns: paginated list with law_id, title, type, status, legal domain, and quota balance.
get_law_status — check if a diploma is in force
Inputs:
Field | Type | Required | Description |
| string | Yes | Canonical identifier, e.g. |
Example:
get_law_status(law_id="lei_trabalho_2023")Returns: validity status (active / revoked / superseded), revoked_by_law_id when applicable, full citator badge, and publication metadata.
get_article — current text of an article
Inputs:
Field | Type | Required | Description |
| string | Yes | Diploma identifier |
| string | Yes | Article number, e.g. |
Example:
get_article(law_id="lei_trabalho_2023", article_number="70")Returns: full article text, amendment/revocation status, and citator with Boletim da República reference.
get_article_at_date — historical version of an article
Retrieves the exact text that was in force on a given past date. Essential for retroactivity analysis, past-fact disputes, and temporal conflicts between norms.
Inputs:
Field | Type | Required | Description |
| string | Yes | Diploma identifier |
| string | Yes | Article number |
| string | Yes | ISO 8601 date, e.g. |
Example:
get_article_at_date(law_id="codigo_civil_1966", article_number="217", as_of="2019-06-01")Returns: article text at the requested date, version number, validity range, is_current flag, and temporal_alert if the norm changed shortly before or after.
cite — resolve a Portuguese legal citation
Parses a free-text Portuguese citation and resolves it to a structured law_id + article record.
Inputs:
Field | Type | Required | Description |
| string | Yes | Citation string in Portuguese |
Accepted formats:
"Lei n.º 3/2022, artigo 15.º""Decreto-Lei n.º 1/2020""Constituição da República, artigo 70.º""art. 102 do Código Civil"
Example:
cite(citation="Lei n.º 3/2022, artigo 15.º")Returns: parsed_law_number, parsed_article_number, resolved_law, resolved_article, confidence score (0–1), and unresolved_reason when the diploma is not in the database.
Typical agent workflow
1. cite("Lei n.º 23/2007, artigo 128.º")
→ law_id: "lei_trabalho_2007", article: "128", confidence: 0.97
2. get_law_status(law_id="lei_trabalho_2007")
→ status: "revoked", revoked_by: "lei_trabalho_2023"
3. get_article(law_id="lei_trabalho_2023", article_number="128")
→ current text + citator
4. (if analysing a past case)
get_article_at_date(law_id="lei_trabalho_2007", article_number="128", as_of="2018-01-01")
→ text that was in force in 2018Error handling
HTTP | MCP response |
|
|
|
|
|
|
|
|
timeout |
|
Pricing
Tier | Credits/month | Price | Best for |
Community | 1 000 | Free | Evaluation, personal projects |
Institutional | 10 000 | — | Legal firms, NGOs, universities |
Commercial | 50 000 | — | SaaS products, fintechs |
Strategic | 500 000 | — | Platforms, enterprise integrations |
1 credit = 1 API call. Credits reset on the 1st of each month. Get a key and upgrade at mozaia.mz/developers.
Legal domains supported
labour_law · tax_law · family_law · commercial_law · criminal_law · civil_law · administrative_law · constitutional_law · environmental_law · land_law · mining_law · consumer_law · and 30 more.
Full list: search_laws(domain=<domain>) returns an empty list with a 422 if the domain is invalid.
Requirements
Python 3.11+
Network access to
api.mozaia.mz(or your configuredMOZAIA_BASE_URL)A valid
MOZAIA_API_KEY
License
MIT — see LICENSE.
Data provided through this MCP server is subject to the Mozaia Terms of Service.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceMCP server that connects AI to the Chilean legislation system (Ley Chile) for retrieving legal norms, citations, and intertemporal analysis.2281MIT
- FlicenseAqualityDmaintenanceMCP server for Legalize.dev, enabling AI to query and understand legal frameworks across countries via a structured legislation API.131
- AlicenseAqualityAmaintenanceMCP server for querying French legislation and case law via the Legifrance API, enabling search and retrieval of laws, codes, and court decisions with verifiable citations.71Apache 2.0
- AlicenseAqualityBmaintenanceThis MCP server enables searching and retrieving Romanian legislation from the Portal Legislativ database via its SOAP API, providing metadata and full text with verifiable citations.3Apache 2.0
Related MCP Connectors
MCP server for Brazilian Federal Senate open data (legislative, administrative, e-Cidadania).
Connect AI to millions of laws and court cases with the Lawstronaut MCP.
Japan Law MCP — Japanese national laws & ordinances via the e-Gov Law API.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dequive/mozaia-laws-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server