mcpField
G
GovWait

GovWait

Local
govwait.comLegal & Government0Updated 1d ago

About GovWait

GovWait is an MCP server that gives AI agents access to officially published government processing-time data. Its tools support searching, retrieving, and comparing values, with source status and provenance included in every response.

Key features

  1. 01Search processing-time entities
  2. 02Retrieve entity details and latest values
  3. 03Compare values across entities
  4. 04Include source status and provenance

Use cases

  1. 01Check visa processing times by country
  2. 02Compare agency figures with dated sources
  3. 03Review retained values when a source is unavailable

MCP support

The server exposes `search_entities`, `get_entity`, `get_latest_value`, and `compare_values` to MCP clients over stdio. Responses include source URLs, dates, verification time, units, collection status, and attribution information.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"artwisdom-govwait": {
"command": "npx",
"args": [
"-y",
"govwait-mcp"
]
}
}
}
Run commandnpx -y govwait-mcp

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmgovwait-mcp0.1.2

Tools

4

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
limitintegerNo
querystringYesFree-text query; terms are matched against jurisdiction, service name and applicant country
jurisdictionstringNoOptional ISO country filter for the government, e.g. CA, GB, NZ or NO

Details

From the project README

GovWait MCP Server

Exposes the GovWait dataset (officially published government processing times, with provenance and history) to AI agents over the Model Context Protocol (stdio).

Tools: search_entities, get_entity, get_latest_value, compare_values. Every response carries source_url, the agency's own update date when supplied (otherwise GovWait's first-observed date), our verification timestamp, source collection status, the source unit, and the attribution requirement. When a source is unavailable, current_value and value_days are null; its retained value is returned only as last_verified_value with value_context set to last_verified_source_snapshot.

Install from npm

Run the current public package directly:

npx -y govwait-mcp

For Claude Code, register that same public package with:

claude mcp add --scope user govwait-mcp -- npx -y govwait-mcp

Build and verify the source locally

cd machine/mcp-server
npm ci
npm run verify

To retain a normal data-bearing release candidate and its SHA-256 sidecar in the git-ignored release/ directory, run npm run prepare:rc. For a documentation-only candidate that must preserve the existing bundled data byte-for-byte, run npm run prepare:docs-rc instead.

npm run build copies the three validated pipeline exports into this package's own data/ directory, writes deterministic SHA-256 provenance metadata, and compiles dist/index.js. The server defaults to those package-owned files, so it does not depend on the parent repository at runtime. Advanced local users can still override the location with GOVWAIT_DATA_DIR=/path/to/exports; that directory must contain the three exports. A matching provenance.json is used when present; the package-owned default always requires it.

npm run audit:package creates a tarball in a temporary directory, enforces the exact nine-file package allow-list, rejects secret/database/cache/log/source/test artifacts, verifies every bundled data hash, unpacks the tarball into a clean temporary project with the already-locked npm ci dependency tree, and runs the complete MCP smoke test against that isolated copy. The temporary package is deleted afterward; no registry access is needed.

The verified public baseline is [email protected], and its mcpName exactly matches io.github.artwisdom/govwait in the official MCP Registry metadata. It was published to npm and accepted as active in the official MCP Registry. Version 0.1.1 uses a SEE LICENSE IN LICENSE field that points to Apache 2.0 terms limited to GovWait-owned software code. DATA-NOTICE.md and the licence scope expressly exclude the bundled government-source data. A clean public-registry installation passed the full MCP smoke suite. npm publishing requires interactive 2FA and disallows automation/bypass tokens. Official mcp-publisher 1.8.1 validates server.json, and the official Registry listing for 0.1.1 records that release; use npm's latest tag and the Registry's latest endpoint for the current public version rather than treating a local build as proof.

Version 0.1.2 changes package documentation and release metadata only. It preserves the exact bundled dataset and four MCP tool behaviors verified for 0.1.1, while adding the public install command above and removing stale pre-publication wording. Building or verifying the package remains a local action and does not publish another npm or Registry version.

Register a local checkout with Claude Code

claude mcp add govwait -- node /ABSOLUTE/PATH/TO/govwait/machine/mcp-server/dist/index.js

Register a local checkout with Claude Desktop

Add to claude_desktop_config.json (Settings → Developer → Edit Config):

{
  "mcpServers": {
    "govwait": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/TO/govwait/machine/mcp-server/dist/index.js"]
    }
  }
}

Try it

Ask the connected agent: "How long is a Canada visitor visa taking from India right now, and how does that compare to Nigeria and the Philippines?" — it should call compare_values and answer with dated, sourced figures.

For New Zealand, try "What are the current Visitor Visa processing times?" The nz-visitor-visa service returns both INZ's 50% and 80% working-day metrics.

For Norway, try "What was UDI's last verified visitor-visa waiting time, and is the source still available to GovWait?" The server returns the dated, table-backed snapshot, its official source page, and the source_unavailable state without presenting that snapshot as current.

Data provenance and reuse

Every response retains the official source URL, source date, verification time, unit, and GovWait attribution notice. data/provenance.json records the exact dataset generation time, row counts, byte sizes, and SHA-256 hashes. Underlying government information is not relicensed by GovWait; follow the source-specific terms at https://govwait.com/data-license/ and the packaged DATA-NOTICE.md.

Distribution

The local server.json is valid MCP Registry metadata for the public npm package. Registry and other directory submissions remain separate owner actions in the distribution checklist.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.