mcpField
O
Oklahoma Code

Oklahoma Code

远程服务
pipeworx.io法律与政务03 周前更新

关于 Oklahoma Code

Oklahoma Code 是按引用编号或全文主题搜索俄克拉荷马州法规的 MCP 服务。它还提供修订历史,并可获取已被替代的历史版本。

主要功能

  1. 01按引用编号获取法规正文
  2. 02搜索法规全文
  3. 03查看修订历史
  4. 04获取历史法规版本
  5. 05列出全部 94 个法典标题

适用场景

  1. 01按编号查找俄克拉荷马州法规
  2. 02查找提及特定主题的法规
  3. 03比较现行条款与早期版本

MCP 相关

通过 Pipeworx 网关或本地 stdio 服务,向 MCP 客户端提供法规查询、全文搜索和标题列表工具。网关端点还包含 Pipeworx 通用元工具。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://gateway.pipeworx.io/oklahoma-code/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

@pipeworx/oklahoma-code

俄克拉荷马州法典——按引文查询州法规、全文主题搜索、修订历史和历史(已被取代)版本。无需密钥。

这是 Pipeworx 的一部分——一个将 AI Agent 连接到 1721+ 个实时数据源的 MCP 网关。这是独立的非官方集成,与上游提供方无关联、未获其认可,也非由其发布。

工具

  • ok_statute(citation, version_citeid?) — 按引文获取俄克拉荷马州法典条款全文(“21-701.7”是一级谋杀;“41-111”是租赁终止)。返回法规文本、章节路径、“引文格式”一行、完整的修订 history,以及 historical_versions 数组——每个条目的 citeid 都可以作为 version_citeid 传回,以获取该确切历史版本的文本,而不是当前版本。
  • ok_search(query, limit?) — 对法规正文(不仅是标题)进行全文搜索,返回匹配的引文、标题、生效日期和相关性。
  • ok_titles() — 列出法典的全部 94 个标题及其官方名称,以便将主题路由到正确的标题编号。

身份验证

无需密钥。

此处不适用调查中的陷阱

8 月的州法律调查(docs/state-law-probe.md)将俄克拉荷马州标记为“仅以 PDF 发布”——oklegislature.gov 将 94 个标题分别以约 1.2 MB 的 PDF 提供,每个标题一个文件,不按条款拆分。像 CO/IN/NJ/GA/KY 那样进一步查找后发现:俄克拉荷马州法院网络 OSCN(oscn.net——州法院系统自己的站点,而非州议会网站)以实时 HTML 提供完整的“俄克拉荷马州法规引文版”,无需密钥,也不要求特定 UA;内容截至 2025 年立法会期,且至少包含一项于 2026 年生效的 2025 年修订(经 2026-10-06 实时验证:21 O.S. § 701.7 自身的“引文格式”一行显示“(OSCN 2026)”,其最近一次修订《2025 年法律 HB 2104》于 2026 年 1 月 1 日生效)。

结果发现,这个来源比本系列中的 PDF 提取包更好,而不仅仅是绕开了 PDF 陷阱:OSCN 提供真正的法规正文全文搜索(已确认——搜索“landlord”会显示 41 O.S. § 111“租赁终止”,其标题中根本没有“landlord”),并且会将每个已修订条款的所有已被取代的先前版本保存在各自的直接链接页面上。因此,这个包具备调查所关注的全部四种能力——按引文查询、主题搜索、修订历史和历史版本,而且这些能力都没有经过近似处理或无法使用;这与肯塔基州(没有历史版本)或爱荷华州(搜索标题而非全文)不同。

引文

俄克拉荷马州按标题-条款编号引用,例如“21-701.7”(第 21 标题《犯罪与刑罚》,第 701.7 条)或“41-111”(第 41 标题《房东与租户》,第 111 条)。ok_statute 也接受“21 O.S. 701.7”、“21 O.S. § 701.7”和“Title 21, Section 701.7”。94 个标题中有 9 个带有字母后缀(3A、10A、12A、14A、27A、37A、43A、75A、85A)——传入的标题编号应包含后缀,例如“10A-1”。

导航结构——两跳,以及为何没有构建本地缓存

  1. Index.asp?ftdb=STOKSTnn&level=1 — 整个法典标题的目录, 已扁平化:每个章节锚点都出现在同一页面上,因为该数据库的目录树只有 Title -> Document(已在线确认: 章节标题是嵌入同一扁平化页面的标记,并非可单独获取的 URL)。对于 9 个带字母的标题,标题 dbcode 无法从标题编号推导出来(10A 的 dbcode 是 STOKSTA1,而非 STOKST10A)——该软件包附带从主索引页读取的完整静态映射。
  2. deliverdocument.asp?citeid=NNNNN&PrintOnly=true — 章节正文。 PrintOnly 至关重要:去掉它后,返回的仍是相同文本,但每个章节页面都会重新嵌入整个标题的导航树(已在线确认,Title 21 的单个章节页面大小为 272 KB);而 PrintOnly 会移除该导航树(同一章节仅为 14 KB)。

标题索引页大小约为 65 KB(Title 85)至 610 KB(Title 74,State Government)——这是纯 HTML,只需用少量正则表达式解析,而非需要解码字体/数据流的二进制 PDF。与本任务旨在避免的逐标题 PDF 回退方案不同,OSCN 没有提供可缓存的更小单位——一个标题就是结构上的最小单位,已在线验证,而且即使是最大标题,解析成本也很低。ok_statute 每次调用仍只获取一个这样的页面,不会在同一次调用中再次获取标题页面。

修订历史和历史版本

每个经修订章节的 PrintOnly 页面末尾都有一个 Historical Data 标记,后面跟着一段列出所有修订法案的文字,例如:“Amended by Laws 2025, HB 2104, c. 486, § 1, eff. January 1, 2026 (superseded document available).” 每个“(superseded document available)”都是指向该先前版本自身 CiteID 的直接链接——通过同一路径获取该版本,可返回修订前的法规原文,标题为“Superceded On: MM/DD/YYYY”(这是 OSCN 自己的拼写,并非此处引入的拼写错误)。

数据来源

  • https://www.oscn.net/applications/oscn/index.asp?ftdb=STOKST — 主标题索引(94 个标题、对应的 dbcode,以及法典整体的时效说明,例如“Current through the 2025 Legislative Session”)。
  • https://www.oscn.net/applications/oscn/Index.asp?ftdb=STOKSTnn&level=1 — 单个标题的完整章节目录(名称 -> CiteID)。这是 ok_statute 解析引文的跳转步骤。
  • https://www.oscn.net/applications/oscn/deliverdocument.asp?citeid=NNNNN&PrintOnly=true — 单个章节的全文、面包屑导航和修订历史。也使用此路径(不做任何更改),通过历史版本(已被取代版本)自身的 CiteID 获取该版本。
  • https://www.oscn.net/applications/oscn/Search.asp?ftdb=STOKST&quick=true&query=landlord&hidesuperseded=Yes&dbCodeText=STOKST&SUBMITTED=true — 在全部 94 个标题的法规正文中进行全文搜索。 ok_search。

这四个页面都是纯粹的、无需密钥且由服务器渲染的 HTML——无需登录、无需 JS,开发期间也未观察到速率限制。该网站的标记使用 ISO-8859-1 编码(而非 UTF-8);该软件包会按此解码,而不是默认使用 UTF-8,否则会破坏这些页面中反复出现的 § 字符。

快速开始

添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):

{
  "mcpServers": {
    "oklahoma-code": {
      "url": "https://gateway.pipeworx.io/oklahoma-code/mcp"
    }
  }
}
此端点实际提供的内容

https://gateway.pipeworx.io/oklahoma-code/mcp 上的 tools/list 会返回上表中的工具,以及 Pipeworx 共享的元工具——ask_pipeworx、 discover_tools、search_within、remember/recall,以及网关级工具集中的其他工具。因此,你看到的工具数量会多于表格中的数量:目前,单个工具包端点除了该工具包自身的工具外,还会列出大约 30 个共享工具。连接的 initialize 响应会说明其确切范围,也是当天有效范围的权威依据。

这是有意设计的,并非意外的多路复用。元工具可以让范围受限的连接回答该工具包未涵盖的问题——通过 ask_pipeworx 跨整个目录路由——无需再添加第二个 MCP 服务。目前无法在不包含这些工具的情况下挂载工具包端点;如果这些额外的架构比路由带来的价值更占用上下文,不如只连接一次完整网关,而不是连接多个工具包端点。

你也可以连接完整的 Pipeworx 网关,直接列出每个工具包的工具,而不仅仅是当前工具包的工具:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

两个 URL 都会连接到同一个网关和相同的 1721+ 个数据源。唯一的区别是直接列出哪个工具包的工具;从任一端点都可以通过 ask_pipeworx 访问所有工具。

没有 MCP 客户端?通过 HTTP 调用

curl -X POST https://gateway.pipeworx.io/v1/tools/ok_statute \
  -H 'Content-Type: application/json' \
  -d '{"citation":"21-701.7"}'

首次调用无需账户。查看任意工具:GET https://gateway.pipeworx.io/v1/tools/ok_statute。查找工具:使用 {"query":"..."} 调用 POST https://gateway.pipeworx.io/v1/tools/search_packs。

独立运行(无需网关账户)

此软件包也可以作为本地 stdio MCP 服务运行——无需 Pipeworx 账户,也无需经过网关往返:

{
  "mcpServers": {
    "oklahoma-code": {
      "command": "npx",
      "args": ["-y", "@pipeworx/mcp-oklahoma-code"]
    }
  }
}

或者直接运行它,确认服务可以启动:

npx -y @pipeworx/mcp-oklahoma-code

它通过 stdin/stdout 使用 MCP 协议,并针对仅此工具包的工具响应 initialize/tools/list/tools/call——不包含上述网关连接额外提供的共享元工具。源代码相同,工具相同,但没有 ask_pipeworx 路由。

使用 ask_pipeworx

你可以用通俗的英语提问,而不是直接调用工具——此方式既适用于上面的工具包端点,也适用于完整网关:

ask_pipeworx({ question: "your question about Oklahoma Code data" })

网关会自动选择合适的工具并填入参数。

更多信息

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。