Skip to content

Commit 76fa785

Browse files
committed
feat: add ClaudeCodeManager to client registry and update config path
1 parent 6f49a7b commit 76fa785

File tree

3 files changed

+7
-5
lines changed

3 files changed

+7
-5
lines changed

src/mcpm/clients/client_registry.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
from mcpm.clients.client_config import ClientConfigManager
1111

1212
# Import all client managers
13+
from mcpm.clients.managers.claude_code import ClaudeCodeManager
1314
from mcpm.clients.managers.claude_desktop import ClaudeDesktopManager
1415
from mcpm.clients.managers.cline import ClineManager, RooCodeManager
1516
from mcpm.clients.managers.continue_extension import ContinueManager
@@ -34,6 +35,7 @@ class ClientRegistry:
3435

3536
# Dictionary mapping client keys to manager instances
3637
_CLIENT_MANAGERS = {
38+
"claude-code": ClaudeCodeManager(),
3739
"claude-desktop": ClaudeDesktopManager(),
3840
"windsurf": WindsurfManager(),
3941
"cursor": CursorManager(),

src/mcpm/clients/managers/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
This package contains specific implementations of client managers for MCP clients.
55
"""
66

7+
from mcpm.clients.managers.claude_code import ClaudeCodeManager
78
from mcpm.clients.managers.claude_desktop import ClaudeDesktopManager
89
from mcpm.clients.managers.cline import ClineManager
910
from mcpm.clients.managers.continue_extension import ContinueManager
@@ -14,6 +15,7 @@
1415
from mcpm.clients.managers.windsurf import WindsurfManager
1516

1617
__all__ = [
18+
"ClaudeCodeManager",
1719
"ClaudeDesktopManager",
1820
"CursorManager",
1921
"WindsurfManager",

src/mcpm/clients/managers/claude_code.py

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@
44

55
import logging
66
import os
7+
import shutil
78
from typing import Any, Dict
89

910
from mcpm.clients.base import JSONClientManager
10-
from mcpm.utils.platform import is_windows
1111

1212
logger = logging.getLogger(__name__)
1313

@@ -34,7 +34,7 @@ def __init__(self, config_path=None):
3434
# Claude Code uses .mcp.json in the current working directory for project scope
3535
# For user scope, it uses the home directory
3636
# We'll default to user scope configuration
37-
self.config_path = os.path.expanduser("~/.mcp.json")
37+
self.config_path = os.path.expanduser("~/.claude.json")
3838

3939
def _get_empty_config(self) -> Dict[str, Any]:
4040
"""Get empty config structure for Claude Code"""
@@ -46,10 +46,8 @@ def is_client_installed(self) -> bool:
4646
Returns:
4747
bool: True if claude command is available, False otherwise
4848
"""
49-
import shutil
50-
5149
# Check if 'claude' command is available in PATH
52-
claude_executable = "claude.exe" if is_windows() else "claude"
50+
claude_executable = "claude.exe" if self._system == "Windows" else "claude"
5351
return shutil.which(claude_executable) is not None
5452

5553
def get_client_info(self) -> Dict[str, str]:

0 commit comments

Comments
 (0)