Skip to main content

MCP server for Dira ProSuite quality verification

Project description

prosuite-mcp

MCP server that exposes Dira ProSuite quality verification to AI assistants (Claude, etc.).

Prerequisites

A running ProSuite Quality Verification Server reachable from the host where this server runs.

Configuration

Environment variable Default Description
PROSUITE_HOST localhost ProSuite service host
PROSUITE_PORT 5151 ProSuite service port
PROSUITE_SSL_CERT_PATH Path to PEM certificate for TLS
PROSUITE_SPEC_PATH Path to a .qa.xml spec file for domain-aware condition search

Usage

Both options below assume you create a project directory first:

mkdir mytest
cd mytest
uv init
uv add prosuite-mcp

Claude Code CLI

Register the server from inside mytest, then start Claude:

claude mcp add prosuite \
  -e PROSUITE_HOST=localhost \
  -e PROSUITE_PORT=5151 \
  -e PROSUITE_SPEC_PATH="C:/path/to/spec.qa.xml" \
  -- uv run prosuite-mcp

claude

The -- uv run prosuite-mcp tells Claude Code to start the MCP server via uv run in the current project, so prosuite-mcp is resolved from the local .venv. Run claude from the same mytest directory each time.

Claude Desktop

Add to claude_desktop_config.json (find it via Settings → Developer):

{
  "mcpServers": {
    "prosuite": {
      "command": "uv",
      "args": ["run", "prosuite-mcp"],
      "cwd": "C:\\mytest",
      "env": {
        "PROSUITE_HOST": "localhost",
        "PROSUITE_PORT": "5151",
        "PROSUITE_SPEC_PATH": "C:\\path\\to\\spec.qa.xml"
      }
    }
  }
}

cwd points to the mytest directory so uv run can find the local install. Restart Claude Desktop after editing the file.

Tools

search_spec <query> [max_results] — Searches the loaded .qa.xml spec for conditions matching a natural-language query (English, German, French, Italian). Returns up to max_results (default 20) matching conditions with pre-filled condition_request blocks ready to pass directly to run_verification, plus the required_datasets list. Requires PROSUITE_SPEC_PATH.

list_conditions [search] — Lists available quality conditions. Pass a keyword to filter by name or description.

describe_condition <name> — Shows the full docstring and parameter list for a condition, including which parameters expect dataset names vs. primitive values.

run_verification — Runs an ad-hoc quality verification against a workspace. Key parameters:

Parameter Type Description
model_catalog_path string Workspace path on the server (C:/data/my.gdb, .sde file, …)
model_name string Logical name for the data model
datasets list Feature classes/tables: {name, filter_expression?}
conditions list Conditions to run: {condition, params}
output_dir string? Server-side directory for Issues.gdb and HTML report
envelope object? Spatial filter {x_min, y_min, x_max, y_max}

Returns a summary with status, total_errors, and a per-condition breakdown.

Example

Once connected, you talk to Claude in plain language:

Check road connectivity in C:/data/tlm.sde.

With a spec loaded, Claude calls search_spec to find the relevant pre-configured conditions from the .qa.xml file, then calls run_verification with the pre-filled parameters and returns a summary of errors per condition.

Without a spec, Claude uses list_conditions and describe_condition to find and configure conditions from scratch.

Development

uv sync --dev
uv run pytest
uv run ruff check src
uv run pyright src

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

prosuite_mcp-0.0.2.tar.gz (14.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

prosuite_mcp-0.0.2-py3-none-any.whl (12.0 kB view details)

Uploaded Python 3

File details

Details for the file prosuite_mcp-0.0.2.tar.gz.

File metadata

  • Download URL: prosuite_mcp-0.0.2.tar.gz
  • Upload date:
  • Size: 14.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for prosuite_mcp-0.0.2.tar.gz
Algorithm Hash digest
SHA256 722f01e017be841b593f09653c7a181bfaed43bb7df6fb018d1d7cf5b016eda9
MD5 8d7225776702a3dc5b86973eedcd1295
BLAKE2b-256 94dde677b7fae07d5a29db0222c0844160ac3bfd9a12e280a655b9fca9f0b408

See more details on using hashes here.

File details

Details for the file prosuite_mcp-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: prosuite_mcp-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 12.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for prosuite_mcp-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2282d894e254a9efc169f54ad0a1856fab9b4964396a7e427bec789a43502492
MD5 3a21df99743ed64d8ceba41a417b8393
BLAKE2b-256 771b5f2da011463d968b720ad3f1acb76191a578931cee49851b2d7d3a28fc31

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page