br_law_search
Pack: brazil-law · Connect: https://pipeworx.io/mcp (see Connect below for a single-pack URL)
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/br_law_search for the schema, then POST the same URL with its arguments for the data.
Search Brazilian federal legislation (leis, leis complementares, decretos-lei, decretos, medidas provisórias, emendas constitucionais, decretos legislativos). Give type + number + year to find one norm (e.g. type LEI, number 13709, year 2018), or a Portuguese keyword in query (matched against the title line and popular name, e.g. “proteção de dados”, “licitações”) with year or year_from/year_to to bound the scan (default: the last 8 years; the response says which years were scanned). Returns norm (id like “LEI-13709-2018-08-14”), code, title, summary line (ementa) and signature date; pair with br_law_get for the text.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
query | string | no | Portuguese keyword or phrase, e.g. “proteção de dados” |
type | string | no | LEI, LCP (complementar), DEL (decreto-lei), DEC (decreto), MPV, EMC (emenda constitucional), DLG (decreto legislativo) |
number | number | no | Norm number, e.g. 13709 |
year | number | no | Year of signature, e.g. 2018 |
year_from | number | no | First year of a keyword scan |
year_to | number | no | Last year of a keyword scan (max 15 years from year_from) |
Example call
Arguments
{
"query": "proteção de dados pessoais",
"year_from": 2016,
"year_to": 2020
}
curl
curl -X POST https://gateway.pipeworx.io/brazil-law/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"br_law_search","arguments":{"query":"proteção de dados pessoais","year_from":2016,"year_to":2020}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('br_law_search', {
"query": "proteção de dados pessoais",
"year_from": 2016,
"year_to": 2020
});
Response shape
| Field | Type | Description |
|---|---|---|
query | string | |
filters | object | |
years_scanned | string | |
total_matches | number | |
count | number | |
results | array | |
note | string | |
source | string | |
data_as_of | string |
Full JSON Schema
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"filters": {
"type": "object",
"properties": {
"type": {
"type": "null"
},
"number": {
"type": "null"
},
"year": {
"type": "null"
}
},
"additionalProperties": true
},
"years_scanned": {
"type": "string"
},
"total_matches": {
"type": "number"
},
"count": {
"type": "number"
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"norm": {
"type": "string"
},
"code": {
"type": "string"
},
"type": {
"type": "string"
},
"title": {
"type": "string"
},
"summary": {
"type": "string"
},
"signed": {
"type": "string"
},
"popular_name": {
"type": [
"null",
"string"
]
},
"url": {
"type": "string"
}
},
"additionalProperties": true
}
},
"note": {
"type": "string"
},
"source": {
"type": "string"
},
"data_as_of": {
"type": "string"
}
},
"additionalProperties": true
}
Connect
Add this to your MCP client config — every tool in the catalog, including this one — or use one-click install buttons:
{
"mcpServers": {
"pipeworx": {
"url": "https://pipeworx.io/mcp"
}
}
}
Connect to just the brazil-law pack
{
"mcpServers": {
"brazil-law": {
"url": "https://gateway.pipeworx.io/brazil-law/mcp"
}
}
}
See Getting Started for client-specific install steps.