بنقرة واحدة
mcp-absolute-path-config
Fix MCP server 'Executable not found' by resolving absolute paths in .mcp.json
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Fix MCP server 'Executable not found' by resolving absolute paths in .mcp.json
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Normalize long-form CODEX cycle folders to short form before notebooks run. Trigger: cyc001_reg001_*, hard-coded cyc paths breaking, staged CODEX raw data failing in Notebooks 1/2.
v5.6.0 joint multi-TF model: single model per symbol with broadcast 1Hour context replaces dual 15Min/1Hour models. Trigger: (1) replacing weighted-voting model aggregation, (2) adding broadcast features to vectorized env, (3) limited training data + worried about overfitting from doubling obs_dim, (4) backtest builder mismatch with newer feature counts.
DEPRECATED in v5.6.0 — see joint-multi-tf-v560 skill. Documents the v5.2.0 dual-model approach (train separate 15Min/1Hour models, combine via weighted voting). Still relevant for: (1) loading legacy v5.5.0 dual models, (2) understanding the historical aggregation layer, (3) resampling pattern via origin='start'.
Surface a shipped-but-undocumented CLI feature in user-facing docs. Trigger: user reports a known feature missing from README/readthedocs even though the CLI command exists.
KINTSUGI Snakefile + CLI changes that route SLURM jobs around accounts saturated by OTHER users on the same QOS pool. Trigger: QOSGrpMemLimit, jobs stuck pending despite available GPU slots in config, noisy neighbor on shared QOS, multi-user investment pool exhaustion, _build_cycle_assignment static-vs-live.
KINTSUGI SLURM batch processing: Maximize throughput using multi-account resource calculation with GPU+CPU pools per account. Trigger: SLURM job submission, batch processing, resource maximization, GPU+CPU concurrent, headless processing, resource pool.
| name | mcp-absolute-path-config |
| description | Fix MCP server 'Executable not found' by resolving absolute paths in .mcp.json |
| author | KINTSUGI Team |
| date | "2026-02-24T00:00:00.000Z" |
| Item | Details |
|---|---|
| Date | 2026-02-24 |
| Goal | Fix "Executable not found in $PATH: kintsugi" when Claude Code starts MCP server |
| Environment | HPC login node (no conda env activated), Claude Code CLI, KINTSUGI conda env |
| Status | Success |
Claude Code failed to start the KINTSUGI MCP server because the config used a bare command name ("command": "kintsugi") which isn't on PATH when the conda env isn't activated (typical for HPC login nodes, VS Code terminals, etc.).
Additionally, the old code incorrectly put mcpServers in .claude/settings.local.json — that field is not recognized there. MCP server definitions belong in .mcp.json at the project root.
# src/kintsugi/project.py
def _resolve_kintsugi_executable() -> str:
"""Resolve absolute path to the kintsugi CLI executable."""
import shutil
import sys
from pathlib import Path
path = shutil.which("kintsugi")
if path:
return str(Path(path).resolve())
candidate = Path(sys.executable).parent / "kintsugi"
if candidate.exists():
return str(candidate.resolve())
return "kintsugi"
.mcp.json (NOT settings.local.json)// .mcp.json (project root)
{
"mcpServers": {
"kintsugi": {
"command": "/blue/maigan/smith6jt/miniforge3/envs/KINTSUGI/bin/kintsugi",
"args": ["mcp", "start"],
"cwd": "/blue/maigan/smith6jt/KINTSUGI"
}
}
}
// .claude/settings.local.json
{
"enableAllProjectMcpServers": true,
"enabledMcpjsonServers": ["kintsugi"]
}
kintsugi mcp config /path/to/project # Creates .mcp.json + settings.local.json
kintsugi init /path/to/project # Also creates both files
| Attempt | Why it Failed | Lesson Learned |
|---|---|---|
"command": "kintsugi" (bare name) | Not on PATH when conda env isn't activated | Always use absolute path via _resolve_kintsugi_executable() |
Put mcpServers in settings.local.json | Schema validation error: "Unrecognized field: mcpServers" | MCP servers go in .mcp.json at project root |
enabledMcpjsonServers without .mcp.json | References nonexistent file, server never loads | Must create .mcp.json that the setting references |
# Resolution order for executable path:
# 1. shutil.which("kintsugi") — works if env is activated
# 2. Path(sys.executable).parent / "kintsugi" — same conda env, no PATH needed
# 3. "kintsugi" — bare name fallback (may fail)
.claude/settings.local.json does NOT support mcpServers — it only supports enabledMcpjsonServers (list of server names from .mcp.json)sys.executable sibling trick works because pip-installed entry points live next to the Python interpreter in the same conda env's bin/ directory.mcp.json file is checked into version control for team sharing; settings.local.json is typically local.mcp.jsonmcpServers only valid in .mcp.json, ~/.claude.json, or managed-mcp.json