Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Mozaia Laws

БесплатноНе проверен

MCP server for real-time access to Mozambican legislation, enabling search, status checks, article retrieval, historical versions, and citation resolution via t

GitHubEmbed

Описание

MCP server for real-time access to Mozambican legislation, enabling search, status checks, article retrieval, historical versions, and citation resolution via the Mozaia platform.

README

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-mcp

Get an API key at mozaia.mz/developers (free tier available).


Installation

pip / uv

pip install mozaia-laws-mcp
uv add mozaia-laws-mcp

Claude 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
MOZAIA_API_KEY Yes API key (sk-mozaia-<hex>). Get one at mozaia.mz/developers
MOZAIA_BASE_URL No https://api.mozaia.mz Override for on-premise or staging
MOZAIA_TIMEOUT No 30 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
q string Yes Legal question in natural language
top_k 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
law_id string Yes Canonical diploma identifier
relation_type string No Filter: amends, revokes, supersedes, references, complements, conflicts, implements, suspends, exceptions

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
law_id string Yes Diploma identifier
article_number string Yes Article number, e.g. "70"

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
q string No Free text: title, number (3/2022), or partial law_id
domain string No Canonical legal domain, e.g. labour_law, tax_law, family_law
instrument_type string No lei, decreto, codigo, regulamento
year integer No Publication year, e.g. 2022
page integer No Page number (default: 1)
page_size 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
law_id string Yes Canonical identifier, e.g. lei_trabalho_2023, constituicao_2004

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
law_id string Yes Diploma identifier
article_number string Yes Article number, e.g. "15", "70", "102"

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
law_id string Yes Diploma identifier
article_number string Yes Article number
as_of string Yes ISO 8601 date, e.g. "2021-03-15"

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
citation 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 2018

Error handling

HTTP MCP response
401 "Erro: API key inválida ou expirada."
402 "Erro: Quota mensal esgotada. Contactar suporte."
404 {"error": "not_found", "detail": "..."}
422 {"error": "invalid_input", "detail": "..."}
timeout "Timeout ao contactar a API Mozaia. Tente novamente."

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 configured MOZAIA_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.

from github.com/dequive/mozaia-laws-mcp

Установка Mozaia Laws

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/dequive/mozaia-laws-mcp

FAQ

Mozaia Laws MCP бесплатный?

Да, Mozaia Laws MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Mozaia Laws?

Нет, Mozaia Laws работает без API-ключей и переменных окружения.

Mozaia Laws — hosted или self-hosted?

Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.

Как установить Mozaia Laws в Claude Desktop, Claude Code или Cursor?

Открой Mozaia Laws на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Mozaia Laws with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории development