Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Mewcp Chef Server

FreeNot checked

Mewcp Chef Server — Model Context Protocol server

GitHubEmbed

About

Mewcp Chef Server — Model Context Protocol server

README

A Model Context Protocol (MCP) server that exposes the Chef Infra Server API for generic, stateless, multi-tenant API operations.

Overview

This MCP is an integration server for Chef Infra Server and follows Curious Layer standards:

  • Stateless and multi-tenant by design
  • Per-request authentication (no shared in-memory auth/session state)
  • Generic API coverage for all Chef Server endpoints via tool calls

Authentication

All tenant-facing tools require authentication input on every call.

Chef Signature Auth (default)

Use this auth payload format in auth_data:

{
  "auth_type": "chef-signature",
  "user_id": "pivotal",
  "private_key": "-----BEGIN RSA PRIVATE KEY-----\n...\n-----END RSA PRIVATE KEY-----",
  "auth_version": "1.3",
  "chef_version": "18.0.0",
  "server_api_version": "1"
}

Notes:

  • private_key_base64 can be used instead of private_key.
  • auth_version supports 1.3 (recommended) and 1.0.

Basic Auth (for endpoints like /_stats)

{
  "auth_type": "basic",
  "basic_username": "statsuser",
  "basic_password": "your-password"
}

Tools

This server exposes dedicated tools per endpoint functionality (instead of a generic wrapper).

  • health_check

Global endpoint tools:

  • chef_authenticate_user
  • chef_get_license
  • chef_list_organizations_global
  • chef_create_organization_global
  • chef_get_organization_global
  • chef_update_organization_global
  • chef_delete_organization_global
  • chef_get_stats
  • chef_get_status
  • chef_list_users_global
  • chef_create_user_global
  • chef_get_user_global
  • chef_update_user_global
  • chef_delete_user_global
  • chef_list_user_keys_global
  • chef_create_user_key_global
  • chef_get_user_key_global
  • chef_update_user_key_global
  • chef_delete_user_key_global
  • chef_get_universe_global

Organization endpoint tools:

  • chef_list_association_requests
  • chef_create_association_request
  • chef_delete_association_request
  • chef_list_clients
  • chef_create_client
  • chef_get_client
  • chef_update_client
  • chef_delete_client
  • chef_list_client_keys
  • chef_create_client_key
  • chef_get_client_key
  • chef_update_client_key
  • chef_delete_client_key
  • chef_list_containers
  • chef_create_container
  • chef_get_container
  • chef_delete_container
  • chef_list_cookbook_artifacts
  • chef_get_cookbook_artifact
  • chef_get_cookbook_artifact_version
  • chef_upsert_cookbook_artifact_version
  • chef_delete_cookbook_artifact_version
  • chef_list_cookbooks
  • chef_get_latest_cookbooks
  • chef_get_latest_recipes
  • chef_get_cookbook
  • chef_get_cookbook_version
  • chef_upsert_cookbook_version
  • chef_delete_cookbook_version
  • chef_list_data_bags
  • chef_create_data_bag
  • chef_get_data_bag
  • chef_create_data_bag_item
  • chef_delete_data_bag
  • chef_get_data_bag_item
  • chef_update_data_bag_item
  • chef_delete_data_bag_item
  • chef_list_environments
  • chef_create_environment
  • chef_get_default_environment
  • chef_get_environment
  • chef_update_environment
  • chef_delete_environment
  • chef_get_environment_cookbook
  • chef_resolve_environment_cookbook_versions
  • chef_list_environment_cookbooks
  • chef_list_environment_nodes
  • chef_list_environment_recipes
  • chef_get_environment_role_run_list
  • chef_list_groups
  • chef_create_group
  • chef_get_group
  • chef_update_group
  • chef_delete_group
  • chef_list_nodes
  • chef_create_node
  • chef_get_node
  • chef_update_node
  • chef_delete_node
  • chef_head_node
  • chef_list_policies
  • chef_list_policy_groups
  • chef_get_principal
  • chef_get_required_recipe
  • chef_list_roles
  • chef_create_role
  • chef_get_role
  • chef_update_role
  • chef_delete_role
  • chef_list_role_environments
  • chef_get_role_environment
  • chef_create_sandbox
  • chef_commit_sandbox
  • chef_list_search_indexes
  • chef_search_index
  • chef_partial_search_index
  • chef_get_updated_since
  • chef_list_org_users
  • chef_associate_org_user
  • chef_get_org_user
  • chef_disassociate_org_user

Setup

pip install -r requirements.txt

Running the Server

# stdio
python server.py

# sse
python server.py --transport sse --host 127.0.0.1 --port 8001

# streamable-http
python server.py --transport streamable-http --host 127.0.0.1 --port 8001

Example Tool Calls

Global endpoint request

{
  "tool": "chef_list_organizations_global",
  "arguments": {
    "auth_data": "{\"auth_type\":\"chef-signature\",\"user_id\":\"pivotal\",\"private_key\":\"-----BEGIN RSA PRIVATE KEY-----\\n...\\n-----END RSA PRIVATE KEY-----\"}",
    "server_url": "https://chef.example.com",
    "path_params": "{}",
    "query_params": "{}"
  }
}

Organization-scoped request

{
  "tool": "chef_list_nodes",
  "arguments": {
    "auth_data": "{\"auth_type\":\"chef-signature\",\"user_id\":\"my-client\",\"private_key\":\"-----BEGIN RSA PRIVATE KEY-----\\n...\\n-----END RSA PRIVATE KEY-----\"}",
    "server_url": "https://chef.example.com",
    "path_params": "{\"organization\":\"my-org\"}",
    "query_params": "{}"
  }
}

Basic auth endpoint request

{
  "tool": "chef_get_stats",
  "arguments": {
    "auth_data": "{\"auth_type\":\"basic\",\"basic_username\":\"statsuser\",\"basic_password\":\"secret\"}",
    "server_url": "https://chef.example.com",
    "path_params": "{}",
    "query_params": "{\"format\":\"json\"}"
  }
}

Project Structure

cl-mcp-chef-server/
|-- server.py
|-- requirements.txt
|-- README.md
`-- chef_server_mcp/
    |-- __init__.py
    |-- cli.py
    |-- config.py
    |-- tools.py
    |-- schemas.py
    `-- service.py

Resources

from github.com/AStheTECH/mewcp-chef-server

Installing Mewcp Chef Server

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/AStheTECH/mewcp-chef-server

FAQ

Is Mewcp Chef Server MCP free?

Yes, Mewcp Chef Server MCP is free — one-click install via Unyly at no cost.

Does Mewcp Chef Server need an API key?

No, Mewcp Chef Server runs without API keys or environment variables.

Is Mewcp Chef Server hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Mewcp Chef Server in Claude Desktop, Claude Code or Cursor?

Open Mewcp Chef Server on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Mewcp Chef Server with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs