Skip to content

Claude Desktop Setup

Add to your claude_desktop_config.json:

claude_desktop_config.json
{
"mcpServers": {
"filesystem": {
"command": "mcp-filesystem-go-light",
"args": ["/path/to/allowed/dir", "/another/dir"]
}
}
}
claude_desktop_config.json
{
"mcpServers": {
"filesystem": {
"command": "C:\\path\\to\\mcp-filesystem-go-light.exe",
"args": ["C:\\Users\\you\\projects", "C:\\another\\dir"]
}
}
}
claude_desktop_config.json
{
"mcpServers": {
"filesystem": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-v", "/your/path:/data",
"ghcr.io/scopweb/mcp-filesystem-go-light:latest",
"/data"
]
}
}
}
  1. Claude Desktop starts the server as a subprocess via stdio.
  2. The server receives MCP tool calls and executes filesystem operations.
  3. All paths are validated against the allowed directories passed as arguments.
  4. The normalizer layer corrects parameter mismatches before they reach the handler.

If you want local audit logs while testing with Claude Desktop, place flags before the allowed directories:

claude_desktop_config.json
{
"mcpServers": {
"filesystem": {
"command": "C:\\path\\to\\mcp-filesystem-go-light.exe",
"args": [
"--dev",
"--log-dir",
"C:\\mcp-logs",
"C:\\Users\\you\\projects"
]
}
}
}
  • --dev --log-dir C:\\mcp-logs writes two files:
    • operations.jsonl — one JSON line per tool call, including: tool name, raw and normalized arguments, result summary, duration, sub-operation traces (e.g. edit.parse_arguments, edit.validate_path), and any errors.
    • metrics.json — aggregated stats: call counts per tool, average durations, error rates.
  • Allowed directories must come after the flags because the server reads them from positional arguments.

Inspecting logs:

MethodCommand
Dashboard (browser)go run ./cmd/logdashboard --log-dir C:\\mcp-logs --addr :8091 → open http://127.0.0.1:8091
CLI viewergo run ./cmd/logview --log-dir C:\\mcp-logs — shows recent operations, errors, and timings in the terminal
Proxy correlationgo run ./cmd/proxy — injects request_id traces into proxy.jsonl for end-to-end debugging
OSPath
macOS~/Library/Application Support/Claude/claude_desktop_config.json
Windows%APPDATA%\Claude\claude_desktop_config.json
Linux~/.config/Claude/claude_desktop_config.json