[BUG] MCP server argument list gets truncated when using claude mcp add
Resolved 💬 4 comments Opened Jul 28, 2025 by philescandon Closed Jan 5, 2026
Environment
- OS: Windows with WSL2 (Linux 6.6.87.2-microsoft-standard-WSL2)
- Claude Code: Running inside WSL2 environment
- Shell: bash
- MCP Server: SQLite MCP server using uv package manager
- Path format: Mixed Windows/WSL mount paths (/mnt/d/...)
Bug Description
- The claude mcp add command truncates long argument lists
- Only the first argument is preserved, rest are lost
- Affects SQLite MCP server configuration specifically
- Workaround: Use shell script wrapper instead
Steps to Reproduce
From WSL command line at my project directory:
claude mcp add sqlite /home/phil/.local/bin/uv -- --directory
/mnt/d/servers/servers-archived-main/src/sqlite run mcp-server-sqlite --db-path /path/to/db.db
Expected behavior: All arguments should be preserved
Actual behavior: Only --directory is stored in config
- Workaround: Shell script wrapper works correctly
Additional Context
- Issue occurs when using long argument lists with claude mcp add
- Arguments after --directory get completely dropped
- Same configuration works when manually created in .mcp.json
- Shell script workaround bypasses the parsing issue entirely
- WSL path mounting may be contributing to the parsing complexity
This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗