Skip to main content

Purview MCP Server

FastMCP-based server that exposes Microsoft Purview data governance operations through the Model Context Protocol.

Full documentation: docs/purview-mcp-server.md


Quick Start

# stdio (default) — from repo root, venv active
$env:PURVIEW_ACCOUNT_NAME = "your-account"
python tools/PurviewMCPServer/server.py
# Streamable-HTTP
$env:PURVIEW_MCP_TRANSPORT = "streamable-http"
$env:PURVIEW_MCP_PORT      = "8000"
python tools/PurviewMCPServer/server.py
# endpoint: http://127.0.0.1:8000/mcp
# Azure Functions (func host)
cd tools/hosting/app && func start --port 7073
# endpoint: http://localhost:7073/api/mcp

Transport Protocols

Transport Env value VS Code mcp.json type Endpoint
stdio (default) stdio "command" process stdin/stdout
Streamable-HTTP streamable-http or http "http" /mcp (standalone) or /api/mcp (Azure Functions)
SSE (legacy) sse "sse" /sse (standalone only — not compatible with Azure Functions)

VS Code mcp.json

{
  "servers": {
    "purview-mcp-server-stdio": {
      "command": "./.venv/Scripts/python",
      "args": ["tools/PurviewMCPServer/server.py"],
      "env": { "PURVIEW_ACCOUNT_NAME": "your-account" }
    },
    "purview-mcp-server-http": {
      "type": "http",
      "url": "http://localhost:7073/api/mcp"
    }
  }
}

Environment Variables

Variable Required Default Description
PURVIEW_ACCOUNT_NAME Yes Purview account name (no suffix)
AZURE_TENANT_ID No Azure tenant GUID
AZURE_CLIENT_ID No Service principal client ID
AZURE_CLIENT_SECRET No Service principal secret
AZURE_REGION No public Sovereign cloud: usgov, china
PURVIEW_MAX_RETRIES No 3 API retry count
PURVIEW_TIMEOUT No 30 Request timeout (seconds)
PURVIEW_BATCH_SIZE No 100 Bulk operation batch size
PURVIEW_MCP_TRANSPORT No stdio Transport protocol
PURVIEW_MCP_HOST No 127.0.0.1 Bind host (HTTP/SSE modes)
PURVIEW_MCP_PORT No 8000 Bind port (HTTP/SSE modes)

Copy .env.example to .env and fill in your values. Never commit .env.


Available Tools (37 + registry)

Category Tools
Entity (8) get_entity, create_entity, update_entity, delete_entity, search_entities, batch_create_entities, batch_update_entities, import_entities_from_csv
Glossary (3) get_glossary_terms, create_glossary_term, assign_term_to_entities
Unified Catalog (11) uc_list_domains, uc_get_domain, uc_create_domain, uc_list_terms, uc_get_term, uc_create_term, uc_search_terms, uc_list_custom_metadata_defs, uc_cleanup_metadata_definition, uc_delete_metadata_definition, uc_delete_metadata_from_asset
Collections (5) list_collections, get_collection, create_collection, delete_collection, get_collection_path
Lineage (2) get_lineage, create_lineage
Search (2) search_suggest, search_browse
Type Defs (2) get_typedef, list_typedefs
Relationships (3) create_relationship, get_relationship, delete_relationship
Account + Registry (3) get_account_properties, list_available_operations, invoke_operation

Recommended First Commands

1) list_available_operations()
2) get_account_properties()
3) search_entities(query="customer", limit=5)
4) uc_list_domains()

Files

File Purpose
server.py FastMCP server — all 37 tool definitions
config.py PurviewMCPConfig frozen dataclass — env var parsing and validation
__version__.py Package version
.env.example Environment variable template
PROMPT_INSTRUCTIONS.md Detailed prompt guidance for AI assistants
pyproject.toml Package metadata (purview-mcp-server)
Dockerfile Container image for standalone deployment
docker-compose.yml Local container stack

For Azure Functions hosting files, see tools/hosting/.


See docs/purview-mcp-server.md for the full reference including client setup for Claude Code and Cursor, Azure Functions deployment, all prompt examples, workflows, and troubleshooting.

Download files

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

Source Distribution

purview_mcp_server-1.15.0.tar.gz (16.4 kB view details)

Uploaded Source

Built Distribution

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

purview_mcp_server-1.15.0-py3-none-any.whl (15.4 kB view details)

Uploaded Python 3

File details

Details for the file purview_mcp_server-1.15.0.tar.gz.

File metadata

  • Download URL: purview_mcp_server-1.15.0.tar.gz
  • Upload date:
  • Size: 16.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for purview_mcp_server-1.15.0.tar.gz
Algorithm Hash digest
SHA256 5623c0f0972b9e7f8c68e993861ea2abc479c6327ddfc3068d5e16050fbbb937
MD5 4d5b453bef01e95454d63c7275e4de45
BLAKE2b-256 8656bfc40bec6e34c0700a41d0fecf68954cf757509732de2ea40f14fe50e101

See more details on using hashes here.

Provenance

The following attestation bundles were made for purview_mcp_server-1.15.0.tar.gz:

Publisher: publish-to-pypi.yml on Keayoub/pvw-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file purview_mcp_server-1.15.0-py3-none-any.whl.

File metadata

File hashes

Hashes for purview_mcp_server-1.15.0-py3-none-any.whl
Algorithm Hash digest
SHA256 289441b4c7b7bcec67badaa621e721c52065e72ab0de1ad9c9774d456a82e1b3
MD5 6f8105342fe8099f16b94e43b5dfb3ab
BLAKE2b-256 34fb6082c1e8f753480e37077769fad10aac165b383cf3af195c0f88c6c3fbdf

See more details on using hashes here.

Provenance

The following attestation bundles were made for purview_mcp_server-1.15.0-py3-none-any.whl:

Publisher: publish-to-pypi.yml on Keayoub/pvw-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

1.15.5

2 files

1.15.4

2 files

1.15.3

2 files

1.15.2

2 files

1.15.1

2 files

This release

1.15.0 This release

2 files

1.14.9

2 files

1.14.8

2 files

1.14.7

2 files

1.14.6

2 files

1.14.5

2 files

1.14.4

2 files

1.14.3

2 files

1.14.2

2 files

1.14.1

2 files

1.14.0

2 files

1.13.3

2 files

1.13.2

2 files

1.13.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page