Install Soda Core with the appropriate data source package: pip install soda-core-{datasource} (e.g. soda-core-postgres or soda-core-bigquery).
Create a configuration YAML file (e.g. configuration.yml) with the data_source block defining connection details; use environment variable references for credentials.
Write a SodaCL checks file (e.g. checks.yml) defining checks on tables and columns, for example: checks for orders:
- row_count > 0
- missing_count(email) = 0.
Run the scan from the command line: soda scan -d {datasource_name} -c configuration.yml checks.yml.
Review the scan output for PASS, FAIL, or WARN results per check; a non-zero exit code indicates at least one check failed, useful for CI/CD integration.
Known gotchas
The datasource name in the scan command (-d flag) must exactly match the key defined in the configuration YAML; a mismatch causes a datasource not found error.
Soda Cloud integration requires an api_key_id and api_key_secret in the configuration file; without them, results are local only and not pushed to the Soda Cloud platform.
SodaCL check syntax is whitespace-sensitive YAML; indentation errors in the checks file produce unhelpful parse errors — validate YAML structure before running.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp