关于 australian-law-mcp
australian-law-mcp 是面向法律研究和引用核验的 MCP 服务,实时读取澳大利亚联邦立法登记册。可查询历史日期的法律原文,并检查法案、条文及修订状态。
主要功能
- 01按名称搜索法律
- 02查询现行及历史条文
- 03核验法律引用和条文
- 04查看修订及生效状态
- 05比较不同日期的版本
- 06全文检索联邦立法
适用场景
- 01核对过去某日适用的法律
- 02检查合同或诉讼材料中的条文引用
- 03追踪修正案是否生效
- 04搜索联邦立法全文
MCP 相关
作为 MCP 服务向客户端提供澳大利亚联邦立法搜索、文本查询、引用核验和版本比较等工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
8收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | integer | 否 | |
| query | string | 是 | 标题中的词语,例如 "income tax rates" |
详细介绍
australian-law-mcp
适用于 Federal Register of Legislation 的 MCP 服务。 询问澳大利亚法律在任意日期的内容,并在依赖引文之前,先对照官方登记册进行核验。无需 API 密钥,也无需注册。
所有内容都通过联邦政府自己的立法 API 实时提供:
超过 130,000 部法律和立法文书,以及每部法律的所有汇编,时间可追溯至
1901 年。该登记册是联邦法律的权威来源,并原生发布特定时间点的版本,
因此 get_law_as_at 返回的是指定日期实际生效的文本,而非重构版本。
快速开始
Claude Code:
claude mcp add australian-law -- npx -y australian-law-mcp
Claude Desktop、Cursor 或其他任何 stdio MCP 客户端:
{
"mcpServers": {
"australian-law": {
"command": "npx",
"args": ["-y", "australian-law-mcp"]
}
}
}
需要 Node 20 或更高版本。无需安装其他内容——npx 会在首次运行时获取
该软件包。
如果不想在主机上安装 Node,也可以使用 Dockerfile。该服务通过 stdio 通信,
因此容器需要 -i:
docker build -t australian-law-mcp .
docker run -i --rm australian-law-mcp
工具
| 工具 | 功能 |
|---|---|
search_law | 按名称查找法律和文书。返回其他工具所需的标题 ID。 |
get_law_text | 当前汇编:条款目录、单个条文,或分页的全文。也可按附表查询(section="Schedule 7"),费率表和表格实际位于附表中。 |
get_law_as_at | 功能相同,但返回法律在过去任意日期的内容。 |
verify_citations | 从文本中提取法规引文,并逐一对照登记册核验:法规是否存在、是否生效、所引条文是否存在。上游故障会返回 UNVERIFIED,绝不会误报为法律不存在。 |
get_amendment_status | 查询法规是否生效或已废止、最新汇编纳入了哪些内容、已开始施行的修正是否尚未纳入,以及该法规被哪些法规修正。 |
compare_versions | 查看两个日期之间的变化:新增、删除或改写的条文,或单个条文的逐行差异。 |
search_full_text | 对登记册中所有标题的正文进行相关性排序搜索。 |
check_frl_health | Ping 登记册 API,以便判断其他位置发生的故障是否由其引起。 |
docs/tools.md 列出了参数和每个工具的完整示例, 包括每个工具无法回答时的处理方式。
为什么特定时间点很重要
税务争议、签证决定、合同和法院案件都取决于法律在过去某一天的内容,而 模型却总是可靠地给出今天的法律。登记册保存了每个汇编及其精确的生效时间段:
get_law_as_at titleId=C2004A03348 date=2017-01-05 section=3A
→ As at 2017-01-05: Income Tax Rates Act 1986, Compilation No. 48
s 3A Working holiday makers and working holiday taxable income ...
verify_citations 则是防止另一类错误的安全措施——模型编造从未颁布过的条文:
verify_citations text="See s 3A and s 999 of the Income Tax Rates Act 1986."
→ [OK] Income Tax Rates Act 1986 [C2004A03348] — in force.
[OK] s 3A exists: "Working holiday makers and working holiday taxable income"
[NOT FOUND] s 999 — Provision 999 was not found in this compilation. It has
28 sections and 6 schedules. Closest by number: s 30, s 29, s 28
像这样的工具可能犯下的最严重错误,就是把真实法律报告为不存在。因此, 网络和 API 错误始终报告为 UNVERIFIED,而不是 NOT FOUND;只有在引文确实 将条文与法规关联起来时,才会对照该法规核验条文。
同一规则也适用于文本本身。自 1901 年以来,登记册发布过三种不同格式,而 最早的格式——联邦成立时期的法规原始扫描件——完全没有结构化标记,只有 正文中的编号。系统会根据其自身编号读取这些文件,并且只有在读取到的条文 编号从第 1 条开始连续递增时才接受结果。如果编号不连续,工具会说明无法读取 该汇编,而不会报告法规没有条文,也不会把某一条的内容归到另一条的编号下。
范围
本项目仅涵盖联邦立法。各州的登记册要么没有开放 API(Vic),要么设有机器人 验证(NSW),要么要求注册(Qld)。判例法数据库(AustLII、Jade)不允许自动 访问,因此没有判例法工具。ATO 裁定也无法通过机器访问。如果这些情况发生 变化,项目范围也可以扩大。
数据来源与许可
立法内容来自 Federal Register of Legislation API,由澳大利亚联邦政府根据 CC BY 4.0 授权;每份转载登记内容的响应均附有登记处要求的署名。本项目独立运营,与 Parliamentary Counsel 办公室或澳大利亚政府无关,也未获得其认可。输出内容属于法律信息,不构成法律建议——任何法律的权威版本均为登记处发布的版本。
代码采用 MIT 许可证。
开发
npm install
npm test # build + unit tests (offline)
node scripts/smoke.mjs # live API smoke test
node scripts/protocol-test.mjs # stdio round trip against the live API
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。