vn_law_get
Pack: vietnam-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/vn_law_get for the schema, then POST the same URL with its arguments for the data.
Fetch one Vietnamese legal document by id from vn_law_search (e.g. “214590” for Luật Bảo vệ dữ liệu cá nhân) or by its number (e.g. “91/2025/QH15”). Returns type, issuing body, signer, issue date, effective date, an effective-date-based status (the system does not track repeal or amendment, so “effective” means the date has passed, not that the text is unamended), and the attachment link. Text is returned only when the signed PDF attachment has a text layer; the major laws and decrees are published as scanned images, for which text is null with empty_reason (no OCR). Pass article (e.g. “8”) for one Điều only; otherwise text is capped at max_chars. Word-format attachments are returned as a link without text.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
id | string | yes | Numeric document id from vn_law_search, or the document number such as “13/2023/NĐ-CP” |
article | string | no | Article (Điều) number, e.g. “8” or “8a”; returns that article only |
max_chars | number | no | Cap on returned text when no article is given (default 20000, max 100000) |
Example call
Arguments
{
"id": "91/2025/QH15"
}
curl
curl -X POST https://gateway.pipeworx.io/vietnam-law/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"vn_law_get","arguments":{"id":"91/2025/QH15"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('vn_law_get', {
"id": "91/2025/QH15"
});
Response shape
| Field | Type | Description |
|---|---|---|
found | boolean | |
id | string | |
number | string | null | |
title | string | null | |
type | string | |
issued_by | string | |
signed_by | string | |
issued | string | null | |
effective_from | string | null | |
status | string | |
status_note | string | |
attachments | array | |
url | string | |
citation | string | |
source | string | |
data_as_of | string | |
text | string | null | |
pages | number | |
empty_reason | string | |
article | string | |
text_from | string | |
article_count | number | |
truncated | boolean | |
total_chars | number |
Full JSON Schema
{
"type": "object",
"properties": {
"found": {
"type": "boolean"
},
"id": {
"type": "string"
},
"number": {
"type": [
"string",
"null"
]
},
"title": {
"type": [
"string",
"null"
]
},
"type": {
"type": "string"
},
"issued_by": {
"type": "string"
},
"signed_by": {
"type": "string"
},
"issued": {
"type": [
"string",
"null"
]
},
"effective_from": {
"type": [
"string",
"null"
]
},
"status": {
"type": "string"
},
"status_note": {
"type": "string"
},
"attachments": {
"type": "array",
"items": {
"type": "string"
}
},
"url": {
"type": "string"
},
"citation": {
"type": "string"
},
"source": {
"type": "string"
},
"data_as_of": {
"type": "string"
},
"text": {
"type": [
"string",
"null"
]
},
"pages": {
"type": "number"
},
"empty_reason": {
"type": "string"
},
"article": {
"type": "string"
},
"text_from": {
"type": "string"
},
"article_count": {
"type": "number"
},
"truncated": {
"type": "boolean"
},
"total_chars": {
"type": "number"
}
},
"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 vietnam-law pack
{
"mcpServers": {
"vietnam-law": {
"url": "https://gateway.pipeworx.io/vietnam-law/mcp"
}
}
}
See Getting Started for client-specific install steps.