@@ -110,12 +110,14 @@ func (*RootCmd) mcpConfigureClaudeDesktop() *serpent.Command {
110
110
111
111
func (* RootCmd )mcpConfigureClaudeCode ()* serpent.Command {
112
112
var (
113
- apiKey string
113
+ claudeAPIKey string
114
114
claudeConfigPath string
115
115
claudeMDPath string
116
116
systemPrompt string
117
117
appStatusSlug string
118
118
testBinaryName string
119
+
120
+ deprecatedCoderMCPClaudeAPIKey string
119
121
)
120
122
cmd := & serpent.Command {
121
123
Use :"claude-code <project-directory>" ,
@@ -140,6 +142,14 @@ func (*RootCmd) mcpConfigureClaudeCode() *serpent.Command {
140
142
}else {
141
143
configureClaudeEnv ["CODER_AGENT_TOKEN" ]= agentToken
142
144
}
145
+ if claudeAPIKey == "" {
146
+ if deprecatedCoderMCPClaudeAPIKey == "" {
147
+ cliui .Warnf (inv .Stderr ,"CLAUDE_API_KEY is not set." )
148
+ }else {
149
+ cliui .Warnf (inv .Stderr ,"CODER_MCP_CLAUDE_API_KEY is deprecated, use CLAUDE_API_KEY instead" )
150
+ claudeAPIKey = deprecatedCoderMCPClaudeAPIKey
151
+ }
152
+ }
143
153
if appStatusSlug != "" {
144
154
configureClaudeEnv ["CODER_MCP_APP_STATUS_SLUG" ]= appStatusSlug
145
155
}
@@ -151,7 +161,7 @@ func (*RootCmd) mcpConfigureClaudeCode() *serpent.Command {
151
161
if err := configureClaude (fs ,ClaudeConfig {
152
162
// TODO: will this always be stable?
153
163
AllowedTools : []string {`mcp__coder__coder_report_task` },
154
- APIKey :apiKey ,
164
+ APIKey :claudeAPIKey ,
155
165
ConfigPath :claudeConfigPath ,
156
166
ProjectDirectory :projectDirectory ,
157
167
MCPServers :map [string ]ClaudeConfigMCP {
@@ -191,11 +201,18 @@ func (*RootCmd) mcpConfigureClaudeCode() *serpent.Command {
191
201
Default :filepath .Join (os .Getenv ("HOME" ),".claude" ,"CLAUDE.md" ),
192
202
},
193
203
{
194
- Name :"api-key" ,
195
- Description :"The API key to use for the Claude Code server." ,
196
- Env :"CODER_MCP_CLAUDE_API_KEY " ,
204
+ Name :"claude- api-key" ,
205
+ Description :"The API key to use for the Claude Code server. This is also read from CLAUDE_API_KEY. " ,
206
+ Env :"CLAUDE_API_KEY " ,
197
207
Flag :"claude-api-key" ,
198
- Value :serpent .StringOf (& apiKey ),
208
+ Value :serpent .StringOf (& claudeAPIKey ),
209
+ },
210
+ {
211
+ Name :"mcp-claude-api-key" ,
212
+ Description :"Hidden alias for CLAUDE_API_KEY. This will be removed in a future version." ,
213
+ Env :"CODER_MCP_CLAUDE_API_KEY" ,
214
+ Value :serpent .StringOf (& deprecatedCoderMCPClaudeAPIKey ),
215
+ Hidden :true ,
199
216
},
200
217
{
201
218
Name :"system-prompt" ,