local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Enables interaction with Ansible collections and modules, supporting operations like retrieving collection information, listing modules, checking version compatibility, and adding or updating collection and module definitions with schema validation.
Uses SQLite as the persistent storage backend for Infrastructure-as-Code components, allowing configuration through the DATABASE_URL environment variable.
Provides tools for managing Terraform providers and resources, including retrieving provider information, listing resources, checking version compatibility, and adding or updating provider and resource definitions with schema validation.
IaC メモリ MCP サーバー
Terraform および Ansible リソースのバージョン追跡と関係マッピングに重点を置き、Infrastructure-as-Code (IaC) コンポーネントに永続的なメモリ ストレージを提供することで、Claude AI の機能を強化する Model Context Protocol (MCP) サーバーです。
[!注記]
これは、AIを使用する人(私)が専門知識(Pythonの知識不足)を持たない場合のAIの能力状態を判断するための個人的なプロジェクトでした。コストがかかりすぎるため、このプロジェクトをこれ以上開発・維持するつもりはありません。
概要
IaC メモリ MCP サーバーは、次の機能を提供することで、IaC コンポーネントの正確でバージョン対応のコンテキストを維持するという課題に対処します。
- IaC コンポーネントの永続ストレージとバージョン追跡
- URIベースのアクセスによる階層的なリソース構成
- コンポーネント間の包括的な関係マッピング
- バージョン固有のドキュメント管理
- スキーマ検証と時間メタデータ追跡
- 自動化された関係分析と洞察
コアコンポーネント
リソース管理
サーバーは、階層型 URI を使用した高度なリソース管理システムを実装します。
リソースURI構造
サポートされているプラットフォーム:
- テラフォーム
- アンシブル
- iac(一般インフラ事業体向け)
URIの例:
リソーステンプレート
サーバーは、標準化されたアクセス パターン用の動的なリソース テンプレートを提供します。
- 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
: エンティティIDinclude_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
ファイルを作成します。
Claude Desktopとの統合
開発セットアップ
生産体制
発達
地域開発
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。
You must be authenticated.
Tools
Claude AI を Infrastructure-as-Code コンポーネント用の永続メモリ ストレージで強化し、Terraform および Ansible リソースのバージョン追跡と関係マッピングをサポートします。