Context7
Up-to-date docs for AI agents
作者提供的说明(英文原文)
District of Columbia Code — DC statutes by citation, and topic/chapter search. Fleet #2887 (one of…
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
PIPEWORX_API_KEY标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
适用于网页版、桌面版和手机版 Claude:
https://gateway.pipeworx.io/dc-code/mcp打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"dc-code": {
"command": "npx",
"args": [
"-y",
"@pipeworx/mcp-dc-code"
],
"env": {
"PIPEWORX_API_KEY": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add --transport http dc-code https://gateway.pipeworx.io/dc-code/mcpclaude mcp add dc-code --env PIPEWORX_API_KEY=your-value -- npx -y @pipeworx/mcp-dc-code运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"dc-code": {
"url": "https://gateway.pipeworx.io/dc-code/mcp"
}
}
}粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"dc-code": {
"command": "npx",
"args": [
"-y",
"@pipeworx/mcp-dc-code"
],
"env": {
"PIPEWORX_API_KEY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"dc-code": {
"type": "http",
"url": "https://gateway.pipeworx.io/dc-code/mcp"
}
}
}粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"dc-code": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@pipeworx/mcp-dc-code"
],
"env": {
"PIPEWORX_API_KEY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
ChatGPT 只能连接互联网上的服务器:
https://gateway.pipeworx.io/dc-code/mcp菜单名称可能因套餐和版本不同而略有差异。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
注册名称已通过 GitHub 账户 pipeworx-io 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
尚未检查;我们会轮流检查各个端点
尚未检查;我们会轮流检查各个端点
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:PIPEWORX_API_KEY
两种方式都可以:安装在你的电脑上,或者连接云端版本。
GitHub 仓库最后更新于–,最新版本(0.2.1)于5天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。
同一分类中有:Context7, Codebase Memory, Exa
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
District of Columbia Code (D.C. Code — DC statutes) — full section text by citation, and topic/chapter search over official headings.
Part of Pipeworx — an MCP gateway connecting AI agents to 1863+ live data sources. This is an independent, unofficial integration — not affiliated with, endorsed by, or published by the upstream provider.
dc_statute(citation) — full current text of one D.C. Code section (e.g. "22-2101", murder in the first degree), with the official heading, disposition (in force / repealed / transferred / reserved), legislative History annotations, Prior Codifications, and Cross References.dc_search(query?, title?, limit?) — topic/keyword search over every section's official heading (e.g. "eviction notice", "concealed carry permit"), optionally scoped to one title. Pass title alone (no query) to list every section under that title — a chapter-list/browse mode. Not full-text search — the DC Council does not publish one.Keyless.
https://raw.githubusercontent.com/DCCouncil/law-xml-codified/{branch}/us/dc/council/code/titles/{title}/sections/{citation}.xml — one section's current XML (its heading, body text, and annotations). dc_statute calls this live, per request, pinned to the branch baked below.us/dc/council/code/index.xml and titles/{title}/index.xml — structure only (title/chapter/subchapter headings + section citation lists, no catchlines). Used only by scripts/bake-index.mjs.https://api.github.com/repos/DCCouncil/law-xml-codified/branches — used only by scripts/bake-index.mjs to resolve the current publication branch (see below).code.dccouncil.gov's own footer: *"The codes and laws on this website are in the public domain."* The same footer: *"Please do not scrape. Instead, bulk download the HTML or XML"* from the Council's GitHub organization. This pack follows that instruction literally — it never touches code.dccouncil.gov, only raw.githubusercontent.com content from DCCouncil/law-xml-codified. Public-domain content plus the publisher's own explicit redistribution channel means baking a catchline index from this repo needs no separate grant (root CLAUDE.md, "mirror-needs-grant-proxy-does-not" — the licence-permits-it branch, not the silent/forbidden one). Statutory text itself is also never baked — dc_statute always fetches it live, per call.
GET /repos/DCCouncil/law-xml-codified reports default_branch: "publication/2021-10-18" — real git metadata, frozen at a 2021 codification, five years stale, even though the repo is actively published: 406 branches existed at bake time, the newest a publication/{base-date}.{amendment-date} pair updated within days. GitHub's "default branch" setting is unrelated to which branch is current. scripts/bake-index.mjs lists every branch (paginated, ~5 unauthenticated requests) and picks the lexicographically-latest name — safe because every name is an ISO-8601 date or a dotted pair of them, so string order is chronological order. The resolved name is baked as DC_CODE_BRANCH and is what dc_statute's live fetch pins to.
A short section is one flat element; a section with lettered/numbered subsections nests elements, each with its own ("(a)") and , repeatedly — sometimes nested one level deeper. A reason element reading "Repealed" (or Reserved/Transferred) marks a non-substantive stub whose body text is literally "Repealed." — surfaced as disposition rather than left for the caller to infer. A trailing annotations block (History, Prior Codifications, Cross References, Editor's Notes) is excluded from the body-text walk and returned as its own grouped fields.
One parsing trap worth knowing: a num or heading element can carry a NESTED inline element (e.g. Title 7 Chapter 2B's chapter number carries an embedded effective-date annotation tag inside its own num element) — a tight "no-nested-tag" regex silently drops that chapter's number instead of erroring. scripts/bake-index.mjs strips any nested tag content rather than assuming num/heading are always tag-free.
dc_statute. Direct URL construction from the citation; no index lookup needed (title is the citation's own prefix before its first -).dc_search, over official headings only (see below). Matches 24,198 sections' real headings, baked once per scripts/bake-index.mjs run — see its header for why per-section fetches were unavoidable (the index tree carries no catchlines, unlike South Dakota's or Oklahoma's siblings).annotations block carries one or more type="History" entries naming the enacting/amending Act; dc_statute returns these as history. There is no single canonical "effective date" field separate from these citations.DCCouncil/law-xml-codified publishes only the CURRENT codified text, no per-amendment archive and no endpoint returning a prior version's text.DC Council publishes a new amendment branch roughly every few days and a new base codification a few times a year. Re-run node scripts/bake-index.mjs > src/dc-index-data.ts whenever a caller's index_live_mismatch or a stale data_as_of suggests the baked index has fallen behind the live branch — nothing else in the pack needs to change; dc_statute always fetches section text live, pinned to whatever branch the bake most recently resolved. No scheduled workflow exists for this (same as every sibling state-code pack in this family) — it is a manual re-run.
Add to your MCP client (Claude Desktop, Cursor, Windsurf, etc.):
{
"mcpServers": { "dc-code": { "url": "https://gateway.pipeworx.io/dc-code/mcp" } } }
tools/list at https://gateway.pipeworx.io/dc-code/mcp returns the tools in the table above plus the shared Pipeworx meta-tools — ask_pipeworx, discover_tools, search_within, remember/recall and the rest of the gateway-wide set. So the tool count you see is larger than this table: a single-pack endpoint currently lists roughly 30 shared tools alongside the pack's own. The connection's initialize response states its exact scope, and is the authoritative answer for a given day.
This is deliberate, not multiplexing by accident. The meta-tools are what let a scoped connection answer a question this pack does not cover — via ask_pipeworx, which routes across the whole catalog — without you adding a second MCP server. There is currently no way to mount a pack endpoint without them; if the extra schemas cost you more context than the routing is worth, connect to the full gateway once rather than to several pack endpoints.
Or connect to the full Pipeworx gateway to get every pack's tools listed directly, instead of just this one's:
{
"mcpServers": { "pipeworx": { "url": "https://gateway.pipeworx.io/mcp" } } }
Both URLs reach the same gateway and the same 1863+ data sources. The only difference is which pack's tools are listed directly; ask_pipeworx reaches all of them from either one.
curl -X POST https://gateway.pipeworx.io/v1/tools/dc_statute \
-H 'Content-Type: application/json' \ -d '{"citation":"22-2101"}'
No account needed for the first calls. Inspect any tool: GET https://gateway.pipeworx.io/v1/tools/dc_statute. Find one: POST https://gateway.pipeworx.io/v1/tools/search_packs with {"query":"..."}.
@pipeworx/mcp-dc-code is a local stdio bridge to the Pipeworx gateway: your MCP client starts it with npx, and it forwards every call to the same https://gateway.pipeworx.io/dc-code/mcp endpoint shown above. It needs network access; there is no offline mode.
{
"mcpServers": { "dc-code": { "command": "npx", "args": ["-y", "@pipeworx/mcp-dc-code"] } } }
Without a key it calls anonymously, capped at 50 calls a day. A free account raises that to 200 a day: get a key at https://pipeworx.io/signup and add "env": { "PIPEWORX_API_KEY": " " } to the server entry. The key is sent as a Bearer token, the same way a hosted connection sends it, so calls are metered and billed exactly as they are there.
It lists only this pack's tools by default. Set PIPEWORX_META_TOOLS=1 to also list ask_pipeworx and the other gateway-wide tools.
Behind an HTTPS proxy: Node's built-in fetch does not read HTTPS_PROXY by default. Newer Node releases honour it when NODE_USE_ENV_PROXY=1 is set; check your Node version's documentation.
Instead of calling tools directly, you can ask questions in plain English — this works on the pack endpoint above as well as on the full gateway:
ask_pipeworx({ question: "your question about Dc Code data" })
The gateway picks the right tool and fills the arguments automatically.
MIT