Skip to main content
Glama

IaC メモリ MCP サーバー

Terraform および Ansible リソースのバージョン追跡と関係マッピングに重点を置き、Infrastructure-as-Code (IaC) コンポーネントに永続的なメモリ ストレージを提供することで、Claude AI の機能を強化する Model Context Protocol (MCP) サーバーです。

[!注記]
これは、AIを使用する人(私)が専門知識(Pythonの知識不足)を持たない場合のAIの能力状態を判断するための個人的なプロジェクトでした。コストがかかりすぎるため、このプロジェクトをこれ以上開発・維持するつもりはありません。

概要

IaC メモリ MCP サーバーは、次の機能を提供することで、IaC コンポーネントの正確でバージョン対応のコンテキストを維持するという課題に対処します。

  • IaC コンポーネントの永続ストレージとバージョン追跡

  • URIベースのアクセスによる階層的なリソース構成

  • コンポーネント間の包括的な関係マッピング

  • バージョン固有のドキュメント管理

  • スキーマ検証と時間メタデータ追跡

  • 自動化された関係分析と洞察

Related MCP server: Memory Bank MCP Server

コアコンポーネント

リソース管理

サーバーは、階層型 URI を使用した高度なリソース管理システムを実装します。

リソースURI構造

resources://<platform>/<category>/<name>

サポートされているプラットフォーム:

  • テラフォーム

  • アンシブル

  • iac(一般インフラ事業体向け)

URIの例:

resources://terraform/providers/aws resources://terraform/resources/aws/s3_bucket resources://ansible/collections/community.aws resources://ansible/modules/community.aws/s3_bucket

リソーステンプレート

サーバーは、標準化されたアクセス パターン用の動的なリソース テンプレートを提供します。

  • Terraform プロバイダー情報: resources://terraform/providers/{provider_name}

  • リソースタイプの詳細: resources://terraform/resources/{provider_name}/{resource_type}

  • Ansible コレクションデータ: resources://ansible/collections/{collection_name}

  • モジュール情報: resources://ansible/modules/{collection_name}/{module_name}

プロンプト

サーバーは、IaC コンポーネントの検出と分析のために 4 つの特殊なプロンプトを実装します。

検索リソース

  • 目的: IaC リソースの検索

  • 引数:

    • provider : プロバイダー名

    • resource_type : リソースタイプ

  • 戻り値: 指定されたプロバイダの特定のリソースに関する情報

エンティティを分析する

  • 目的: 実体とその関係を分析する

  • 引数:

    • entity_id : エンティティID

    • include_relationships : 関係を含める

  • 戻り値: 名前、タイプ、観察結果を含む詳細なエンティティ分析

terraform_provider

  • 目的: Terraformプロバイダーに関する情報を取得する

  • 引数:

    • provider_name : Terraformプロバイダーの名前(必須)

    • version : 照会する特定のバージョン(オプション)

  • 戻り値: 指定されたバージョンの詳細なプロバイダ情報

ansible_モジュール

  • 目的: Ansibleモジュールに関する情報を取得する

  • 引数:

    • collection_name : Ansibleコレクションの名前(必須)

    • module_name : モジュールの名前(必須)

    • version : 照会する特定のバージョン(オプション)

  • 戻り値: 指定されたバージョンの詳細なモジュール情報

ツール

サーバーは、IaC コンポーネント管理用の包括的なツールを実装します。

Terraformツール

  • get_terraform_provider_info : バージョンやリソースを含む詳細なプロバイダー情報を取得します

  • list_provider_resources : 特定のプロバイダーで利用可能なすべてのリソースを一覧表示する

  • get_terraform_resource_info : 特定のリソースタイプに関する詳細情報を取得する

  • add_terraform_provider : バージョン管理された新しいプロバイダーを登録する

  • add_terraform_resource : スキーマ付きのリソース定義を追加する

  • update_provider_version : 新しいドキュメントでプロバイダーのバージョンを更新します

Ansibleツール

  • get_ansible_collection_info : Ansibleコレクションの詳細情報を取得する

  • list_ansible_collections : 利用可能なすべてのAnsibleコレクションを一覧表示します

  • get_collection_version_history : コレクションのバージョン履歴を表示する

  • get_ansible_module_info : 特定のモジュールに関する詳細情報を取得する

  • list_collection_modules : コレクション内のすべてのモジュールを一覧表示する

  • get_module_version_compatibility : モジュールのバージョン互換性を確認する

  • add_ansible_collection : 新しいAnsibleコレクションを登録する

  • add_ansible_module : 検証とドキュメントを備えた新しいモジュールを追加する

エンティティ操作

  • create_entity : 新しいインフラストラクチャエンティティを作成する

  • update_entity : 既存のエンティティ構成を変更する

  • delete_entity : リレーションシップをクリーンアップしてエンティティを削除する

  • view_relationships : エンティティの依存関係と関係を分析する

構成

サーバーは環境変数による構成をサポートしています:

  • DATABASE_URL : SQLiteデータベースの場所

  • MCP_DEBUG : 設定するとデバッグログを有効にする

  • MCP_TEST_MODE : データベースリセットのテストモードを有効にする

開発用に、 .envファイルを作成します。

DATABASE_URL=sqlite:////path/to/db.sqlite MCP_DEBUG=1 MCP_TEST_MODE=1

Claude Desktopとの統合

開発セットアップ

"mcpServers": { "iac-memory": { "command": "uv", "args": [ "--directory", "/path/to/iac-memory-mcp-server", "run", "iac-memory-mcp-server" ] "env": { "DATABASE_URL": "sqlite:////home/herman/iac.db" } } }

生産体制

"mcpServers": { "iac-memory": { "command": "uvx", "args": [ "--from", "git+https://github.com/AgentWong/iac-memory-mcp-server.git", "python", "-m", "iac_memory_mcp_server" ], "env": { "DATABASE_URL": "sqlite:////home/herman/iac.db" } } }

発達

地域開発

# Install dependencies uv sync # Run tests uv run pytest # Development server with MCP Inspector npx @modelcontextprotocol/inspector uv run iac-memory-mcp-server

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。

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/AgentWong/iac-memory-mcp-server-project'

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