Read-only data quality monitoring for Postgres, BigQuery, Snowflake, MySQL and DuckDB with profiling, anomaly detection and optional dbt lineage.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add scherlok --env SCHERLOK_CONNECTION='<SCHERLOK_CONNECTION>' -- uvx scherlok~/.codex/config.toml
[mcp_servers.scherlok]
command = "uvx"
args = ["scherlok"]
env = { SCHERLOK_CONNECTION = "<SCHERLOK_CONNECTION>" }
# codex mcp add scherlok --env SCHERLOK_CONNECTION='<SCHERLOK_CONNECTION>' -- uvx scherlok~/.cursor/mcp.json
{
"mcpServers": {
"scherlok": {
"command": "uvx",
"args": [
"scherlok"
],
"env": {
"SCHERLOK_CONNECTION": "<SCHERLOK_CONNECTION>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"scherlok": {
"type": "stdio",
"command": "uvx",
"args": [
"scherlok"
],
"env": {
"SCHERLOK_CONNECTION": "<SCHERLOK_CONNECTION>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"scherlok": {
"command": "uvx",
"args": [
"scherlok"
],
"env": {
"SCHERLOK_CONNECTION": "<SCHERLOK_CONNECTION>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"scherlok": {
"command": "uvx",
"args": [
"scherlok"
],
"env": {
"SCHERLOK_CONNECTION": "<SCHERLOK_CONNECTION>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"scherlok": {
"command": "uvx",
"args": [
"scherlok"
],
"env": {
"SCHERLOK_CONNECTION": "<SCHERLOK_CONNECTION>"
}
}
}
}Environment variables
SCHERLOK_CONNECTION
Replace the placeholders with your own credentials and keep them out of version control.