Ia Dmv
Server Details
Iowa DMV MCP — the Iowa DOT Motor Vehicle Division's 18 driver license stations, with hours,
The last two health checks of this connector failed. If this server requires authentication, missing or expired test credentials may be the cause. A test profile lets Glama authenticate for health checks and discover tools; it is separate from your personal connections.
If you are the author, claim ownership, then add or update a test profile under Admin → Test Profile.
- Status
- Unhealthy
- Uptime
- 28.0% over 63 days
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- pipeworx-io/mcp-ia-dmv
- GitHub Stars
- 0
- Server Listing
- ia-dmv
TDQS
Scored across 41 tools
Several clusters overlap heavily: ask_pipeworx/ask_pipeworx_beta/ask_pipeworx_grounded/deep_research/discover_tools/suggest_questions all route or answer data questions; entity_profile/company_facts/compare_entities/resolve_entity/recent_changes overlap on company data; polymarket_* tools overlap in prediction-market signals. The detailed descriptions help, but an agent still has multiple plausible choices for many requests.
All names use snake_case and are generally readable and descriptive. However, the set mixes verb-led action names (ask_pipeworx, validate_claim, resolve_entity) with noun phrases (entity_profile, company_facts, polymarket_edges), so it is not a strict verb_noun convention throughout.
41 tools is well above the 25-tool threshold for a heavy surface, and the server name Ia Dmv suggests a much narrower scope with only one DMV-related tool. Even treating it as a broad Pipeworx gateway, the exposed set is bloated with many near-duplicate meta-routing and prediction-market tools.
For the apparent Iowa DMV purpose, only station lookup exists, with no appointment, registration, license-status, or renewal operations. As a broad data platform, coverage is uneven and lacks a generic fetch/invoke/write surface, though some meta-routing tools partially work around the gaps.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
subscribe2 fields changed- changed
Input schema / properties / params / descriptionPrevious value: -"Type-specific filter. sec_8k: {ticker:\"AAPL\", items?:[\"5.02\",\"1.01\"]}. polymarket_edge: {topic:\"fed\", min_spread_bps?:500}. fred_series: {series_id:\"UNRATE\"}. patent_grant: {applicant:\"Apple Inc.\"}. clinical_trial: {sponsor?:\"Pfizer\", condition?:\"lung cancer\", phase?:\"PHASE3\"} (sponsor or condition required). form_d: {state?:\"CA\", industry?:\"Biotechnology\", min_amount?:500000, exemption?:\"06B\"} (all optional — omit all to watch every new Form D nationwide). news_keyword: {query:\"\\\"semiconductor sanctions\\\"\", lang?:\"eng\", domains?:[\"reuters.com\"]} (query required). job_post: EITHER {ats:\"greenhouse\", board_token:\"acme\"} (exact board) OR {domain:\"acme.com\"} (auto-detected), plus optional title_query/location_query substrings. tool_diff: {tool:\"form5500\", args?:{...}, fields:[\"headcount\"], schedule:\"daily\"} — re-runs that tool on schedule and fires when the named fields change; tool must be read-only and not need a Pipeworx-held platform key; schedule \"hourly\" needs the paid tier. Unknown keys in form_d/news_keyword/job_post/tool_diff params are rejected at subscribe time."New value: +"Type-specific filter. sec_8k: {ticker:\"AAPL\", items?:[\"5.02\",\"1.01\"]}. polymarket_edge: {topic:\"fed\", min_spread_bps?:500}. fred_series: {series_id:\"UNRATE\"}. patent_grant: {applicant:\"Apple Inc.\"}. clinical_trial: {sponsor?:\"Pfizer\", condition?:\"lung cancer\", phase?:\"PHASE3\"} (sponsor or condition required). form_d: {state?:\"CA\", industry?:\"Biotechnology\", min_amount?:500000, exemption?:\"06B\"} (all optional — omit all to watch every new Form D nationwide). news_keyword: {query:\"\\\"semiconductor sanctions\\\"\", lang?:\"eng\", domains?:[\"reuters.com\"]} (query required). job_post: EITHER {ats:\"greenhouse\", board_token:\"acme\"} (exact board) OR {domain:\"acme.com\"} (auto-detected), plus optional title_query/location_query substrings. tool_diff: {tool:\"form5500\", args?:{...}, fields:[\"headcount\"], schedule:\"daily\"} — re-runs that tool on schedule and fires when the named fields change; tool must be read-only and not need a Pipeworx-held platform key; schedule \"hourly\" needs the paid tier. new_entity: {state:\"CO\", name_query?:\"dental\", entity_type?:\"limited liability\"} — state is required and must be one of FL, NY, CO, OR, CT, TX, PA. Unknown keys in form_d/news_keyword/job_post/tool_diff/new_entity params are rejected at subscribe time." - changed
Input schema / properties / type / enumPrevious value: -[ - "sec_8k", - "polymarket_edge", - "fred_series", - "patent_grant", - "clinical_trial", - "form_d", - "news_keyword", - "job_post", - "tool_diff" -]New value: +[ + "sec_8k", + "polymarket_edge", + "fred_series", + "patent_grant", + "clinical_trial", + "form_d", + "news_keyword", + "job_post", + "tool_diff", + "new_entity" +]
5 tool updates
- Added
archive_compare - Added
archive_evidence - Added
classify_row - Added
research_row - Changed
subscribe2 fields changed- changed
Input schema / properties / params / descriptionPrevious value: -"Type-specific filter. sec_8k: {ticker:\"AAPL\", items?:[\"5.02\",\"1.01\"]}. polymarket_edge: {topic:\"fed\", min_spread_bps?:500}. fred_series: {series_id:\"UNRATE\"}. patent_grant: {applicant:\"Apple Inc.\"}. clinical_trial: {sponsor?:\"Pfizer\", condition?:\"lung cancer\", phase?:\"PHASE3\"} (sponsor or condition required)."New value: +"Type-specific filter. sec_8k: {ticker:\"AAPL\", items?:[\"5.02\",\"1.01\"]}. polymarket_edge: {topic:\"fed\", min_spread_bps?:500}. fred_series: {series_id:\"UNRATE\"}. patent_grant: {applicant:\"Apple Inc.\"}. clinical_trial: {sponsor?:\"Pfizer\", condition?:\"lung cancer\", phase?:\"PHASE3\"} (sponsor or condition required). form_d: {state?:\"CA\", industry?:\"Biotechnology\", min_amount?:500000, exemption?:\"06B\"} (all optional — omit all to watch every new Form D nationwide). news_keyword: {query:\"\\\"semiconductor sanctions\\\"\", lang?:\"eng\", domains?:[\"reuters.com\"]} (query required). job_post: EITHER {ats:\"greenhouse\", board_token:\"acme\"} (exact board) OR {domain:\"acme.com\"} (auto-detected), plus optional title_query/location_query substrings. tool_diff: {tool:\"form5500\", args?:{...}, fields:[\"headcount\"], schedule:\"daily\"} — re-runs that tool on schedule and fires when the named fields change; tool must be read-only and not need a Pipeworx-held platform key; schedule \"hourly\" needs the paid tier. Unknown keys in form_d/news_keyword/job_post/tool_diff params are rejected at subscribe time." - changed
Input schema / properties / type / enumPrevious value: -[ - "sec_8k", - "polymarket_edge", - "fred_series", - "patent_grant", - "clinical_trial" -]New value: +[ + "sec_8k", + "polymarket_edge", + "fred_series", + "patent_grant", + "clinical_trial", + "form_d", + "news_keyword", + "job_post", + "tool_diff" +]
29 tool updates
- Changed
ai_visibility_check1 field changed- added
Input schema / examplesAdded value: +[ + { + "entity": "Tesla" + } +]
- Changed
ask_pipeworx3 fields changed- added
Input schema / properties / askAdded value: +{ + "description": "Alias for question.", + "type": "string" +} - added
Input schema / properties / messageAdded value: +{ + "description": "Alias for question.", + "type": "string" +} - changed
Input schema / properties / question / descriptionPrevious value: -"Your question or request in natural language. Accepts query, q, prompt, text, input as aliases."New value: +"Your question or request in natural language. Accepts query, q, prompt, text, input, ask, message as aliases."
- Changed
ask_pipeworx_beta4 fields changed- added
Input schema / examplesAdded value: +[ + { + "question": "What is the current US unemployment rate?" + } +] - added
Input schema / properties / askAdded value: +{ + "description": "Alias for question.", + "type": "string" +} - added
Input schema / properties / messageAdded value: +{ + "description": "Alias for question.", + "type": "string" +} - changed
Input schema / properties / question / descriptionPrevious value: -"Your question or request in natural language. Accepts query, q, prompt, text, input as aliases."New value: +"Your question or request in natural language. Accepts query, q, prompt, text, input, ask, message as aliases."
- Changed
ask_pipeworx_grounded4 fields changed- added
Input schema / examplesAdded value: +[ + { + "question": "What was Apple's fiscal 2023 revenue?" + } +] - added
Input schema / properties / askAdded value: +{ + "description": "Alias for question.", + "type": "string" +} - added
Input schema / properties / messageAdded value: +{ + "description": "Alias for question.", + "type": "string" +} - changed
Input schema / properties / question / descriptionPrevious value: -"Your question in natural language. Accepts query, q, prompt, text, input as aliases."New value: +"Your question in natural language. Accepts query, q, prompt, text, input, ask, message as aliases."
- Added
company_facts - Changed
compare_entities1 field changed- added
Input schema / examplesAdded value: +[ + { + "type": "company", + "values": [ + "AAPL", + "MSFT" + ] + } +]
- Changed
deep_research9 fields changed- added
Input schema / examplesAdded value: +[ + { + "depth": "quick", + "question": "What is the current US unemployment rate and how has it changed over the past year?" + } +] - added
Input schema / properties / askAdded value: +{ + "description": "Alias for question.", + "type": "string" +} - added
Input schema / properties / inputAdded value: +{ + "description": "Alias for question.", + "type": "string" +} - added
Input schema / properties / messageAdded value: +{ + "description": "Alias for question.", + "type": "string" +} - added
Input schema / properties / promptAdded value: +{ + "description": "Alias for question.", + "type": "string" +} - added
Input schema / properties / qAdded value: +{ + "description": "Alias for question.", + "type": "string" +} - added
Input schema / properties / queryAdded value: +{ + "description": "Alias for question.", + "type": "string" +} - changed
Input schema / properties / question / descriptionPrevious value: -"The research question, in natural language. Broad/multi-part is fine — decomposition is the point."New value: +"The research question, in natural language. Broad/multi-part is fine — decomposition is the point. Accepts query, q, prompt, text, input, ask, message as aliases." - added
Input schema / properties / textAdded value: +{ + "description": "Alias for question.", + "type": "string" +}
- Changed
entity_profile1 field changed- added
Input schema / examplesAdded value: +[ + { + "type": "company", + "value": "AAPL" + } +]
- Changed
forget4 fields changed- added
Input schema / properties / kAdded value: +{ + "description": "Alias for key.", + "type": "string" +} - changed
Input schema / properties / key / descriptionPrevious value: -"Memory key to delete"New value: +"Memory key to delete. Accepts name, k, label as aliases." - added
Input schema / properties / labelAdded value: +{ + "description": "Alias for key.", + "type": "string" +} - added
Input schema / properties / nameAdded value: +{ + "description": "Alias for key.", + "type": "string" +}
- Changed
generate_llms_txt1 field changed- added
Input schema / examplesAdded value: +[ + { + "url": "https://pipeworx.io" + } +]
- Added
kalshi_weather_edge - Changed
pipeworx_feedback1 field changed- added
Input schema / examplesAdded value: +[ + { + "message": "Fleet #2184 smoke test: verifying pipeworx_feedback example call returns non-empty.", + "type": "other" + } +]
- Changed
pipeworx_trending1 field changed- added
Input schema / examplesAdded value: +[ + { + "window": "7d" + } +]
- Changed
polymarket_arbitrage1 field changed- added
Input schema / examplesAdded value: +[ + { + "topic": "Fed rate decision" + } +]
- Changed
polymarket_edge_tracker1 field changed- added
Input schema / examplesAdded value: +[ + { + "days": 14, + "window": "1wk" + } +]
- Changed
polymarket_edges3 fields changed- added
Input schema / examplesAdded value: +[ + { + "limit": 5, + "window": "1wk" + } +] - changed
Input schema / properties / min_edge_pp / descriptionPrevious value: -"Minimum |edge| in percentage points to include (default 0.5). Edge is evaluated NET of slippage."New value: +"Minimum |edge| in percentage points to include (default 0.5). Edge is evaluated NET of slippage and Polymarket's own taker fee." - changed
Input schema / properties / slippage_pp / descriptionPrevious value: -"Assumed execution slippage in percentage points per leg (default 0.3). Subtracted from raw |edge| before ranking and Kelly sizing. Polymarket has zero trading fees as of 2024 but bid/ask + thin depth typically eats 20-50bp per trade. Bump for very thin partitions; drop to 0 if you have a smarter fill model."New value: +"Assumed execution slippage in percentage points per leg (default 0.3), for bid/ask + thin depth cost that a last-trade price does not show. Subtracted from raw |edge| before ranking and Kelly sizing, ON TOP OF Polymarket's own taker fee — which is NOT zero (rate 0.04-0.07 depending on category, read off each market's own published fee schedule; see fees_pp_applied on every row and fees.ts for the full schedule). Bump slippage for very thin partitions; drop to 0 if you have a smarter fill model — the fee still applies regardless."
- Changed
polymarket_fill_risk1 field changed- added
Input schema / examplesAdded value: +[ + { + "market": "will-the-fed-increase-interest-rates-by-25-bps-after-the-december-2026-meeting-20260729232808636", + "side": "buy_yes", + "size_usd": 1000 + } +]
- Changed
recall4 fields changed- added
Input schema / properties / kAdded value: +{ + "description": "Alias for key.", + "type": "string" +} - changed
Input schema / properties / key / descriptionPrevious value: -"Memory key to retrieve (omit to list all keys)"New value: +"Memory key to retrieve (omit to list all keys). Accepts name, k, label as aliases." - added
Input schema / properties / labelAdded value: +{ + "description": "Alias for key.", + "type": "string" +} - added
Input schema / properties / nameAdded value: +{ + "description": "Alias for key.", + "type": "string" +}
- Changed
recent_changes1 field changed- added
Input schema / examplesAdded value: +[ + { + "since": "30d", + "type": "company", + "value": "AAPL" + } +]
- Added
release_calendar_markets - Changed
remember10 fields changed- added
Input schema / examplesAdded value: +[ + { + "key": "target_ticker", + "value": "AAPL" + } +] - added
Input schema / properties / contentAdded value: +{ + "description": "Alias for value.", + "type": "string" +} - added
Input schema / properties / dataAdded value: +{ + "description": "Alias for value.", + "type": "string" +} - added
Input schema / properties / kAdded value: +{ + "description": "Alias for key.", + "type": "string" +} - changed
Input schema / properties / key / descriptionPrevious value: -"Memory key (e.g., \"subject_property\", \"target_ticker\", \"user_preference\")"New value: +"Memory key (e.g., \"subject_property\", \"target_ticker\", \"user_preference\"). Accepts name, k, label as aliases." - added
Input schema / properties / labelAdded value: +{ + "description": "Alias for key.", + "type": "string" +} - added
Input schema / properties / nameAdded value: +{ + "description": "Alias for key.", + "type": "string" +} - added
Input schema / properties / textAdded value: +{ + "description": "Alias for value.", + "type": "string" +} - added
Input schema / properties / vAdded value: +{ + "description": "Alias for value.", + "type": "string" +} - changed
Input schema / properties / value / descriptionPrevious value: -"Value to store (any text — findings, addresses, preferences, notes)"New value: +"Value to store (any text — findings, addresses, preferences, notes). Accepts content, text, data, v as aliases; a non-string value is stored as JSON."
- Added
resolution_audit - Added
resolution_diff - Changed
resolve_entity1 field changed- added
Input schema / examplesAdded value: +[ + { + "type": "company", + "value": "AAPL" + } +]
- Changed
scan_competitor_ai_presence1 field changed- added
Input schema / examplesAdded value: +[ + { + "entities": [ + "Pipeworx", + "Zapier" + ] + } +]
- Changed
scan_dependency1 field changed- added
Input schema / examplesAdded value: +[ + { + "package": "left-pad" + } +]
- Changed
search_within1 field changed- added
Input schema / examplesAdded value: +[ + { + "query": "supply-chain risk", + "text": "Apple Inc. reported fiscal 2023 revenue of $383.285 billion, driven by strong iPhone and Services growth. Net income was $96.995 billion. The company faced supply-chain risk in China during the quarter." + } +]
- Changed
suggest_questions1 field changed- added
Input schema / examplesAdded value: +[ + { + "topic": "finance" + } +]
- Changed
validate_claim1 field changed- added
Input schema / examplesAdded value: +[ + { + "claim": "Apple's fiscal 2023 revenue was $383 billion" + } +]
1 tool update
- Changed
bet_research2 fields changed- changed
Input schema / examplesPrevious value: -[ - { - "market": "when-will-bitcoin-hit-150k" - }, - { - "market": "https://polymarket.com/event/when-will-bitcoin-hit-150k" - } -]New value: +[ + { + "market": "will-kristi-noem-win-the-2028-republican-presidential-nomination" + }, + { + "market": "https://polymarket.com/event/will-kristi-noem-win-the-2028-republican-presidential-nomination" + } +] - changed
Input schema / properties / market / descriptionPrevious value: -"Polymarket slug (\"when-will-bitcoin-hit-150k\"), full URL (\"https://polymarket.com/event/...\"), or question text (\"Will Bitcoin hit $150k?\"). Dated slugs stop resolving once they settle — Polymarket de-indexes resolved markets — so prefer an undated one."New value: +"Polymarket slug (\"will-kristi-noem-win-the-2028-republican-presidential-nomination\"), full URL (\"https://polymarket.com/event/...\"), or question text (\"Will Bitcoin hit $150k?\"). Dated slugs stop resolving once they settle — Polymarket de-indexes resolved markets — so prefer an undated one."
2 tool updates
- Changed
bet_research2 fields changed- changed
Input schema / examplesPrevious value: -[ - { - "market": "will-bitcoin-reach-100k-in-july-2026" - }, - { - "market": "https://polymarket.com/event/will-bitcoin-hit-150k-by-june-30-2026" - } -]New value: +[ + { + "market": "when-will-bitcoin-hit-150k" + }, + { + "market": "https://polymarket.com/event/when-will-bitcoin-hit-150k" + } +] - changed
Input schema / properties / market / descriptionPrevious value: -"Polymarket slug (\"will-bitcoin-hit-150k-by-june-30-2026\"), full URL (\"https://polymarket.com/event/...\"), or question text (\"Will Bitcoin hit $150k by June 30?\")"New value: +"Polymarket slug (\"when-will-bitcoin-hit-150k\"), full URL (\"https://polymarket.com/event/...\"), or question text (\"Will Bitcoin hit $150k?\"). Dated slugs stop resolving once they settle — Polymarket de-indexes resolved markets — so prefer an undated one."
- Changed
polymarket_kalshi_spread2 fields changed- changed
Input schema / examplesPrevious value: -[ - { - "topic": "fed" - }, - { - "topic": "btc" - } -]New value: +[ + { + "topic": "fed" + }, + { + "topic": "btc" + }, + { + "topic": "bitcoin" + }, + { + "topic": "fed rate decision" + } +] - changed
Input schema / properties / topic / descriptionPrevious value: -"Pre-mapped: fed | btc | cpi | gdp | sp500 | recession | next_pope | next_uk_pm | next_israel_pm | 2028_president"New value: +"Subject to compare. Canonical keys: fed | btc | eth | cpi | gdp | sp500 | recession | next_pope | next_uk_pm | next_israel_pm | 2028_president — but aliases and keywords resolve too (\"bitcoin\", \"fed rate decision\", \"ethereum\", \"inflation\", \"s&p 500\", \"us recession\", \"next pope\", \"2028 election\"). Check resolution.topic_matched_by in the response: \"exact\"/\"alias\" is a curated pairing, \"phrase\"/\"token\" is a keyword guess."
Related MCP Connectors
Wisconsin DMV MCP — every WisDOT DMV customer service center, with the services each
Missouri DMV MCP — the Department of Revenue's driver and motor-vehicle license offices,
Tennessee DMV MCP — Department of Safety and Homeland Security: the 186 driver service
Oregon DMV MCP — live wait times at all 60 Oregon DMV field offices, plus the office
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceProvides Missouri DMV license office data including addresses, hours, contract agents, and daily-refreshed closure dates.174 npmMIT
- AlicenseNot gradedqualityBmaintenanceProvides Wisconsin DMV (WisDOT) customer service center data including address, hours, services, and payment methods for each counter. Enables querying by city, county, zip, name, or service type.7 npmMIT

@pipeworx/or-dmvofficial
AlicenseNot gradedqualityBmaintenanceProvides live wait times and office details for all 60 Oregon DMV field offices by scraping the ODOT website, with no authentication required.14 npmMIT- AlicenseNot gradedqualityBmaintenanceProvides live wait times and office directory for North Carolina DMV driver license and license plate agencies, sourced from the state's machine-readable feed.8 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.