claude-autopm 1.13.5 → 1.13.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/scripts/mcp-handler.js +40 -1
package/package.json
CHANGED
package/scripts/mcp-handler.js
CHANGED
|
@@ -264,10 +264,13 @@ class MCPHandler {
|
|
|
264
264
|
return;
|
|
265
265
|
}
|
|
266
266
|
|
|
267
|
+
// Convert env metadata to simple strings for Claude Code compatibility
|
|
268
|
+
const envVars = this._convertEnvMetadataToStrings(server.metadata.env);
|
|
269
|
+
|
|
267
270
|
mcpConfig.mcpServers[serverName] = {
|
|
268
271
|
command: server.metadata.command,
|
|
269
272
|
args: server.metadata.args,
|
|
270
|
-
env:
|
|
273
|
+
env: envVars,
|
|
271
274
|
envFile: server.metadata.envFile
|
|
272
275
|
};
|
|
273
276
|
|
|
@@ -1249,6 +1252,42 @@ This server can be integrated with various agents and context pools.
|
|
|
1249
1252
|
return defaultValue !== '';
|
|
1250
1253
|
}
|
|
1251
1254
|
|
|
1255
|
+
/**
|
|
1256
|
+
* Convert env metadata objects to simple string format for Claude Code
|
|
1257
|
+
* @private
|
|
1258
|
+
* @param {Object} envObj - Environment variables object (may contain metadata)
|
|
1259
|
+
* @returns {Object} Environment variables as simple strings
|
|
1260
|
+
*/
|
|
1261
|
+
_convertEnvMetadataToStrings(envObj) {
|
|
1262
|
+
if (!envObj) return {};
|
|
1263
|
+
|
|
1264
|
+
const converted = {};
|
|
1265
|
+
|
|
1266
|
+
Object.entries(envObj).forEach(([key, value]) => {
|
|
1267
|
+
// If value is already a string, keep it
|
|
1268
|
+
if (typeof value === 'string') {
|
|
1269
|
+
converted[key] = value;
|
|
1270
|
+
}
|
|
1271
|
+
// If value is metadata object, convert to string format
|
|
1272
|
+
else if (typeof value === 'object' && value !== null) {
|
|
1273
|
+
const defaultVal = value.default || '';
|
|
1274
|
+
// If it's a literal value (not empty string), use it directly
|
|
1275
|
+
if (defaultVal && !defaultVal.startsWith('${')) {
|
|
1276
|
+
converted[key] = defaultVal;
|
|
1277
|
+
}
|
|
1278
|
+
// Otherwise use variable substitution format
|
|
1279
|
+
else {
|
|
1280
|
+
converted[key] = `\${${key}:-${defaultVal}}`;
|
|
1281
|
+
}
|
|
1282
|
+
}
|
|
1283
|
+
else {
|
|
1284
|
+
converted[key] = String(value);
|
|
1285
|
+
}
|
|
1286
|
+
});
|
|
1287
|
+
|
|
1288
|
+
return converted;
|
|
1289
|
+
}
|
|
1290
|
+
|
|
1252
1291
|
/**
|
|
1253
1292
|
* Run comprehensive MCP diagnostics
|
|
1254
1293
|
* @returns {Object} Diagnostic results
|