Summary
codex mcp list fails before it can list MCP servers when the Codex config contains CodeIsland/DaVinci-related tool permission sections under mcp_servers.davinci_resolve, while the actual MCP server is named mcp_servers.davinci-resolve.
Codex treats the underscore path as a separate MCP server with no valid server invocation, then aborts bootstrap with invalid transport.
Reproduction
From a terminal with CodeIsland installed and Codex configured:
$ mcp list
Usage: mcp [OPTIONS] COMMAND [ARGS]...
Try 'mcp --help' for help.
Error: No such command 'list'.
$ codex mcp list
Error: failed to load bootstrap configuration
Caused by:
invalid transport
in mcp_servers.davinci_resolve
Relevant Codex config shape:
[mcp_servers.davinci-resolve]
command = "/Users/.../Library/Application Support/davinci-resolve-mcp/venv/bin/python"
args = ["/Users/.../Library/Application Support/davinci-resolve-mcp/src/server.py"]
env = { DAVINCI_RESOLVE_BRIDGE = "1" }
[mcp_servers.davinci_resolve.tools.project_manager_folders]
approval_mode = "approve"
[mcp_servers.davinci_resolve.tools.project_manager_database]
approval_mode = "approve"
[mcp_servers.davinci_resolve.tools.project_manager]
approval_mode = "approve"
Expected behavior
CodeIsland should not create or preserve tool approval config under a server name that differs from the actual MCP server name.
If the MCP server is:
[mcp_servers.davinci-resolve]
then tool permissions should also use:
[mcp_servers.davinci-resolve.tools.project_manager_folders]
[mcp_servers.davinci-resolve.tools.project_manager_database]
[mcp_servers.davinci-resolve.tools.project_manager]
Actual behavior
Tool approval sections are under davinci_resolve with an underscore. Codex interprets that as another MCP server and fails bootstrap before codex mcp list can run.
Workaround
Manually rename the permission section headers from davinci_resolve to davinci-resolve, or delete those stale permission sections.
Environment
- macOS
- CodeIsland installed with
~/.codeisland/codeisland-bridge
- Codex CLI
- DaVinci Resolve MCP configured as a local stdio server
Suggested fix
When generating or repairing Codex MCP tool approval sections, CodeIsland should reuse the exact configured MCP server key instead of normalizing or deriving a different name. It may also be useful to detect orphaned mcp_servers.<name>.tools.* sections where <name> has no matching server command/url and either repair or warn before writing the config.
Summary
codex mcp listfails before it can list MCP servers when the Codex config contains CodeIsland/DaVinci-related tool permission sections undermcp_servers.davinci_resolve, while the actual MCP server is namedmcp_servers.davinci-resolve.Codex treats the underscore path as a separate MCP server with no valid server invocation, then aborts bootstrap with
invalid transport.Reproduction
From a terminal with CodeIsland installed and Codex configured:
Relevant Codex config shape:
Expected behavior
CodeIsland should not create or preserve tool approval config under a server name that differs from the actual MCP server name.
If the MCP server is:
then tool permissions should also use:
Actual behavior
Tool approval sections are under
davinci_resolvewith an underscore. Codex interprets that as another MCP server and fails bootstrap beforecodex mcp listcan run.Workaround
Manually rename the permission section headers from
davinci_resolvetodavinci-resolve, or delete those stale permission sections.Environment
~/.codeisland/codeisland-bridgeSuggested fix
When generating or repairing Codex MCP tool approval sections, CodeIsland should reuse the exact configured MCP server key instead of normalizing or deriving a different name. It may also be useful to detect orphaned
mcp_servers.<name>.tools.*sections where<name>has no matching server command/url and either repair or warn before writing the config.