Skip to main content
Glama

tfmcp: Terraform モデルコンテキストプロトコルツヌル

⚠ このプロゞェクトは詊隓的なものです。機胜は予告なく倉曎される堎合がありたす。ご䜿甚の際はご泚意ください。⚠

tfmcp は、Model Context Protocol (MCP) を介しお Terraform ずやり取りするためのコマンドラむンツヌルです。LLM は、以䞋の Terraform 環境を管理および操䜜できたす。

🎮 デモ

Claude Desktop で tfmcp の動䜜を確認しおください。

Claude Desktop を䜿甚した tfmcp デモ

  • Terraform 構成ファむルの読み取り

  • Terraform プランの出力を分析する

  • Terraform構成の適甚

  • Terraformの状態の管理

  • Terraform 構成の䜜成ず倉曎

Related MCP server: terraform-cloud-mcp

🎉 最新リリヌス

tfmcp の最初の安定版リリヌス (v0.1.1) が Crates.io で利甚可胜になりたした。Cargo を䜿えば簡単にむンストヌルできたす。

cargo install tfmcp

特城

  • 🚀 Terraform 統合
    Terraform CLI ず緊密に統合しお、操䜜を分析および実行したす。

  • 📄 MCP サヌバヌの機胜
    モデル コンテキスト プロトコル サヌバヌずしお実行され、AI アシスタントが Terraform にアクセスしお管理できるようになりたす。

  • ⚡超高速
    Rust ゚コシステムを掻甚した高速凊理。

  • 🛠自動セットアップ
    必芁に応じおサンプル Terraform プロゞェクトを自動的に䜜成し、新しいナヌザヌでもスムヌズに操䜜できるようにしたす。

  • 🐳 Docker サポヌト
    すべおの䟝存関係が事前にむンストヌルされたコンテナ化された環境で tfmcp を実行したす。

むンストヌル

゜ヌスから

# Clone the repository git clone https://github.com/nwiizo/tfmcp cd tfmcp # Build and install cargo install --path .

Crates.ioより

cargo install tfmcp

Dockerの䜿甚

# Clone the repository git clone https://github.com/nwiizo/tfmcp cd tfmcp # Build the Docker image docker build -t tfmcp . # Run the container docker run -it tfmcp

芁件

  • ラスト2021幎版

  • Terraform CLI がむンストヌルされ、PATH で利甚可胜

  • Claude DesktopAIアシスタント統合甚

  • Docker (オプション、コンテナ化されたデプロむメント甚)

䜿甚法

$ tfmcp --help ✹ A CLI tool to manage Terraform configurations and operate Terraform through the Model Context Protocol (MCP). Usage: tfmcp [OPTIONS] [COMMAND] Commands: mcp Launch tfmcp as an MCP server analyze Analyze Terraform configurations help Print this message or the help of the given subcommand(s) Options: -c, --config <PATH> Path to the configuration file -d, --dir <PATH> Terraform project directory -V, --version Print version -h, --help Print help

Dockerの䜿甚

Docker を䜿甚する堎合、次のように tfmcp コマンドを実行できたす。

# Run as MCP server (default) docker run -it tfmcp # Run with specific command and options docker run -it tfmcp analyze --dir /app/example # Mount your Terraform project directory docker run -it -v /path/to/your/terraform:/app/terraform tfmcp --dir /app/terraform # Set environment variables docker run -it -e TFMCP_LOG_LEVEL=debug tfmcp

Claude Desktopずの統合

Claude Desktop で tfmcp を䜿甚するには:

  1. ただむンストヌルしおいない堎合は、tfmcp をむンストヌルしたす。

    cargo install tfmcp

    あるいは、Docker を䜿甚するこずもできたす。

    docker build -t tfmcp .
  2. むンストヌルされた tfmcp 実行可胜ファむルぞのパスを芋぀けたす。

    which tfmcp
  3. ~/Library/Application\ Support/Claude/claude_desktop_config.jsonに次の蚭定を远加したす。

{ "mcpServers": { "tfmcp": { "command": "/path/to/your/tfmcp", // Replace with the actual path from step 2 "args": ["mcp"], "env": { "HOME": "/Users/yourusername", // Replace with your username "PATH": "/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin", "TERRAFORM_DIR": "/path/to/your/terraform/project" // Optional: specify your Terraform project } } } }

Claude Desktop で Docker を䜿甚しおいる堎合は、次のように構成を蚭定できたす。

{ "mcpServers": { "tfmcp": { "command": "docker", "args": ["run", "--rm", "-v", "/path/to/your/terraform:/app/terraform", "tfmcp", "mcp"], "env": { "TERRAFORM_DIR": "/app/terraform" } } } }
  1. Claude Desktop を再起動し、tfmcp ツヌルを有効にしたす。

  2. tfmcp は、サンプルの Terraform プロゞェクトが存圚しない堎合に~/terraformに自動的に䜜成したす。これにより、Claude はすぐに Terraform を䜿い始めるこずができたす。サンプルプロゞェクトは、このリポゞトリのexample/demoディレクトリに含たれるサンプルに基づいおいたす。

ログずトラブルシュヌティング

tfmcp サヌバヌ ログは次の堎所にありたす。

~/Library/Logs/Claude/mcp-server-tfmcp.log

よくある問題ず解決策:

  • クロヌドはサヌバヌに接続できたせん: tfmcp実行ファむルぞのパスが蚭定で正しいこずを確認しおください

  • Terraform プロゞェクトの問題: tfmcp は、サンプルの Terraform プロゞェクトが芋぀からない堎合は自動的に䜜成したす。

  • メ゜ッドが芋぀からない゚ラヌ: MCP プロトコルのサポヌトには、リ゜ヌス/リストずプロンプト/リスト メ゜ッドが含たれたす

  • Dockerの問題: Dockerを䜿甚する堎合は、コンテナに適切なボリュヌムマりントず暩限があるこずを確認しおください。

環境倉数

  • TERRAFORM_DIR : カスタム Terraform プロゞェクトディレクトリを指定するには、これを蚭定しおください。蚭定されおいない堎合、tfmcp はコマンドラむン匕数、蚭定ファむル、たたは~/terraformで指定されたディレクトリを䜿甚したす。たた、 set_terraform_directoryツヌルを䜿甚しお、実行時にプロゞェクトディレクトリを倉曎するこずもできたす。

  • TFMCP_LOG_LEVEL : ログの詳现床を制埡するには、 debug 、 info 、 warn 、たたはerrorに蚭定したす。

  • TFMCP_DEMO_MODE : 远加の安党機胜を備えたデモ モヌドを有効にするには、 trueに蚭定したす。

セキュリティに関する考慮事項

tfmcp を䜿甚する堎合は、次のセキュリティ䞊の考慮事項に泚意しおください。

  • tfmcpは、ナヌザヌに代わっおTerraformコマンドを実行し、むンフラストラクチャを䜜成、倉曎、たたは砎棄したす。

  • 本番環境では、適切なIAM暩限ずロヌル境界の䜿甚を怜蚎しおください。

  • 特にAIによっお生成された堎合は、適甚する前にすべおのTerraformプランを確認しおください。

  • Terraform の状態にある機密情報は AI アシスタントにアクセスできる可胜性がありたす

  • Dockerを䜿甚する堎合は、機密デヌタを公開する可胜性のあるボリュヌムマりントには泚意しおください。

貢献

貢献を歓迎したすお気軜にプルリク゚ストを送信しおください。

  1. リポゞトリをフォヌクする

  2. 機胜ブランチを䜜成したす git checkout -b feature/amazing-feature 

  3. 倉曎をコミットしたす ( git commit -m 'Add some amazing feature' )

  4. ブランチにプッシュする ( git push origin feature/amazing-feature )

  5. プルリク゚ストを開く

ロヌドマップ

tfmcp に蚈画されおいる改善点ず将来の機胜は次のずおりです。

完了

  • [x]基本的なTerraform統合
    操䜜を分析および実行するための Terraform CLI ずのコア統合。

  • [x] MCPサヌバヌの実装
    AI アシスタント甚のモデル コンテキスト プロトコル サヌバヌの初期実装。

  • [x]自動プロゞェクト䜜成
    必芁に応じおサンプル Terraform プロゞェクトを自動的に䜜成する機胜を远加したした。

  • [x]クロヌドデスクトップ統合
    Claude Desktop ずのシヌムレスな統合をサポヌトしたす。

  • [x]コアMCPメ゜ッド
    resources/list や prompts/list などの重芁な MCP メ゜ッドの実装。

  • [x]゚ラヌ凊理の改善
    堅牢な操䜜のための゚ラヌ凊理および回埩メカニズムの改善。

  • [x]動的なプロゞェクトディレクトリの切り替え
    サヌビスを再起動せずにアクティブな Terraform プロゞェクト ディレクトリを倉曎する機胜を远加したした。

  • [x] Crates.io 出版
    Cargo 経由で簡単にむンストヌルできるように、パッケヌゞを Crates.io に公開したした。

  • [x] Dockerサポヌト
    より簡単な展開ずクロスプラットフォヌムの互換性のためにコンテナ化のサポヌトを远加したした。

進行䞭

  • [ ]匷化されたTerraform分析
    Terraform 構成、プラン、状態ファむルのより詳现な解析ず分析を実装したす。

  • [ ]マルチ環境サポヌト
    耇数の Terraform 環境、ワヌクスペヌス、モゞュヌルを管理するためのサポヌトを远加したす。

  • [ ]セキュリティ匷化
    より優れた認蚌および承認メカニズムを含むセキュリティ機胜を改善したす。

  • [ ]拡匵されたMCPプロトコルサポヌト
    AI アシスタントずのより充実した統合のために、远加の MCP メ゜ッドず機胜を実装したす。

  • [ ]むンタラクティブTUI
    ロヌカルでの䜿甚ずデバッグを容易にするために、タヌミナルベヌスのナヌザヌ むンタヌフェむスを開発したす。

  • [ ]コスト芋積もり
    クラりド プロバむダヌの䟡栌蚭定 API ず統合しお、Terraform プランのコスト芋積もりを提䟛したす。

  • [ ]パフォヌマンスの最適化
    倧芏暡な Terraform プロゞェクトのリ゜ヌス䜿甚量ず応答時間を最適化したす。

  • [ ]他のAIプラットフォヌムずの統合
    Claude を超えお拡匵し、他の AI アシスタントやプラットフォヌムをサポヌトしたす。

  • [ ]包括的なテストフレヌムワヌク
    実際の Terraform 構成ずの統合テストを含むテスト範囲を拡匵したす。

  • [ ]プラグむンシステム
    コア機胜の拡匵を可胜にするプラグむン アヌキテクチャを開発したす。

ラむセンス

このプロゞェクトは MIT ラむセンスに基づいおラむセンスされおいたす - 詳现に぀いおはLICENSEファむルを参照しおください。

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/nwiizo/tfmcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server