MCP server for interaction with Sifflet data observability platform
Project description
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.
- 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.
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:
<access_token>: you can find more information on how to generate it here<your_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": "uv run --with sifflet-mcp --no-project sifflet-mcp",
"env": {
"SIFFLET_API_TOKEN": "<access_token>",
"SIFFLET_URL": "<your_sifflet_backend_url>"
}
}
}
}
Claude
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"],
"env": {
"SIFFLET_API_TOKEN": "<access_token>",
"SIFFLET_URL": "<your_sifflet_backend_url>"
}
}
}
}
Development
Environment Setup
# clone the repository
git clone https://github.com/siffletdata/sifflet-mcp.git
cd sifflet-mcp
# create a virtual environment
uv venv
# install pre-commit
uv run pre-commit install
# run the server
uv run sifflet-mcp [--sse]
# Cursor setup: mcp.json or equivalent
# You may need to put the full path to the uv executable in the command field. You can get this by running `which uv` on MacOS/Linux or `where uv` on Windows.
uv --directory <PATH_TO_PARENT_FOLDER>/sifflet-mcp run src/sifflet_mcp/server.py
To add new features or tools:
- Add new tool functions in
server.pyusing the@mcp.tooldecorator - The server will automatically discover and use these tools
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sifflet_mcp-0.1.1.tar.gz.
File metadata
- Download URL: sifflet_mcp-0.1.1.tar.gz
- Upload date:
- Size: 100.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a5dcd96ab7158e527e38da4d76cfe7a0bf5a84372462e46538ec57b83571b861
|
|
| MD5 |
7b895094e59455b667143c8df585a96f
|
|
| BLAKE2b-256 |
ca6cb052470e834b9f42a65b52defb54673b68e938fbf159794fceca999616b1
|
Provenance
The following attestation bundles were made for sifflet_mcp-0.1.1.tar.gz:
Publisher:
release.yml on siffletdata/sifflet-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sifflet_mcp-0.1.1.tar.gz -
Subject digest:
a5dcd96ab7158e527e38da4d76cfe7a0bf5a84372462e46538ec57b83571b861 - Sigstore transparency entry: 211343237
- Sigstore integration time:
-
Permalink:
siffletdata/sifflet-mcp@2721b05200f0149d2dd4d67f3e66dd330cfb07bc -
Branch / Tag:
refs/heads/main - Owner: https://github.com/siffletdata
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@2721b05200f0149d2dd4d67f3e66dd330cfb07bc -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file sifflet_mcp-0.1.1-py3-none-any.whl.
File metadata
- Download URL: sifflet_mcp-0.1.1-py3-none-any.whl
- Upload date:
- Size: 6.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc0a58b6d1e1d4244e0dcb86c526fc1a2a94799dfba1f1fcfe26481bfeb11b10
|
|
| MD5 |
f77c6c9368e468ef0d8dcb90ff43ea0f
|
|
| BLAKE2b-256 |
98f99e2e2b52cfd579ea11aa8a368a2791f9d4b145e89b04ccf2b56660f47498
|
Provenance
The following attestation bundles were made for sifflet_mcp-0.1.1-py3-none-any.whl:
Publisher:
release.yml on siffletdata/sifflet-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sifflet_mcp-0.1.1-py3-none-any.whl -
Subject digest:
cc0a58b6d1e1d4244e0dcb86c526fc1a2a94799dfba1f1fcfe26481bfeb11b10 - Sigstore transparency entry: 211343241
- Sigstore integration time:
-
Permalink:
siffletdata/sifflet-mcp@2721b05200f0149d2dd4d67f3e66dd330cfb07bc -
Branch / Tag:
refs/heads/main - Owner: https://github.com/siffletdata
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@2721b05200f0149d2dd4d67f3e66dd330cfb07bc -
Trigger Event:
workflow_dispatch
-
Statement type: