Skip to main content

Sifflet MCP Server

An MCP (Model Context Protocol) server that enables data observability operations with the Sifflet platform.

Features

This project provides an MCP server enabling interactions with Sifflet API :

  • Explore assets: Search for tables, views, dashboards, and other data assets. View their schema, owners, tags, and their metadata.
  • Explore monitors: Discover existing monitors and generate their Monitor-as-Code YAML configurations.
  • Generate new monitors from a description: turn a plain-English requirement (e.g. "alert when row count drops below 1000 on the 'orders' table") into a Monitor-as-Code YAML snippet for a given list of datasets. Requires Editor role on the targeted domain.
  • Explore incidents: List all data observability incidents detected by the Sifflet platform.
  • Perform impact analysis: Start from an incident and trace the downstream assets affected.

Sample Use Cases

Here are a few scenarios where the Sifflet MCP Server can be particularly helpful:

  • Understanding Downstream Impact: You're modifying a dbt model and need to identify the owners of dependent downstream models and dashboards. The MCP server can provide these details, allowing you to proactively notify them about your upcoming changes.
  • Accessing Up-to-Date Table Metadata: You're about to update a table in your data warehouse. Before you proceed, you can query the MCP server to get its latest metadata. This includes information on how the table is currently monitored in Sifflet, whether it's involved in any ongoing incidents, the list of its frequent users, and other relevant operational details.
  • Bootstrapping New Asset Monitoring: You're creating a new table (or dbt model) and want to ensure it's well-monitored from the start. You can ask the MCP server to list the Sifflet monitors already created for similar existing assets. The server can then provide the Monitor-as-Code YAML configurations, which you can adapt and deploy.
  • Generating a Monitor from a Description: You want to export the YAML configuration of a Monitor you want to create (e.g. "alert when row count drops below 1000 on the 'orders' table"). The get_monitor_code_by_description tool returns a Monitor-as-Code YAML snippet for a given list of datasets that you can adapt and commit. Note: requires Editor role on the targeted domain (see Prerequisites).

Usage

Prerequisites

  • uv (Python package installer/environment manager)
      # uv installation script for Linux/MacOS
      curl -LsSf https://astral.sh/uv/install.sh | sh
    
  • A Sifflet backend running locally or remotely. You will need the following information:
    • SIFFLET_API_TOKEN: see how to generate one. A token with the Viewer role is enough for most tools. The get_monitor_code_by_description tool additionally requires Editor role on the targeted domain. If you plan to use that tool, generate a token with Editor access on that domain.
    • SIFFLET_BACKEND_URL: Full URL to the Sifflet backend for instance: https://<tenant_name>.siffletdata.com/api/

Using with MCP Clients

Cursor

Add the following configuration in the mcp.json. Follow Cursor instructions to set it up.

{
  "mcpServers": {
    "mcp_server_sifflet": {
      "command": "uvx",
      "args": ["sifflet-mcp@latest"],
      "env": {
        "SIFFLET_API_TOKEN": "<access_token>",
        "SIFFLET_BACKEND_URL": "https://<tenant_name>.siffletdata.com/api/"
      }
    }
  }
}

Note: You may need to use the full path to the uvx executable in the command field. You can find the full path by running which uvx in your terminal.

Claude Desktop

Follow the instructions in the Claude documentation to set up claude_desktop_config.json.

Then, add the following configuration to your claude_desktop_config.json file:

{
  "mcpServers": {
    "sifflet-mcp": {
      "command": "uvx",
      "args": ["sifflet-mcp@latest"],
      "env": {
        "SIFFLET_API_TOKEN": "<access_token>",
        "SIFFLET_BACKEND_URL": "https://<tenant_name>.siffletdata.com/api/"
      }
    }
  }
}

Note: You may need to use the full path to the uvx executable in the command field. You can find the full path by running which uvx in your terminal.

Contributing

For development setup and contribution guidelines, please see CONTRIBUTING.md.

Reporting Problems

If you encounter any problems or have a bug to report, please feel free to open an issue on this GitHub repository. Alternatively, you can reach out to your Sifflet Customer Success team.

Release files for sifflet-mcp 0.1.7

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

Source distribution (sdist)

Source distribution for sifflet-mcp 0.1.7
File Size Uploaded
sifflet_mcp-0.1.7.tar.gz 25.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sifflet-mcp 0.1.7
File Interpreter ABI Platform
sifflet_mcp-0.1.7-py3-none-any.whl Python 3 none any Details

Total release size: 33.4 kB

Release files / sifflet_mcp-0.1.7.tar.gz

Download URL sifflet_mcp-0.1.7.tar.gz
Size 25.6 kB
Tags Source
SHA-256 checksum
How to use checksums
6f99d661321d4f26df2850f68c3abeb1b54815f8d75e6aa2ba94a3bbe317d753
BLAKE2b-256 checksum
How to use checksums
28f8b86e00d859e68a10dae9be451f06dc8442f61d4b68f229819321bec54e0f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 3, 2026.

Transparency log

Release files / sifflet_mcp-0.1.7-py3-none-any.whl

Download URL sifflet_mcp-0.1.7-py3-none-any.whl
Size 7.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
70fc9c9c28bd9c79201455d454ce547ff9007555aafa2d8602863c7fd733cfe4
BLAKE2b-256 checksum
How to use checksums
369a05e7256b9e9b2f664f4a58ad4952ee77d3818592afbfad50ec6f08f39f30
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 3, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.7 This release

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.1

2 release files

0.1.0

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