Named profiles for Claude Code MCP servers and plugins
Project description
claude-code-profiles
Claude Code loads every MCP server and plugin you have configured. As your setup grows, that can become context clutter with irrelevant toolings for different situations.
ccp lets you define named profiles and launch Claude with only what that context needs. Run multiple sessions in parallel, each with a different profile, without touching your settings.json.
ccp infra # terminal 1: claude with k8s, pagerduty, terraform
ccp code # terminal 2: claude with github, lsp, docs
ccp research # terminal 3: claude with search and notes only
Each runs independently with its own isolated tool set, allowing for different setups in parallel sessions.
Install
uv tool install claude-code-profiles
Requires Python 3.9+ and Claude Code.
Quickstart
ccp create <profile> # opens editor pre-filled with all your MCPs and plugins
# remove what you don't want, save and close
ccp <profile> # launch claude with that profile
Commands
ccp list # list profiles
ccp show <name> # inspect a profile
ccp create <name> # create a new profile
ccp edit <name> # edit an existing profile
ccp remove <name> # delete a profile
ccp <name> [args...] # launch claude with profile applied
Profile format
{
"description": "Coding — GitHub and docs only",
"enabledMcpjsonServers": ["github", "filesystem"],
"enabledPlugins": ["context7@claude-plugins-official"]
}
Profiles live in ~/.claude/profiles/ by default. Override with $CCP_PROFILES_DIR.
How it works
When you run ccp <name>, it builds a filtered MCP config from your profile and launches Claude with --mcp-config --strict-mcp-config --settings, using temp files that are cleaned up after the session. Nothing is written to your settings.
MCP definitions are discovered from ~/.claude.json, ~/.claude/settings.json, and .mcp.json files walked up from your current directory.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file claude_code_profiles-1.0.1.tar.gz.
File metadata
- Download URL: claude_code_profiles-1.0.1.tar.gz
- Upload date:
- Size: 8.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
61c42be42c02cec27f409fdcbda6cfa4624b05aba0502ee51d0c053fa55e8457
|
|
| MD5 |
b6bf05e0a800c305fd558ad1244ccdc7
|
|
| BLAKE2b-256 |
6455fdf8d8312cd1946295bbbc58cdb21b9455959bf39e04b30ab514d68f271e
|
File details
Details for the file claude_code_profiles-1.0.1-py3-none-any.whl.
File metadata
- Download URL: claude_code_profiles-1.0.1-py3-none-any.whl
- Upload date:
- Size: 6.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
10fafee627343b69717ac4ab1078279acf535dacdaaef42d27d10d748e7ae592
|
|
| MD5 |
921fc1ff6fb2329feb65ffe2afc06428
|
|
| BLAKE2b-256 |
9c0fa7776778248304da9976ae10866a88f1a21ef9506c314cee45702811d8bf
|