diff --git a/hermes_cli/mcp_config.py b/hermes_cli/mcp_config.py index 9997b1edd1c..304cfcc61b2 100644 --- a/hermes_cli/mcp_config.py +++ b/hermes_cli/mcp_config.py @@ -152,7 +152,8 @@ def _replace_mcp_servers(servers: Dict[str, dict]) -> Tuple[bool, List[str]]: def _env_key_for_server(name: str) -> str: """Convert server name to an env-var key like ``MCP_MYSERVER_API_KEY``.""" - return f"MCP_{name.upper().replace('-', '_')}_API_KEY" + suffix = re.sub(r"[^A-Za-z0-9_]", "_", name.upper()).strip("_") + return f"MCP_{suffix}_API_KEY" def _strip_bearer_prefix(token: str) -> str: diff --git a/tests/hermes_cli/test_mcp_config.py b/tests/hermes_cli/test_mcp_config.py index 8b2f464335f..e88f0496040 100644 --- a/tests/hermes_cli/test_mcp_config.py +++ b/tests/hermes_cli/test_mcp_config.py @@ -776,6 +776,8 @@ class TestConfigHelpers: assert _env_key_for_server("ink") == "MCP_INK_API_KEY" assert _env_key_for_server("my-server") == "MCP_MY_SERVER_API_KEY" + assert _env_key_for_server("my.server") == "MCP_MY_SERVER_API_KEY" + assert _env_key_for_server("github/mcp") == "MCP_GITHUB_MCP_API_KEY" # ---------------------------------------------------------------------------