1. Conduid
  2. Blockchain
  3. Iac Memory MCP Server Project
MCP server · Blockchain

Iac Memory MCP Server Project

This is a personal project to determine whether or not Claude 3.5 Sonnet can write moderately complex MCP Server code (Python).

Unclaimed last commit a year ago blockchain
34Low

Scored 7 months ago · breakdown

About Iac Memory MCP Server Project

Iac Memory MCP Server Project is an MCP server published by AgentWong in the Blockchain category: this is a personal project to determine whether or not Claude 3.5 Sonnet can write moderately complex MCP Server code (Python).

The repository has 6 stars and 5 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.

Install

From source
git clone https://github.com/AgentWong/iac-memory-mcp-server-project

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Tools (18)

add_ansible_collectionRegister new Ansible collections

Parameters not published.

add_ansible_moduleAdd new modules with validation and documentation

Parameters not published.

add_terraform_providerRegister new providers with versioning

Parameters not published.

add_terraform_resourceAdd resource definitions with schemas

Parameters not published.

create_entityCreate new infrastructure entities

Parameters not published.

delete_entityRemove entities with relationship cleanup

Parameters not published.

get_ansible_collection_infoGet detailed information about an Ansible collection

Parameters not published.

get_ansible_module_infoGet detailed information about a specific module

Parameters not published.

get_collection_version_historyView version history of a collection

Parameters not published.

get_module_version_compatibilityCheck version compatibility of modules

Parameters not published.

Show all 18 tools
get_terraform_provider_infoRetrieve detailed provider information including version and resources

Parameters not published.

get_terraform_resource_infoGet detailed information about a specific resource type

Parameters not published.

list_ansible_collectionsList all available Ansible collections

Parameters not published.

list_collection_modulesList all modules in a collection

Parameters not published.

list_provider_resourcesList all resources available for a specific provider

Parameters not published.

update_entityModify existing entity configurations

Parameters not published.

update_provider_versionUpdate provider versions with new documentation

Parameters not published.

view_relationshipsAnalyze entity dependencies and relationships

Parameters not published.

Ask AI

✦

Ask AI about Iac Memory MCP Server Project

Powered by Claude · Grounded in docs

I know everything about Iac Memory MCP Server Project. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

IaC Memory MCP Server

A Model Context Protocol (MCP) server that enhances Claude AI's capabilities by providing persistent memory storage for Infrastructure-as-Code (IaC) components, with a focus on version tracking and relationship mapping for Terraform and Ansible resources.

[!NOTE]
This was a personal project to determine the state of AI's ability if the person using it (me) doesn't have subject matter expertise (lack of Python knowledge). Since it has become rather cost prohibitive, I do not intend to develop or maintain this project further.

Overview

The IaC Memory MCP Server addresses the challenge of maintaining accurate, version-aware context for IaC components by providing:

  • Persistent storage and version tracking for IaC components
  • Hierarchical resource organization with URI-based access
  • Comprehensive relationship mapping between components
  • Version-specific documentation management
  • Schema validation and temporal metadata tracking
  • Automated relationship analysis and insights

Core Components

Resource Management

The server implements a sophisticated resource management system with hierarchical URIs:

Resource URI Structure

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

Supported platforms:

  • terraform
  • ansible
  • iac (for general infrastructure entities)

Example URIs:

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

Resource Templates

The server provides dynamic resource templates for standardized access patterns:

  • Terraform provider information: resources://terraform/providers/{provider_name}
  • Resource type details: resources://terraform/resources/{provider_name}/{resource_type}
  • Ansible collection data: resources://ansible/collections/{collection_name}
  • Module information: resources://ansible/modules/{collection_name}/{module_name}

Prompts

The server implements four specialized prompts for IaC component discovery and analysis:

search_resources

  • Purpose: Search for IaC resources
  • Arguments:
    • provider: Provider name
    • resource_type: Resource type
  • Returns: Information about specific resources for the given provider

analyze_entity

  • Purpose: Analyze an entity and its relationships
  • Arguments:
    • entity_id: Entity ID
    • include_relationships: Include relationships
  • Returns: Detailed entity analysis including name, type, and observations

terraform_provider

  • Purpose: Get information about a Terraform provider
  • Arguments:
    • provider_name: Name of the Terraform provider (required)
    • version: Specific version to query (optional)
  • Returns: Detailed provider information for the specified version

ansible_module

  • Purpose: Get information about an Ansible module
  • Arguments:
    • collection_name: Name of the Ansible collection (required)
    • module_name: Name of the module (required)
    • version: Specific version to query (optional)
  • Returns: Detailed module information for the specified version

Tools

The server implements comprehensive tooling for IaC component management:

Terraform Tools

  • get_terraform_provider_info: Retrieve detailed provider information including version and resources
  • list_provider_resources: List all resources available for a specific provider
  • get_terraform_resource_info: Get detailed information about a specific resource type
  • add_terraform_provider: Register new providers with versioning
  • add_terraform_resource: Add resource definitions with schemas
  • update_provider_version: Update provider versions with new documentation

Ansible Tools

  • get_ansible_collection_info: Get detailed information about an Ansible collection
  • list_ansible_collections: List all available Ansible collections
  • get_collection_version_history: View version history of a collection
  • get_ansible_module_info: Get detailed information about a specific module
  • list_collection_modules: List all modules in a collection
  • get_module_version_compatibility: Check version compatibility of modules
  • add_ansible_collection: Register new Ansible collections
  • add_ansible_module: Add new modules with validation and documentation

Entity Operations

  • create_entity: Create new infrastructure entities
  • update_entity: Modify existing entity configurations
  • delete_entity: Remove entities with relationship cleanup
  • view_relationships: Analyze entity dependencies and relationships

Configuration

The server supports configuration through environment variables:

  • DATABASE_URL: SQLite database location
  • MCP_DEBUG: Enable debug logging when set
  • MCP_TEST_MODE: Enable test mode for database resets

For development, create a .env file:

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

Integration with Claude Desktop

Development Setup

"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"
      }
  }
}

Production Setup

"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"
      }
  }
}

Development

Local Development

# Install dependencies
uv sync

# Run tests
uv run pytest

# Development server with MCP Inspector
npx @modelcontextprotocol/inspector uv run iac-memory-mcp-server

License

This project is licensed under the MIT License - see the LICENSE file for details.

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About Iac Memory MCP Server Project

How do I install Iac Memory MCP Server Project?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Iac Memory MCP Server Project safe to use with an AI agent?

Its trust score is 34 out of 100 (low). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Iac Memory MCP Server Project still maintained?

The last commit was a year ago. That's long enough that you should check whether the maintainer is responding to issues before depending on it.