Files
ROMFASTSQL/utils/claude-mcp-manager
Marius a68f6c381f Fix: Preserve original encoding in claude-mcp-toggle
The save_config function was using json.dump with default ensure_ascii=True,
which converted all Romanian characters to \uXXXX escape sequences, making
the entire ~/.claude.json file appear modified even when only changing MCP
server configuration for a specific project.

Added ensure_ascii=False to preserve original UTF-8 encoding and minimize
file changes to only the intended MCP server modifications.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-08 15:27:16 +03:00
..

Claude Code MCP Server Toggle Utility

Utility CLI pentru gestionarea serverelor MCP (Model Context Protocol) în Claude Code.

Caracteristici

Enable/disable servere MCP individuale Enable/disable toate serverele Activare selectivă (doar anumite servere) List servere cu status (enabled/disabled) Mod interactiv când rulezi fără parametri Păstrează configurația când dezactivezi servere

Instalare

Scriptul este deja în utils/claude-mcp-toggle și poate fi rulat direct:

./utils/claude-mcp-toggle

Sau îl poți instala global:

sudo cp utils/claude-mcp-toggle /usr/local/bin/
# sau
cp utils/claude-mcp-toggle ~/.local/bin/

Comenzi

List Servere

# Listează toate proiectele cu MCP servers
claude-mcp-toggle list

# Listează servere pentru proiect curent
claude-mcp-toggle list .

# Listează servere pentru proiect specific
claude-mcp-toggle list /path/to/project

Output:

📁 Project: /mnt/e/proiecte/ROMFASTSQL
============================================================

✅ Enabled Servers:
  • chrome-devtools
    Command: npx
    Args: ['chrome-devtools-mcp@latest']

❌ Disabled Servers:
  • filesystem
    Command: npx
    Args: ['-y', '@modelcontextprotocol/server-filesystem', '.']

Enable/Disable Individual

# Enable un server dezactivat
claude-mcp-toggle enable . chrome-devtools

# Disable un server activ
claude-mcp-toggle disable . chrome-devtools

Enable/Disable Toate

# Dezactivează toate serverele
claude-mcp-toggle disable-all .

# Activează toate serverele
claude-mcp-toggle enable-all .

Set - Activare Selectivă

Cea mai utilă comandă! Dezactivează toate serverele, apoi activează doar pe cele specificate:

# Activează doar chrome-devtools (restul disabled)
claude-mcp-toggle set . chrome-devtools

# Activează chrome-devtools și filesystem (restul disabled)
claude-mcp-toggle set . chrome-devtools filesystem

# Activează 3 servere specific
claude-mcp-toggle set . server1 server2 server3

Mod Interactiv

Rulează fără parametri din directorul proiectului:

cd /mnt/e/proiecte/ROMFASTSQL
claude-mcp-toggle

Output interactiv:

📁 Current Project: /mnt/e/proiecte/ROMFASTSQL
============================================================

✅ Enabled Servers:
  1. chrome-devtools

❌ Disabled Servers:
  2. filesystem

============================================================
Commands:
  [e]nable <number>  - Enable a disabled server
  [d]isable <number> - Disable an enabled server
  [l]ist            - Show all servers with details
  [q]uit            - Exit
============================================================

Enter command:

Comenzi interactive:

  • d 1 - dezactivează serverul #1
  • e 2 - activează serverul #2
  • l - listare detaliată
  • q - ieșire

Use Cases

Development cu Tools Specifice

# Lucrezi doar cu Chrome DevTools
claude-mcp-toggle set . chrome-devtools

# Ai nevoie și de filesystem
claude-mcp-toggle set . chrome-devtools filesystem

Testing

# Disable toate pentru performance testing
claude-mcp-toggle disable-all .

# Enable doar ce testezi
claude-mcp-toggle set . test-server

Production

# Enable toate
claude-mcp-toggle enable-all .

După Lucru

# Disable toate pentru a nu încărca servere inutile
claude-mcp-toggle disable-all .

Cum Funcționează

Scriptul editează ~/.claude.json care conține configurația Claude Code pentru fiecare proiect:

  • Servere active: stocate în projects[path].mcpServers
  • Servere disabled: mutate în projects[path]._disabledServers

Când disable un server:

  1. Configurația este mutată din mcpServers în _disabledServers
  2. Nu pierzi configurația (env vars, args, etc.)

Când enable un server:

  1. Configurația este mutată înapoi din _disabledServers în mcpServers
  2. Claude Code va încărca serverul la următoarea rulare

Exemple Complete

# 1. Vezi ce servere ai
./utils/claude-mcp-toggle list .

# 2. Activează doar chrome-devtools
./utils/claude-mcp-toggle set . chrome-devtools

# 3. Verifică
./utils/claude-mcp-toggle list .

# 4. Adaugă filesystem
./utils/claude-mcp-toggle set . chrome-devtools filesystem

# 5. Când termini, disable toate
./utils/claude-mcp-toggle disable-all .

# 6. Mâine, enable toate
./utils/claude-mcp-toggle enable-all .

Troubleshooting

Error: Project not found

Asigură-te că directorul este un proiect Claude Code (are intrare în ~/.claude.json):

# Verifică ce proiecte există
claude-mcp-toggle list

Error: Server not found

Listează serverele disponibile:

claude-mcp-toggle list .

Serverele nu se încarcă în Claude Code

După modificări, trebuie să repornești Claude Code sau să rulezi din nou în proiect:

# Claude Code va detecta modificările la următoarea rulare
claude

Note

  • Serverele disabled păstrează configurația completă
  • _disabledServers este o cheie custom adăugată de acest script
  • Compatible cu Claude Code CLI (nu Claude Desktop)
  • Editează direct ~/.claude.json (fă backup dacă modifici manual)

Autor

Created pentru proiectul ROMFASTSQL Data: 2025-10-08