Skip to main content

StreamWright MCP Server

PyPI version License Python

StreamWright MCP is the official Model Context Protocol (MCP) server for StreamWright, the declarative data integration and ELT framework.

It allows AI coding assistants (such as Claude Desktop, Cursor, Google Antigravity, GitHub Copilot, and Zed) to inspect installed connectors, query Draft-7 pipeline schemas, validate YAML sources with pinpoint error locations, and analyze DuckDB SQL transform pipelines in real time — eliminating hallucinations when building data pipelines.


Key Capabilities

  • In-Code Connector Contracts: Introspects installed connector packages (restapi, postgres, s3, etc.) directly from Python entry points to extract live contracts, authentication specs, and transport behaviors without static copies.
  • Hub Discovery: Discovers uninstalled connectors from the StreamWright Hub registry and provides instant installation recipes.
  • Static Pipeline Validation: Validates source.yaml and streams/*.yaml pipelines before execution, returning structured diagnostics with file, line, and column locations.
  • SQL Transform Inspection: Parses and traces multi-step DuckDB SQL transformations, table dependencies, and export formats for any stream.
  • Core DSL Schemas: Exposes authoritative Draft-7 JSON schemas for editor autocomplete, linting, and LLM grounding.
  • CLI Guidance: Steers AI agents to explore live CLI commands (sw run, sw validate, sw connectors, sw mcp) in the local workspace.

Installation

Install via pip:

pip install streamwright-mcp

Or using uv:

uv pip install streamwright-mcp

Configuration

Add streamwright-mcp to your MCP client configuration file (e.g., claude_desktop_config.json, mcp.json, or Antigravity's mcp_config.json).

Standard Configuration

{
  "mcpServers": {
    "streamwright": {
      "command": "streamwright-mcp"
    }
  }
}

Using StreamWright CLI Shorthand (sw)

If you have streamwright installed, you can launch the MCP server directly via sw mcp:

{
  "mcpServers": {
    "streamwright": {
      "command": "sw",
      "args": ["mcp"]
    }
  }
}

Ephemeral Execution (uvx)

Run on-demand without installing into your global environment:

{
  "mcpServers": {
    "streamwright": {
      "command": "uvx",
      "args": ["streamwright-mcp"]
    }
  }
}

Usage

Starting the Server

The server runs over standard input/output (stdio) by default:

streamwright-mcp

You can also specify transport options:

# stdio (default)
streamwright-mcp --transport stdio

# Server-Sent Events (SSE)
streamwright-mcp --transport sse

Or run as a Python module:

python -m streamwright_mcp.cli

Resources

MCP clients that support resource attachments can access:

  • streamwright://schema/source — JSON Schema (Draft 7) for source.yaml.
  • streamwright://schema/stream — JSON Schema (Draft 7) for streams/<stream>.yaml.
  • streamwright://schema/core — Full Markdown specification of the StreamWright DSL.

Documentation & Ecosystem

Metadata

Release files for streamwright-mcp 0.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for streamwright-mcp 0.0.2
File Size Uploaded
streamwright_mcp-0.0.2.tar.gz 20.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for streamwright-mcp 0.0.2
File Interpreter ABI Platform
streamwright_mcp-0.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 38.8 kB

Release files / streamwright_mcp-0.0.2.tar.gz

Download URL streamwright_mcp-0.0.2.tar.gz
Size 20.1 kB
Tags Source
SHA-256 checksum
How to use checksums
3c10f111ddfe24cae561115774b8e5f67d2da4eee6f40a07041fec3c6e652ff9
BLAKE2b-256 checksum
How to use checksums
b73bd8163f377e6d1f9634d1ff726c6fc730580ccbb98d5703fa25ec8f27ef57
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.7

Release files / streamwright_mcp-0.0.2-py3-none-any.whl

Download URL streamwright_mcp-0.0.2-py3-none-any.whl
Size 18.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5c29d9f088900cbec658ba86e8e179340f1088be384623b3fd9107492ddba4a4
BLAKE2b-256 checksum
How to use checksums
913abf10ee7a841784eb09a3c4ec39756207222607a10dace5bc5226416c3d90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.7

Release history Release notifications | RSS feed

This release

0.0.2 This release

2 release files

0.0.1

2 release 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