feat: add support for using MCP_CLI_CONFIG env var for config file, and improve error handling#19
Open
technicalpickles wants to merge 7 commits intowong2:mainfrom
Open
Conversation
…andling - Add MCP_CLI_CONFIG environment variable support with priority hierarchy - Improve config file validation with detailed error messages - Add comprehensive JSON parsing error handling with line/column info - Validate server configurations and provide helpful structure examples 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- Document configuration priority hierarchy (CLI flag → env var → default) - Add MCP_CLI_CONFIG environment variable usage example - Document enhanced error handling with JSON syntax validation - Add configuration file format section with structure examples 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
wong2
reviewed
Sep 8, 2025
- Create new src/config/index.js with all config-related functions - Move resolveConfigPath, validateConfigStructure, readConfig, pickServer from mcp.js - Move getClaudeConfigPath from utils.js to config module - Add backward compatibility re-export in utils.js - Improve separation of concerns and maintainability - All existing functionality preserved 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- Combine resolveConfigPath + readConfig + validation into single loadConfig() - Inline getClaudeConfigPath and validateConfigStructure as private helpers - Streamline error messages while maintaining helpful UX - Reduce from 5 exports to 2 main functions (loadConfig, pickServer) - Remove backward compatibility exports, clean API surface - ~23% code reduction (39 lines saved) with same functionality 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- Consolidate all path resolution logic in one place - getDefaultConfigPath now handles CLI arg → env var → platform default priority - Cleaner separation of concerns in loadConfig function - Same functionality with better organization 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
wong2
reviewed
Sep 9, 2025
- Add Zod dependency for type-safe schema validation - Replace 27 lines of manual validation with concise schema definition - Improve error messages with precise field-level feedback - Reduce code complexity and improve maintainability 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
MCP_CLI_CONFIGenvironment variable support with priority hierarchy (CLI flag → env var → default)Test plan
MCP_CLI_CONFIGenvironment variable - works correctlymcpServerssection - shows expected structure🤖 Generated with Claude Code