SousChef

An AI-powered MCP server providing Chef-to-Ansible migration tooling for enterprise infrastructure transformations.
  • python

0

GitHub Stars

python

Language

6 months ago

First Indexed

3 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "kpeacocke-souschef": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/souschef",
        "run",
        "souschef"
      ]
    }
  }
}

SousChef is an AI-powered MCP Server that streamlines Chef-to-Ansible migrations for enterprise infrastructure. It exposes a rich suite of migration tools, enabling you to analyze cookbooks, convert Chef resources to Ansible tasks, integrate with AWX/AAP, manage secrets and data bags, and plan modern deployment patterns. With MCP you can orchestrate complex migrations from discovery through validation, all in a single, consistent interface.

How to use

You use SousChef with an MCP client to perform end-to-end migration work from Chef to Ansible. Start by discovering the migration scope, then progressively convert cookbooks, environments, data bags, and resources into Ansible equivalents. You can also generate AWX/AAP artifacts, run validation tests, and produce a detailed migration plan. Typical workflows include analyzing migration complexity, generating a migration plan, converting recipes to playbooks, and creating dynamic inventories from Chef data.

How to install

Prerequisites: You need Python 3.14 or newer and the MCP runner tool uv for dependency management. You should also have an MCP-enabled client (for example Claude Desktop or a VS Code MCP extension).

# Clone the SousChef project
git clone https://github.com/your-org/souschef
cd souschef

# Install dependencies via the MCP runner
uv sync

# Optional: run the server locally via MCP (see configuration below)
# The command illustrates starting SousChef with the MCP client

Configuration & running with an MCP client

Configure your MCP client to connect to SousChef using a local stdio (direct) setup. You provide the runtime command for the MCP client along with the working directory where SousChef is located.

{
  "mcpServers": {
    "souschef": {
      "command": "uv",
      "args": ["--directory", "/path/to/souschef", "run", "souschef"],
      "env": {}
    }
  }
}

What you can accomplish with SousChef

  • Analyze Chef cookbooks to extract recipes, attributes, metadata, and templates.
  • Convert Chef resources to equivalent Ansible tasks and generate playbooks from recipes.
  • Transform Chef search patterns into dynamic Ansible inventories and generate dynamic inventory scripts.
  • Validate infrastructure state by converting InSpec profiles to tests in Testinfra or Ansible assert.
  • Convert data bags and secrets to Ansible vars and Vault, and map environments to inventory groups.
  • Generate AWX/AAP configurations, including job templates, workflows, and inventory sources.
  • Plan and assess migration complexity, dependencies, deployment patterns, and risk, then generate a migration plan and report.

Additional usage notes

You can drive SousChef through the CLI for standalone parsing and conversion tasks. Use the available commands to inspect recipes, templates, attributes, metadata, structure, and to perform conversions. When you run validation, you can output results in multiple formats (InSpec, Testinfra, Ansible assert) and integrate them into your CI/CD pipelines.

Available tools

list_directory

List the contents of a directory to explore cookbook structures.

read_file

Read the contents of a file with error handling.

read_cookbook_metadata

Parse metadata.rb to extract cookbook information and dependencies.

parse_recipe

Parse a Chef recipe to extract resources, actions, and properties.

parse_attributes

Parse attribute files and analyze precedence.

list_cookbook_structure

Display the complete cookbook directory hierarchy.

parse_template

Parse ERB templates and convert to Jinja2 with variable extraction.

parse_custom_resource

Parse custom resources or LWRP files to extract properties, attributes, and actions.

convert_resource_to_task

Convert a Chef resource to an Ansible task.

generate_playbook_from_recipe

Generate an Ansible playbook from a Chef recipe.

convert_chef_search_to_inventory

Convert Chef search patterns to dynamic Ansible inventory groups.

generate_dynamic_inventory_script

Create a dynamic inventory script from Chef server queries.

analyze_chef_search_patterns

Analyze how Chef search patterns are used in cookbooks.

parse_inspec_profile

Parse InSpec profiles and controls.

convert_inspec_to_test

Convert InSpec controls to Testinfra or Ansible assert tasks.

generate_inspec_from_recipe

Auto-generate InSpec validation from Chef recipes.

convert_chef_databag_to_vars

Transform Chef data bags into Ansible variable files.

generate_ansible_vault_from_databags

Convert encrypted data bags to Ansible Vault.

analyze_chef_databag_usage

Analyze data bag usage patterns in cookbooks.

convert_chef_environment_to_inventory_group

Transform Chef environments into inventory groups.

generate_inventory_from_chef_environments

Generate a full inventory from Chef environments.

analyze_chef_environment_usage

Analyze environment usage in cookbooks.

generate_awx_job_template_from_cookbook

Create AWX job templates from cookbooks.

generate_awx_workflow_from_chef_runlist

Transform Chef run-lists into AWX workflows.

generate_awx_project_from_cookbooks

Generate AWX projects from cookbook collections.

generate_awx_inventory_source_from_chef

Create AWX dynamic inventory sources from a Chef server.

convert_chef_deployment_to_ansible_strategy

Convert deployment recipes to Ansible deployment strategies.

generate_blue_green_deployment_playbook

Create blue/green deployment playbooks.

generate_canary_deployment_strategy

Generate canary deployment configurations.

analyze_chef_application_patterns

Identify application deployment patterns in cookbooks.

assess_chef_migration_complexity

Assess migration complexity and risk.

generate_migration_plan

Create a detailed migration execution plan.

analyze_cookbook_dependencies

Analyze dependencies and determine migration order.

generate_migration_report

Generate executive and technical migration reports.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational