File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -83,6 +83,11 @@ export function McpClientItem({ client }: McpClientItemProps) {
8383 const quotedPath = stdioPath . includes ( ' ' ) ? `"${ stdioPath } "` : stdioPath
8484 return `claude mcp add TalkToFigmaDesktop node ${ quotedPath } `
8585 }
86+ if ( client . id === 'codex' ) {
87+ // Codex requires `--` before the executable command.
88+ const shellQuotedPath = `'${ stdioPath . replace ( / ' / g, `'\\''` ) } '`
89+ return `codex mcp add TalkToFigmaDesktop -- node ${ shellQuotedPath } `
90+ }
8691 return client . cliCommand || ''
8792 }
8893
@@ -110,8 +115,8 @@ export function McpClientItem({ client }: McpClientItemProps) {
110115 </ >
111116 ) }
112117
113- { /* Claude Code */ }
114- { client . id === 'claude-code' && (
118+ { /* CLI Clients */ }
119+ { ( client . id === 'claude-code' || client . id === 'codex' ) && (
115120 < >
116121 < div className = "space-y-3" >
117122 < ConfigCodeBlock config = { getCliCommand ( ) } />
Original file line number Diff line number Diff line change @@ -68,6 +68,23 @@ export const MCP_CLIENTS: Record<string, McpClient> = {
6868 ]
6969 } ,
7070
71+ codex : {
72+ id : 'codex' ,
73+ displayName : 'Codex CLI' ,
74+ configFormat : 'cli' ,
75+ serverName : 'TalkToFigmaDesktop' ,
76+ installMethod : 'cli' ,
77+ description : 'Use Codex CLI to install the MCP server' ,
78+ cliCommand : 'codex mcp add TalkToFigmaDesktop -- node <STDIO_SERVER_PATH>' ,
79+ instructions : [
80+ 'Copy the command above (server path is pre-filled)' ,
81+ 'Open your terminal' ,
82+ 'Paste and run the command' ,
83+ 'Use codex mcp list to verify TalkToFigmaDesktop is enabled' ,
84+ 'If a malformed entry exists, run codex mcp remove TalkToFigmaDesktop and add it again'
85+ ]
86+ } ,
87+
7188 vscode : {
7289 id : 'vscode' ,
7390 displayName : 'VS Code' ,
@@ -144,7 +161,13 @@ export function getClientConfig(clientId: string): McpClient | undefined {
144161 * Get all client IDs (excluding coming soon)
145162 */
146163export function getAllClientIds ( ) : string [ ] {
147- return Object . keys ( MCP_CLIENTS ) . filter ( id => id !== 'comingSoon' )
164+ return Object . keys ( MCP_CLIENTS )
165+ . filter ( id => id !== 'comingSoon' )
166+ . sort ( ( a , b ) => {
167+ const nameA = MCP_CLIENTS [ a ] ?. displayName ?? a
168+ const nameB = MCP_CLIENTS [ b ] ?. displayName ?? b
169+ return nameA . localeCompare ( nameB , 'en' , { sensitivity : 'base' } )
170+ } )
148171}
149172
150173/**
You can’t perform that action at this time.
0 commit comments