Back to Directory/Developer Tools

io.github.composable-delivery/snowfakery-mcp

MCP server for authoring, analyzing, debugging, and running Snowfakery recipes

Developer ToolsPythonv0.0.6

Snowfakery MCP Server

CI PyPI License

Power up your AI workflows with Snowfakery data generation — Use Claude, ChatGPT, and other AI assistants to author, debug, and run data recipes through the Model Context Protocol.

MCP Registry

mcp-name: io.github.composable-delivery/snowfakery-mcp

What is this?

Snowfakery is a YAML-based tool for programmatically generating test data. This MCP server connects Snowfakery to AI assistants, letting you:

  • Draft recipes with AI assistance backed by real Snowfakery docs and examples
  • Validate recipes before running them with detailed error feedback
  • Execute recipes and iterate on results interactively
  • Debug issues with static analysis and recipe inspection
  • Generate Salesforce mappings for CumulusCI workflows

Perfect for teams that need realistic test data—from Salesforce admins to developers building data pipelines.

Quick Start

Install uv

We recommend using uv for installs and for running from source.

  • Install uv (macOS/Linux):

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  • Install uv (Windows PowerShell):

    powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
    

See the official uv install docs: https://docs.astral.sh/uv/getting-started/installation/

Claude Desktop (recommended)

For Claude Desktop, prefer using the .mcpb bundle from Releases:

This bundle includes the pinned runtime metadata (uv.lock, manifest.json) and is the easiest way to get a reproducible setup.

Install & Run (CLI)

# Recommended: isolated install
uv tool install snowfakery-mcp

# Then run the server
snowfakery-mcp

Or from source:

git clone https://github.com/composable-delivery/snowfakery-mcp.git
cd snowfakery-mcp
uv sync
uv run snowfakery-mcp

Connect to Claude (Desktop)

Add to your Claude Desktop claude_desktop_config.json:

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

Then ask Claude:

"Show me an example Snowfakery recipe" or "Help me write a recipe to generate 100 Salesforce accounts"

Features

Resources — Access docs, examples, and schemas:

  • Snowfakery documentation and recipe examples
  • JSON schema for recipe validation
  • Run outputs and artifacts

Tools — Interact with recipes:

  • Validate & analyze recipes (catch errors early)
  • Run recipes and capture output
  • List & retrieve example recipes
  • Generate CumulusCI mapping files

Learn More

Community

We want this to be welcoming at any level. Questions, ideas, and contributions are always welcome!

Development

# Install dev dependencies
uv sync --all-groups

# Run tests
uv run pytest

# Type check
uv run mypy snowfakery_mcp

# Lint & format
uv run ruff check snowfakery_mcp tests scripts evals
uv run ruff format snowfakery_mcp tests scripts evals

Evals (Agentic Testing)

This repo includes inspect-ai tasks for testing the MCP server with AI models:

# Install eval dependencies
uv sync --group evals

# Run evaluation
uv run inspect eval evals/inspect_tasks.py@snowfakery_mcp_agentic --model openai/gpt-4o-mini

See evals/ for more examples and troubleshooting.

Notes

  • The repo includes the upstream Snowfakery repo as a git submodule (Snowfakery/) for development
  • When running from source, use uv run ... to ensure the pinned environment
  • PyPI installs use bundled docs/examples (no submodule required)

Releases

See GitHub Releases for sdist, wheel, and .mcpb bundles (recommended for Claude Desktop).

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
uvx snowfakery-mcp

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-composable-delivery-snowfakery-mcp": {
      "command": "uvx",
      "args": [
        "snowfakery-mcp"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

snowfakery-mcppypi

Compatible MCP Clients

io.github.composable-delivery/snowfakery-mcp works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More