Pulls structured legal data from Indonesia's official regulation portals (peraturan.go.id, BPK JDIH, JDIH MK) and makes 100,000+ regulations searchable at the pasal (article) level. You get ten tools: search by topic or citation, fetch specific articles with ayat context, check amendment status, pull regulation structure without loading the full text, batch-read entire chapters, and report OCR errors back to the corpus. Uses OAuth 2.0 over streamable HTTP. Reach for this when you need grounded answers about Indonesian law with real citations instead of hallucinated references. Every retrieved pasal includes PDF provenance and verification metadata. Free account at pasal.id, AGPL-3.0 licensed.
Public tool metadata for what this MCP can expose to an agent.
search_lawsCari full-text di peraturan perundang-undangan Indonesia.6 paramsCari full-text di peraturan perundang-undangan Indonesia.
limitintegerquerystringyear_tointegerlanguagestringyear_fromintegerregulation_typestringget_pasalAmbil teks resmi Pasal tertentu dari peraturan Indonesia.5 paramsAmbil teks resmi Pasal tertentu dari peraturan Indonesia.
yearintegerlaw_idintegerlaw_typestringlaw_numberstringpasal_numberstringget_law_statusCek apakah peraturan Indonesia masih berlaku, diubah, atau dicabut.4 paramsCek apakah peraturan Indonesia masih berlaku, diubah, atau dicabut.
yearintegerlaw_idintegerlaw_typestringlaw_numberstringget_law_overviewTampilkan metadata kanonik, provenance, sumber, dan struktur satu peraturan Indonesia.4 paramsTampilkan metadata kanonik, provenance, sumber, dan struktur satu peraturan Indonesia.
yearintegerlaw_idintegerlaw_typestringlaw_numberstringget_law_structureLihat hierarki Bab, Bagian, Pasal, Pembukaan, Penutup, dan Lampiran satu peraturan tanpa memuat seluruh teks.6 paramsLihat hierarki Bab, Bagian, Pasal, Pembukaan, Penutup, dan Lampiran satu peraturan tanpa memuat seluruh teks.
yearintegerdepthintegerlaw_idintegerlaw_typestringlaw_numberstringinclude_special_partsbooleanget_law_partAmbil bagian tertentu dari satu peraturan, seperti Bab II, Pembukaan, Menimbang, Mengingat, Memutuskan, Penutup, Lampiran, atau node_id dari struktur.8 paramsAmbil bagian tertentu dari satu peraturan, seperti Bab II, Pembukaan, Menimbang, Mengingat, Memutuskan, Penutup, Lampiran, atau node_id dari struktur.
cursorstringlaw_idintegernumberstringnode_idintegermax_charsintegernode_typestringpart_typestringpreamble · menimbang · mengingat · memutuskan · menetapkan · penutupinclude_childrenbooleansearch_within_lawCari istilah atau frasa di dalam satu peraturan yang sudah diketahui.6 paramsCari istilah atau frasa di dalam satu peraturan yang sudah diketahui.
yearintegerlimitintegerquerystringlaw_idintegerlaw_typestringlaw_numberstringreport_issueLaporkan masalah data Pasal.id dari alur MCP, seperti OCR salah, peraturan hilang, Pasal hilang, tautan rusak, atau konten usang.13 paramsLaporkan masalah data Pasal.id dari alur MCP, seperti OCR salah, peraturan hilang, Pasal hilang, tautan rusak, atau konten usang.
yearintegertitlestringlaw_idintegernode_idintegerlaw_typestringlaw_numberstringdescriptionstringreport_typestringocr_correction · missing_regulation · missing_pasal · incorrect_content · broken_link · outdated_contentpasal_numberstringcontact_emailstringreference_urlstringcurrent_contentstringsuggested_contentstringlist_lawsJelajahi daftar peraturan Indonesia dengan filter jenis, tahun, status, dan judul.7 paramsJelajahi daftar peraturan Indonesia dengan filter jenis, tahun, status, dan judul.
pageintegeryearintegersearchstringstatusstringper_pageintegerissuing_bodystringregulation_typestringThe first open, AI-native Indonesian legal database. Gives Claude and any MCP-compatible AI assistant grounded, citation-ready access to 100,000+ Indonesian regulations — UU, PP, Perpres, PERMEN, PERDA, and 20+ other regulation types — directly from authoritative sources (peraturan.go.id, BPK JDIH, JDIH MK, JDIHN).
https://mcp.pasal.id/mcpIndonesian law is scattered across dozens of government portals, each with its own PDF quirks and status ambiguities. Most LLM answers about Indonesian regulations are hallucinated — the training data is thin, and the live web isn't indexed for precise legal retrieval.
Pasal.id consolidates 100,000+ regulations into structured data (pasal-level granularity, whole-law hierarchy, preamble sections, amendment history, and legal-status provenance) and exposes it to AI assistants via MCP. Every answer an LLM gives using this server can be grounded in a specific article, regulation part, and authoritative source.
Pick your client. All use the same server URL: https://mcp.pasal.id/mcp.
claude mcp add --transport http pasal-id https://mcp.pasal.id/mcp
Claude Code will open a browser window for OAuth on first use. For CI/automation, use a personal access token from pasal.id/akun:
claude mcp add --transport http pasal-id https://mcp.pasal.id/mcp \
--header "Authorization: Bearer ${PASAL_MCP_TOKEN}"
All consume the same JSON. Paste into the relevant config file:
{
"mcpServers": {
"pasal-id": {
"type": "http",
"url": "https://mcp.pasal.id/mcp",
"headers": {
"Authorization": "Bearer ${PASAL_MCP_TOKEN}"
}
}
}
}
| Client | Config file |
|---|---|
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) · %APPDATA%\Claude\claude_desktop_config.json (Windows) |
| Cursor | ~/.cursor/mcp.json or .cursor/mcp.json (workspace) |
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
| VS Code MCP | .vscode/mcp.json (workspace) |
| Claude Code | .mcp.json (project root) |
Full per-client walkthrough: docs/clients.md.
Settings → Developer Tools → Add MCP Server → paste https://mcp.pasal.id/mcp.
The server exposes six task-oriented tools to AI assistants (v2.0.0 — the earlier eleven-tool surface keeps working for existing integrations but is deprecated and scheduled for removal after August 2026):
| Tool | Purpose |
|---|---|
search_legal | Find regulations when you do not yet know which law applies — topics, keywords, or messy citations, with validated granular filters (multiple types, year, status, issuing body, region) and diagnostics that explain zero results. |
resolve_law | Turn any reference — "KUHP", "UU 13/2003", "Pergub DKI 220 tahun 2010", a pasted title — into a canonical law_id, or get disambiguation candidates instead of a guess. |
get_law_context | Compact orientation on one law: summary (status, structure counts, top-level outline), a pasal-range-compressed outline, or typed relationship groups (amendments, court reviews) — token-budgeted. |
read_law | Read text with forgiving selectors: pasal 27, pasal 27-30, bab III, menimbang, penjelasan pasal 5, lampiran, all — with cursors, char budgets, and explicit missing reporting. |
search_court_decisions | Search Constitutional Court (Mahkamah Konstitusi) decisions by reviewed law, lane (PUU/SKLN/PHPU/PHPKADA), ruling, year, dissent, or judge. |
report_issue | Report data problems; the search_failure type ("I searched X and expected law Y") feeds the search regression suite directly. |
Every v2 response carries a request_id and structured diagnostics; errors are
typed (error_code + recovery guidance + valid_values) so assistants can
self-correct instead of retrying blindly. The canonical workflow: resolve_law
when you know the law → get_law_context to orient → read_law for text;
search_legal when you don't.
Schemas + example calls: docs/tools.md.
Once connected, ask your AI assistant questions like:
The assistant should search first, retrieve only the needed Pasal or regulation part, verify status/provenance when the answer depends on currency, and use report_issue when the parsed corpus has a real data problem.
Pasal.id itself lives in a private repository — but this repo is public and we welcome:
PRs to the source regulations database happen through the crowd-correction workflow at pasal.id: any user can highlight a passage and suggest a fix; our team reviews and merges within days.
AGPL-3.0 — see LICENSE.
The MCP server code and the regulation data are both open. Attribution is appreciated; commercial derivatives must remain open-source under the same license.
Built by Aturio · Maintained by Ilham Firdausi Putra.
com.mcparmory/google-search
io.github.pipeworx-io/brave-search
marcopesani/mcp-server-serper
brave/brave-search-mcp-server
com.mcparmory/google-search-console
acamolese/google-search-console-mcp