Open Indonesian law MCP server — search 100,000+ regulations (UU, PP, Perpres, etc) with real citations. Connect Claude, Cursor, Windsurf, ChatGPT. https://pasal.id
- ✓Open-source license (AGPL-3.0)
- ✓Actively maintained (<30d)
- ✓Clear description
git clone https://github.com/Aturio/pasal-id-mcp{
"mcpServers": {
"pasal-id-mcp": {
"command": "node",
"args": ["/path/to/pasal-id-mcp/dist/index.js"]
}
}
}MCP Servers overview
# Pasal.id — Indonesian Law MCP Server
**The 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).
- **Live server:** `https://mcp.pasal.id/mcp`
- **Transport:** Streamable HTTP
- **Auth:** OAuth 2.0 — free account at [pasal.id](https://pasal.id)
- **Setup in 30 seconds:** [pasal.id/hubungkan](https://pasal.id/hubungkan)
- **License:** AGPL-3.0
## Why this exists
Indonesian 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.
## Connect
Pick your client. All use the same server URL: `https://mcp.pasal.id/mcp`.
### Claude Code — one command
```bash
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](https://pasal.id/akun):
```bash
claude mcp add --transport http pasal-id https://mcp.pasal.id/mcp \
--header "Authorization: Bearer ${PASAL_MCP_TOKEN}"
```
### Claude Desktop / Cursor / Windsurf / VS Code
All consume the same JSON. Paste into the relevant config file:
```json
{
"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](./docs/clients.md).
### ChatGPT Desktop (April 2026+)
Settings → Developer Tools → Add MCP Server → paste `https://mcp.pasal.id/mcp`.
## Tools
The server exposes eleven intent-level tools to AI assistants:
| Tool | Purpose |
|---|---|
| `search_laws` | Search-first entry point for Indonesian regulation topics, keywords, and citation-like references. |
| `get_pasal` | Retrieve a specific Pasal with ayat context, source URL, PDF provenance, and correction metadata. |
| `get_law_status` | Check whether a regulation is in force, amended, or revoked, including normalized relationship codes. |
| `get_law_overview` | Read canonical metadata, source/provenance, verification, freshness, and compact outline counts. |
| `get_law_structure` | Inspect the hierarchy of Bab, Bagian, Pasal, Pembukaan, Penutup, Penjelasan, and Lampiran without loading the whole law. |
| `get_law_part` | Fetch a bounded part by `node_id`, selector, or special part such as `menimbang`, `mengingat`, `memutuskan`, `penutup`, or `lampiran`. |
| `read_law_section` | Read many Pasal in one call — a range, a whole Bab, or an explicit list — with cross-references resolved; the batch reader for article-by-article walk-throughs. |
| `search_within_law` | Search inside one known regulation after the relevant `law_id` is clear. |
| `report_issue` | Report OCR mistakes, missing regulations, missing Pasal, broken links, outdated content, or other data quality issues. |
| `list_laws` | Browse regulations with type, year, status, title, issuing body, and pagination filters. |
| `search_court_decisions` | Search Constitutional Court (Mahkamah Konstitusi) decisions by reviewed law, lane (PUU/SKLN/PHPU/PHPKADA), ruling, year, dissent, or judge. |
Schemas + example calls: [docs/tools.md](./docs/tools.md).
## Example prompts
Once connected, ask your AI assistant questions like:
- "Explain Pasal 81 of the UU Cipta Kerja on employment."
- "Is the 1974 Marriage Law still in force?"
- "What are contract workers' rights under Indonesian law?"
- "Compare worker rights before and after the Job Creation Law."
- "What is the minimum marriage age in Indonesia?"
- "Tampilkan struktur UU ITE dan ambil bagian Menimbang serta Pasal 27."
- "Cari dalam UU PDP bagian tentang pengendali data, lalu cek status peraturannya."
- "Saya menemukan OCR yang salah di Pasal ini; laporkan koreksinya ke Pasal.id."
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.
## About the data
- **Primary source:** [peraturan.go.id](https://peraturan.go.id) (Ministry of State Secretariat).
- **Secondary sources:** [BPK JDIH](https://peraturan.bpk.go.id) (69 regulation types), [JDIH MK](https://jdih.mkri.id) (Constitutional Court), [JDIHN](https://jdihn.go.id) (regional regulations).
- **Verification:** Gemini 3 Flash cross-checks every parsed document against the source PDF. Unverified regulations are flagged.
- **Updates:** New regulations ingested within 24–48 hours of publication.
- **Gaps:** See [pasal.id/metodologi](https://pasal.id/metodologi) for known limitations.
## Contributing
Pasal.id itself lives in a private repository — but this repo is public and we welcome:
- **Corrections** to the public MCP surface (README, install snippets, docs).
- **Bug reports** against the live server via [GitHub Issues](https://github.com/Aturio/pasal-id-mcp/issues) or [pasal.id/masukan](https://pasal.id/masukan).
- **Feature requests** — especially new MCP tools or improvements to existing ones.
PRs to the source regulations database happen through the crowd-correction workflow at [pasal.id](https://pasal.id): any user can highlight a passage and suggest a fix; our team reviews and merges within days.
## Related projects
- [pasal.id](https://pasal.id) — web reader with full search, law detail pages, and crowd corrections.
- [pasal.id/api](https://pasal.id/api) — REST API (same data, same authentication, for non-MCP integrations).
## License
AGPL-3.0 — see [LICENSE](./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](https://github.com/Aturio) · Maintained by [Ilham Firdausi Putra](https://github.com/ilhamfp).
What people ask about pasal-id-mcp
What is Aturio/pasal-id-mcp?
+
Aturio/pasal-id-mcp is mcp servers for the Claude AI ecosystem. Open Indonesian law MCP server — search 100,000+ regulations (UU, PP, Perpres, etc) with real citations. Connect Claude, Cursor, Windsurf, ChatGPT. https://pasal.id It has 0 GitHub stars and was last updated today.
How do I install pasal-id-mcp?
+
You can install pasal-id-mcp by cloning the repository (https://github.com/Aturio/pasal-id-mcp) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is Aturio/pasal-id-mcp safe to use?
+
Our security agent has analyzed Aturio/pasal-id-mcp and assigned a Trust Score of 79/100 (tier: Trusted). See the full breakdown of passed checks and flags on this page.
Who maintains Aturio/pasal-id-mcp?
+
Aturio/pasal-id-mcp is maintained by Aturio. The last recorded GitHub activity is from today, with 0 open issues.
Are there alternatives to pasal-id-mcp?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy pasal-id-mcp to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/aturio-pasal-id-mcp)<a href="https://claudewave.com/repo/aturio-pasal-id-mcp"><img src="https://claudewave.com/api/badge/aturio-pasal-id-mcp" alt="Featured on ClaudeWave: Aturio/pasal-id-mcp" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
The fastest path to AI-powered full stack observability, even for lean teams.
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!
⭐AI-driven public opinion & trend monitor with multi-platform aggregation, RSS, and smart alerts.🎯 告别信息过载,你的 AI 舆情监控助手与热点筛选工具!聚合多平台热点 + RSS 订阅,支持关键词精准筛选。AI 智能筛选新闻 + AI 翻译 + AI 分析简报直推手机,也支持接入 MCP 架构,赋能 AI 自然语言对话分析、情感洞察与趋势预测等。支持 Docker ,数据本地/云端自持。集成微信/飞书/钉钉/Telegram/邮件/ntfy/bark/slack 等渠道智能推送。