Wi Dmv

السجل الرسمي أخرى

Wisconsin DMV MCP — every WisDOT DMV customer service center, with the services each

التثبيت

أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: ‏.cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).

Remote (streamable-http)
Claude Code
claude mcp add --transport http wi-dmv 'https://gateway.pipeworx.io/wi-dmv/mcp'
إعداد JSON (Claude Desktop وCursor وVS Code)
{
    "mcpServers": {
        "wi-dmv": {
            "type": "http",
            "url": "https://gateway.pipeworx.io/wi-dmv/mcp"
        }
    }
}

التوثيق

مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.

المحتويات
  1. @pipeworx/wi-dmv
  2. Why Wisconsin gets its own pack
  3. Tools
  4. The distinctive field
  5. Auth
  6. Gotchas worth knowing
  7. Data source
  8. Quick Start
  9. No MCP client? Call it over HTTP
  10. Standalone (no gateway account)
  11. Using with ask_pipeworx
  12. More
  13. License

@pipeworx/wi-dmv

Wisconsin DMV (WisDOT) customer service centers, with the services each individual counter actually performs. Keyless.

Part of Pipeworx — an MCP gateway connecting AI agents to 1679+ live data sources.

Why Wisconsin gets its own pack

This came out of splitting a single multiplexed us-dmv tool into one pack per state agency. Wisconsin's grain is a per-station capability matrix — does this counter issue commercial plates, give the written knowledge test in a language other than English, take cash — which has nothing in common with California's ZIP-level registration snapshot or New York's record-level file. A union schema across states leaves most arguments ignored on every call, so Wisconsin's arguments are Wisconsin's.

Tools

ToolWhat it returns
wi_dmv_officesAddress, county, per-day hours, coordinates, wheelchair access, accepted payment methods, and the 13 service capabilities each center publishes

Filters: city, county, zip (prefix match), name, service (matches both the service labels and the payment methods), limit.

The distinctive field

DRV_KNLG_TEST_VAR_LANG_FL — surfaced as the service label "knowledge test in multiple languages" — records, per counter, whether the written knowledge test is offered in languages beyond English. No other state DMV layer publishes this. It is what makes "which Wisconsin DMV gives the written test in Spanish" answerable at all: 79 of the 88 centers do.

Auth

None. dotmaps.wi.gov is a public WisDOT ArcGIS host.

Gotchas worth knowing

  • WisDOT's ArcGIS host is intermittently slow. It overran a 12s budget on a production call and answered in ~1s on the retry; during this pack's smoke test one call took 15.3s (a stall plus a successful retry) while the identical call either side of it took 93ms. Queries run on the shared helper's 15s budget with one retry, and a genuine stall returns { error, hint } telling the caller to retry rather than an empty office list that reads as "Wisconsin has no DMV offices".
  • The statewide count moves. WisDOT opens and closes rural counters — the layer held 92 centers in mid-2026 and 88 as of 2026-07-30. Nothing in this pack hardcodes the number; responses carry statewide_office_count from the live layer, and the not-found hint quotes the live figure.
  • LAT/LON are real attribute columns on this layer, unusually for a state ArcGIS service, so no outSR=4326 geometry round-trip is needed.
  • There are no per-station phone numbers. WisDOT routes every center through one statewide number, so phone is null by design rather than by omission.
  • Hours list open days only. STN_HRS_* carries the literal CLOSED for the rest; a day absent from hours is a closed day. Many rural counters open one or two days a week.
  • services_excluded is the interesting negative space. WisDOT's STN_EXLD_PRDT_DSPL is free text naming transactions that specific center sends elsewhere (salvage titles, personalised plates, commercial over 10,000 lb) — it is returned verbatim, whitespace-collapsed.
  • service matches payment methods too, so service: "cash" is a valid filter alongside service: "commercial vehicle plates".

Data source

Quick Start

Add to your MCP client (Claude Desktop, Cursor, Windsurf, etc.):

{
  "mcpServers": {
    "wi-dmv": {
      "url": "https://gateway.pipeworx.io/wi-dmv/mcp"
    }
  }
}
What this endpoint actually serves

tools/list at https://gateway.pipeworx.io/wi-dmv/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 1679+ data sources. The only difference is which pack's tools are listed directly; ask_pipeworx reaches all of them from either one.

No MCP client? Call it over HTTP

curl -X POST https://gateway.pipeworx.io/v1/tools/wi_dmv_offices \
  -H 'Content-Type: application/json' \
  -d '{"service":"knowledge test in multiple languages"}'

No account needed for the first calls. Inspect any tool: GET https://gateway.pipeworx.io/v1/tools/wi_dmv_offices. Find one: POST https://gateway.pipeworx.io/v1/tools/search_packs with {"query":"..."}.

Standalone (no gateway account)

This package also runs as a local stdio MCP server — no Pipeworx account, no gateway round-trip:

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

Or run it directly to confirm it starts:

npx -y @pipeworx/mcp-wi-dmv

It speaks MCP over stdin/stdout and answers initialize/tools/list/tools/call for only this pack's tools — none of the shared meta-tools the gateway connection above adds. Same source, same tools, no ask_pipeworx routing.

Using with ask_pipeworx

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 Wi Dmv data" })

The gateway picks the right tool and fills the arguments automatically.

More

License

MIT

الأسئلة الشائعة

ما هو Wi Dmv؟

Wisconsin DMV MCP — every WisDOT DMV customer service center, with the services each

كيف أثبّت Wi Dmv؟

يعمل كخادم بعيد. في Claude Code: claude mcp add --transport http wi-dmv 'https://gateway.pipeworx.io/wi-dmv/mcp'. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.

هل يحتاج Wi Dmv إلى مفتاح API؟

لا يذكر إدراجه في السجل أي مفتاح أو سر إلزامي. قد تتطلب بعض الميزات حسابًا لدى الخدمة التي يتصل بها.

هل Wi Dmv مفتوح المصدر؟

نعم. شيفرته متاحة على GitHub بترخيص MIT.

من يصون Wi Dmv؟

ينشره pipeworx-io. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.

من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.