关于 Legalize
Legalize 是面向法律检索的远程 MCP 服务,供 AI 客户端读取和搜索其各国立法语料。它可返回指定日期的法律全文、引用和对应的公开 Git 提交;语料查询为只读。
主要功能
- 01按标题或官方编号搜索法律
- 02读取法律全文或指定条文
- 03查询指定日期的法律版本
- 04比较不同日期的法律文本
- 05查看修订历史与语料统计
适用场景
- 01核对法律在过去某日的文本
- 02比较法律在两个日期间的变化
- 03追溯修订该法律的规范
- 04查询语料覆盖国家和规模
MCP 相关
Legalize 提供需登录的无状态 Streamable HTTP MCP 服务,供客户端调用法律语料查询及账户订阅工具。语料读取工具为只读;订阅变更通知可通过 Webhook 或每日邮件摘要管理。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://legalize.dev/mcpclaude mcp add --transport http dev-legalize-legalize https://legalize.dev/mcp{"mcpServers":{"dev-legalize-legalize":{"type":"http","url":"https://legalize.dev/mcp"}}}在 Cursor 中打开{"servers":{"dev-legalize-legalize":{"type":"http","url":"https://legalize.dev/mcp"}}}在 VS Code 中打开{"mcpServers":{"dev-legalize-legalize":{"type":"http","url":"https://legalize.dev/mcp"}}}{"mcpServers":{"dev-legalize-legalize":{"serverUrl":"https://legalize.dev/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
Legalize——整合立法 MCP 连接器
查询法律在过去任意日期的内容,并获取引文和对应的 git 提交记录。你的助手基于语料库作答,而不是凭记忆回答。
将你的 AI 客户端(Claude、ChatGPT、Cursor、VS Code、Gemini CLI……)连接到 Legalize,用日常语言询问立法内容。每个回答都会附带模型无法编造的三项内容:
- 📜 法律原文——整部法律或完整条文,绝不会是截断的片段。
- 🕰️ 日期——不仅能查到当前措辞,还能查到你指定日期当日有效的版本。
- 🔗 引文和 git SHA——公共语料库中保存这些确切字节的提交记录,方便对方核对引文。
一个远程端点:
https://legalize.dev/mcp需要登录。访问 legalize.dev/mcp 查看实时信息,该页面会显示当前覆盖范围和用量限额。
快速连接
这是一个远程服务(Streamable HTTP,无状态)。无需安装任何内容:将 URL 提供给客户端,首次调用工具时,客户端会引导你完成登录。
如果你使用以下客户端之一,只需点击一下:
前三个按钮会预填名称和地址,然后提示你确认并登录。ChatGPT 会打开创建连接器表单——它不接受服务器参数,因此请在「高级」中开启开发者模式,然后自行粘贴 https://legalize.dev/mcp。
Claude.ai · Claude Desktop(连接器)
设置 → 连接器 → 添加自定义连接器 → 粘贴 https://legalize.dev/mcp。
Claude Code(CLI)
claude mcp add --transport http legalize https://legalize.dev/mcp
Cursor
使用上方按钮,或在 ~/.cursor/mcp.json 中配置:
{
"mcpServers": {
"legalize": {
"url": "https://legalize.dev/mcp"
}
}
}
VS Code(GitHub Copilot)
使用上方按钮,或在 .vscode/mcp.json 中配置:
{
"servers": {
"legalize": {
"type": "http",
"url": "https://legalize.dev/mcp"
}
}
}
ChatGPT
设置 → 连接器 → 高级 → 开启开发者模式,然后创建连接器并粘贴 https://legalize.dev/mcp。此客户端没有安装链接:ChatGPT 只能深度链接到其自有目录中列出的应用,而自定义连接器仅在 Plus 或 Pro 订阅且开启开发者模式后可用。
Gemini CLI 和其他客户端
{
"mcpServers": {
"legalize": {
"httpUrl": "https://legalize.dev/mcp"
}
}
}
任何支持远程 MCP 的客户端都能使用。如果你的客户端只支持 stdio,可通过桥接来连接:
npx mcp-remote https://legalize.dev/mcp
工具
这里的任何内容都无法更改法律。 连接器只能只读访问语料库:没有工具会修改文本、版本或历史记录,因为这些内容来自 git 仓库,而此服务无法访问这些仓库。模型读取的完整工具说明(含所有参数及其类型)由运行中的服务实时发布于 /mcp/tools.json。
| 工具 | 它能回答什么 |
|---|---|
list_countries | 语料库包含哪些国家,以及每个国家有多少部法律。 |
search_laws | 按标题中的词语或官方编号查找规范。返回其他工具都会用到的 id。 |
get_law | 阅读规范当前的内容——全文或其中一条。 |
law_at_date | 查看规范在某一天的内容,以及该版本对应的 git SHA。 |
diff_law | 查看两个日期之间的改动,以两份文本的统一差异形式呈现。 |
reform_history | 查看哪些规范修订了这一规范、修订时间,以及每项修订说明涉及的内容。 |
law_stats | 在深入查看之前,了解语料库的规模及其变动情况。 |
其余工具用于管理你自己的订阅——这是阅读语料库无法回答的唯一问题:它发生变化时告诉我。这些工具是唯一会写入任何内容的工具;写入的内容是你账号自己的订阅,而且需要付费方案。
同一条规则,两种接收方式。Webhook 会将每次变更发送到你运行的服务;摘要邮件会将一天内的变更汇总到你的收件箱:
| 工具 | 功能 |
|---|---|
preview_webhook | 根据最近 30 天的记录试运行订阅规则,不创建任何内容:显示它会发送多少个事件,以及具体是哪些事件。适用于任一种接收方式——它试运行的是规则,而非目的地。 |
create_webhook ✎ | 订阅你自己的 HTTPS 端点,以接收法律变更。可限定为特定法律、标题和主题标题中的词语,或特定国家。不会返回签名密钥:它可以伪造投递内容,而工具返回的任何内容都会留在对话记录中。请在控制面板中获取并轮换密钥。 |
list_webhooks | 列出此账号已有的端点,以及另外两个工具会用到的 id。绝不返回密钥。 |
set_webhook_enabled ✎ | 暂停一个端点,或重新启用它。端点、规则和历史记录都会保留。 |
delete_webhook ✎ | 删除一个端点。投递会停止,其历史记录也会一并删除。 |
create_email_digest ✎ | 使用相同的规则,但改为每天发送一封邮件——这是无需运行任何程序也能接收的版本。lang 选择邮件的语言,而不是法律的语言。 |
list_email_digests | 列出此账号收到的摘要邮件,包括每项的规则和语言,以及另外两个工具会用到的 id。 |
set_email_digest_enabled ✎ | 暂停邮件,或重新启用。暂停的摘要会保留进度:暂停期间错过的内容会在恢复后的第一封邮件中送达。 |
delete_email_digest ✎ | 永久停止一项摘要。日后重新创建时,会从当天开始,不会补发间隔期间的内容。 |
**摘要邮件会发送到账号自己的地址,且没有可填写其他地址的参数。**这不是疏漏:允许自由填写收件人,就会让连接器变成一种工具,可以凭模型的一句话,以我们的域名向他人发送邮件。
请收窄订阅范围,否则你会不再阅读收到的内容。过滤条件按 AND 组合;对于永远不可能匹配的规则——例如未知国家或语料库中不存在的法律 ID——系统会拒绝,而不是保存。文本过滤条件只适用于一种语言:法律以各自的语言撰写,因此 proteccion de datos 能找到西班牙语法律,却找不到葡萄牙语的 protecao de dados。
标记为 ✎ 的工具会向客户端声明 readOnlyHint: false,因此,会在写入前请求确认的客户端也会在调用这些工具前请求确认。创建订阅需要付费方案;暂停和删除则在任何方案下都不需要付费,因为最需要关闭投递的账号,往往正是方案刚刚到期的账号。没有此功能的方案调用创建操作时,会返回结构化的 feature_not_available 错误,且不会创建任何内容——在方案恢复之前,也不会向端点或收件箱投递任何内容。两种投递都不是即时的:Webhook 会经过签名并按日批处理(格式和验证器),摘要邮件每天发送一封;若某天没有匹配项,则完全不会发送邮件。
每个工具都返回相同的封装——data、citation、url、source、note——每个结果都会链接回 legalize.dev 上对应的页面。工具级失败指的是一次成功调用,其 data 中包含结构化错误,说明下一步该怎么做,这样模型就能自行纠正,而不是靠猜。
示例(向你的助手提问)
- “2023 年 3 月,《西班牙公司法》第 348 条之二规定了什么?”
- “自 2020 年以来,《法国劳动法典》在这一点上有变化吗?请展示差异。”
- “哪些规范修订了这部法律,分别是什么时候?”
- “Legalize 实际收录了多少拉脱维亚立法?”
- “西班牙的数据保护事项有任何变化时,每天早上用西班牙语给我发邮件。”
身份验证
必须登录;不支持匿名访问。 每次调用都与一个账户关联,未经身份验证的请求会返回 401,并附带启动 OAuth 流程的 WWW-Authenticate 质询。
客户端会从 https://legalize.dev/.well-known/oauth-protected-resource 发现授权服务器,动态注册自身,并在浏览器中引导你登录一次。之后客户端会持有令牌,你不必再看到握手过程。无需在任何地方粘贴 API 密钥。
限额
我们提供每月免费额度,并设有每分钟突发请求限制。这里有意不写明这两个数值——它们一旦变更,数字就会过时;README 悄悄写错限额,比直接指向限额页面更糟。实时限额请见 legalize.dev/mcp 和 legalize.dev/pricing。
不会改变的是:超出每月额度后,连接器会返回 quota_exceeded,并停止服务,直到下个月开始——不会收费,也不会悄无声息地切断服务。每个套餐都包含所有国家。
引用前须知
大部分语料库内容都是整合版:修正内容已并入正文,因此你看到的是现行法律文本。但也有一些不是。标记为颁布时文本的内容会附带标记,并列出修订它的规范,且绝不会作为现行法律返回——但只有在将引文粘贴到法律意见书之前先查看标记,它才有用。
另有三项限制值得了解:
- 日期对应的是截至该日期已发布的内容,而不是截至该日期已生效的内容。
- 条文边界由系统通过匹配文本中的标题推导而来,并非来源以结构化形式发布。引用锚点时,请先检查边界,再据此作出判断。
- 统计的是 Legalize 已摄取的内容,而不是官方公报已发布的内容。语料库中的缺漏并不能证明某项规范不存在。
正文绝不会被截断:如果法律过长,无法完整发送,系统会返回其目录,并附上再次请求的说明,因为半条条文读起来和完整条文毫无区别。
面向开发者
传输方式为可流式 HTTP,采用无状态模式。每个 JSON-RPC 方法都需要令牌,包括 initialize 和 tools/list。因此,首先应查看目录;目录以普通 GET 请求的形式与端点一同提供,无需任何凭据:
curl -s https://legalize.dev/mcp/tools.json | jq '.tools[] | {name, readOnly}'
目录读取器读取的就是这个目录,工具各自的 readOnly 属性也在此发布。JSON-RPC 端点本身会返回 401,而这个 401 就是握手——其 WWW-Authenticate 标头会告知客户端授权服务器的位置:
curl -si -X POST https://legalize.dev/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_countries","arguments":{}}}' | head -20
# 401 + WWW-Authenticate: Bearer ... resource_metadata="..." ← correct: that is the handshake
登录后,同一调用就会返回工具的负载。
数据背后是什么
Legalize 为每个国家构建一个公开的 git 仓库:每部法律都是一个 Markdown 文件,其中每项修订都是一条带日期的提交。答案中的 SHA 就来自这里——它是公开仓库中的一条提交,并非为回复临时生成的标识符。
如果语料库收录的法规生效时间早于语料库的起始时间——例如,某个来源从 1996 年起发布合并文本,而其中的法典颁布于 1885 年——reform_history 会在 history 中说明这一点。如果询问的日期早于该时间,系统只会直接说明“语料库始于 X”,而不会重试。
询问《西班牙公司法》在 2023 年 3 月的内容,答案会附上 legalize-dev/legalize-es 中的提交
3b9aea8d5:
git show 3b9aea8d5:es/BOE-A-2010-10544.md
会返回该文件:连接器返回的文本,语料库会将元数据保存在 YAML frontmatter 中。连接器覆盖 Legalize 发布内容的所有国家——国家列表及各语料库的规模,可在 legalize.dev 上查看,也可通过 list_countries 工具获取。
更多信息
- 🌐 网站: legalize.dev — 免费浏览语料库,无需账号。
- 🔌 此连接器,在线使用: legalize.dev/mcp
- 🧾 REST API: legalize.dev/api — 通过 HTTP 获取相同数据。
- 💶 定价: legalize.dev/pricing
- 🛠️ 处理流水线和语料库: github.com/legalize-dev/legalize — 开源。
关于 Legalize
Legalize 将官方公报转化为 git:合并后的立法文本以 Markdown 格式呈现,每项修订对应一条提交,每个国家对应一个仓库。本仓库介绍其 MCP 连接器——AI 助手与之交互的接口。
legalize.dev · MIT 许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。