はじめに
この記事では、Neovim から Codex TUI(MCP クライアント)経由で使う「MCP サーバー」の導入手順をまとめます。
名称、入手先、必要トークン/キーの取得方法、servers.json と .env の具体例、検証方法までを一通り記載します。
導入した MCP サーバー(一覧)
context7(ドキュメント検索)
Context7 has 5 repositories available. Follow their code on GitHub.
playwright(ブラウザ自動操作)
Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API. - GitHub - …
filesystem(ローカルファイル操作)
ルート制限付きでローカルを参照します。
How people build software. GitHub has 531 repositories available. Follow their code on GitHub.
必要: GITHUB_TOKEN
terraform(HashiCorp 公式 MCP Server)
The Terraform MCP Server provides seamless integration with Terraform ecosystem, enabling advanced automation and interaction capabilities …
- イメージ:
hashicorp/terraform-mcp-server:0.3.0 - 必要:
TERRAFORM_CLOUD_TOKEN(Terraform Cloud のユーザ API トークン)
備考: 以降の手順では
~/.config/mcphub/servers.jsonと~/.config/mcphub/.envを前提にします。Neovim 側は<leader>asでservers.jsonを開き、<leader>arで.envを再読込できます。
トークン / API キーの取得手順
GitHub 用 GITHUB_TOKEN(個人アクセストークン)
- GitHub にサインイン → 右上アイコン → Settings。
- 左メニュー最下部の Developer settings → Personal access tokens。
- Fine-grained(推奨)または Classic を発行。最小権限で可。
- 参照のみで足りる場合は、対象リポジトリの「Contents: Read」など最小に絞る。
- 生成したトークンを控え、
~/.config/mcphub/.envに保存(例は後述)。
Terraform Cloud 用 TERRAFORM_CLOUD_TOKEN
- Terraform Cloud にサインイン(
https://app.terraform.io)。 - User Settings → Tokens → Create an API token。
- 生成されたトークンを控え、
~/.config/mcphub/.envに保存。- 互換のため
TF_TOKEN_app_terraform_ioへも同値を設定するとツール連携が楽です(例は後述)。
- 互換のため
セキュリティ注意: トークンは Git 管理しないパス(
~/.config/mcphub/.env)に置き、権限は最小に。公開リポジトリへコミットしないこと。
設定ファイル(servers.json と .env)
ここでは Codex TUI(MCP クライアント)向けの想定例を示します。
~/.config/mcphub/servers.json(例)
{
"servers": {
"context7": {
"command": "context7-mcp"
},
"playwright": {
"command": "playwright-mcp"
},
"filesystem": {
"command": "filesystem-mcp",
"args": ["--root", "/Users/wan0ri"]
},
"github": {
"command": "github-mcp",
"env": { "GITHUB_TOKEN": "$GITHUB_TOKEN" }
},
"terraform": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"TERRAFORM_CLOUD_TOKEN=$TERRAFORM_CLOUD_TOKEN",
"hashicorp/terraform-mcp-server:0.3.0"
]
}
}
}
メモ: サーバー名/コマンドは環境の実体に合わせてください。
filesystemは--rootでアクセス可能範囲を明示します。
~/.config/mcphub/.env(例)
# GitHub
GITHUB_TOKEN=ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Terraform Cloud
TERRAFORM_CLOUD_TOKEN=ttc.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
TF_TOKEN_app_terraform_io=${TERRAFORM_CLOUD_TOKEN}
TFE_TOKEN=${TERRAFORM_CLOUD_TOKEN}
Neovim 側では .env を読み込むユーティリティを用意してあるため、<leader>ar で再読込できます。
Terraform MCP Server を Docker で起動(手動検証)
docker run --rm -i \
-e TERRAFORM_CLOUD_TOKEN="$TERRAFORM_CLOUD_TOKEN" \
hashicorp/terraform-mcp-server:0.3.0
ローカル開発前提です。外部公開する場合はネットワーク/認可を必ず設けてください。
Neovim / Codex TUI からの検証手順
~/.config/mcphub/.envを編集 →<leader>arで再読込。~/.config/mcphub/servers.jsonを編集 → Codex TUI 側で:config reload。- Codex TUI のサーバー一覧に各 MCP が表示されることを確認。
- 例: terraform でプロバイダ検索/github でリポジトリ参照/filesystem でローカルを列挙。
トラブルシューティング
GitHub で 401/403 になる
→GITHUB_TOKENの権限を見直し(最低限の Read 権限)。Rate limit 到達も確認。Terraform で認証エラー
→TERRAFORM_CLOUD_TOKENが正しいか、環境変数が Docker に渡っているか(-eの綴りや値)を確認。ファイルが見えない(filesystem)
→--rootのパスに対象が含まれているか。必要に応じて追加の許可ディレクトリを設定。
まとめ
- GitHub と Terraform Cloud はトークンを
.envに置いて、servers.jsonから参照する構成にすると安全・再現性が高い。 - Neovim からは
<leader>as/<leader>arで編集・再読込が素早く行える。 - まずは
githubとfilesystemでハンドシェイクを確認し、terraformまで段階的に広げていくのがおすすめ。
次回は「操作チートシート(neovim-operate.md)」で、主要コマンドとよく使うキーバインドを整理します。