"Use when adding MCP servers from within a Claude Code session where CLI is unavailable. jq-based ~/.claude.json editing workaround."
Install
npx skillscat add shimo4228/claude-code-learned-skills/claude-code-mcp-manual-install Install via the SkillsCat registry.
SKILL.md
Claude Code 内での MCP サーバー手動インストール
Extracted: 2026-02-13
Context: Claude Code セッション内から MCP サーバーを追加する際、CLI が使えない場合の回避策
Problem
Claude Code 内から MCP サーバーを追加しようとすると、2つの障壁がある。
claude mcp addはネストされた Claude Code セッション内では実行不可Error: Claude Code cannot be launched inside another Claude Code session.npx @smithery/cli installはインタラクティブ入力を要求し、非対話環境で crash するError [ERR_USE_AFTER_CLOSE]: readline was closed
Solution
~/.claude.json の mcpServers セクションを jq で直接編集する。
# MCP サーバーを追加
jq '.mcpServers.ServerName = {
"type": "stdio",
"command": "npx",
"args": ["-y", "package-name"]
}' ~/.claude.json > /tmp/claude.json.tmp && mv /tmp/claude.json.tmp ~/.claude.json
# 追加されたことを確認
jq '.mcpServers | keys' ~/.claude.jsonHTTP タイプの場合
jq '.mcpServers.ServerName = {
"type": "http",
"url": "https://example.com/mcp"
}' ~/.claude.json > /tmp/claude.json.tmp && mv /tmp/claude.json.tmp ~/.claude.json注意点
- セッション再起動が必要: MCP サーバーはセッション開始時にロードされるため、追加後は Claude Code を再起動する
- ~/.claude.json は頻繁に更新される: Claude Code 自身がメトリクスを書き込むため、Read → Edit パターンでは「file modified since read」エラーが頻発する。jq でアトミックに書き換えるのが確実
- バックアップ推奨: 大量のセッション統計データを含むファイルなので、壊すと面倒
When to Use
- Claude Code セッション中に新しい MCP サーバーを追加したい時
- Smithery CLI が環境依存で動かない時
- 非対話的に MCP サーバーを一括設定したい時