sg-eli-mcp
An MCP server for Singapore Statutes Online (SSO, sso.agc.gov.sg), the Attorney-General's
Chambers' official portal for Singapore legislation. It browses, fetches, and cites Acts, with
a verifiable citation on every response.
Part of the MateMatic eu-legal-mcp production line, extended into Asia alongside jp-eli-mcp.
Same citation contract (a stable identifier + a human-readable citation + a source URL),
adapted for a jurisdiction with no ELI and no public search API.
Scope. SSO's
robots.txtdisallows/search; discovery here is by browsing the current Acts listing (sg_list_acts, paginated), not by title or keyword query. Fetch a specific section (sg_get_provision) or the full text (sg_get_full_text, truncated for very large Acts). Every response carries adataset_note.Licence. SSO legislation is official public information published by the Singapore government. This connector relays it with attribution and a
source_url, respectsrobots.txt(no/searchcalls), and does not cache more aggressively than a normal browser visit would.
The tools
| Tool | What it does |
|---|---|
sg_list_acts | Browse the current Acts, paginated (no keyword search - see Scope above). |
sg_get_provision | The text of one numbered section of an Act, by act_code and section number. |
sg_get_full_text | The full text of an Act (truncated at ~300,000 characters). |
Every response carries the contract: eli_uri (Singapore has no ELI - this is the durable SSO
act URL, e.g. https://sso.agc.gov.sg/Act/CoA1967, see eli_note), human_readable_citation
(the Act title as SSO itself renders it, e.g. Companies Act 1967), and source_url.
Install
Not yet on PyPI - install from source until the first release ships:
git clone https://github.com/matematicsolutions/sg-eli-mcp
cd sg-eli-mcp
pip install -e .
Once released, this will be uvx sg-eli-mcp.
Configuration via env:
SG_ELI_BASE_URL- defaulthttps://sso.agc.gov.sgSG_ELI_CACHE_DIR- default~/.matematic/cache/sg-eliSG_ELI_AUDIT_DIR- default~/.matematic/audit
No API key. SSO is keyless.
Configure (Claude Code / any MCP client)
{
"mcpServers": {
"sg-eli-mcp": { "command": "sg-eli-mcp" }
}
}
Governance
- Public data only - read-only against SSO; no client data leaves the machine.
- Robots-compliant - never calls
/search(disallowed by SSO'srobots.txt); discovery uses only the allowed/Browselisting. - Audit log - every tool call appends one JSON line to
~/.matematic/audit/sg-eli-mcp.jsonl. - Vendor-neutral - talks only to
sso.agc.gov.sg; no LLM provider, no telemetry. - Verifiable citations - every response is independently checkable via
source_url.
See CONSTITUTION.md and DISCOVERY.md.
Tests
pip install -e ".[dev]"
pytest tests/test_instructions_drift.py -v # offline
pytest tests/test_smoke.py -v # hits live SSO
Licence
Apache-2.0. © Matematic Solutions / Wieslaw Mazur.