IaC Memory MCP Server
镜子 (jìng zi)
MCP-Mirror
README
IaC 内存 MCP 服务器
一个模型上下文协议 (MCP) 服务器,通过为基础设施即代码 (IaC) 组件提供持久性内存存储来增强 Claude AI 的能力,重点关注 Terraform 和 Ansible 资源的版本跟踪和关系映射。
[!NOTE] 这是一个个人项目,旨在确定 AI 的能力,如果使用它的人(我) 没有主题专业知识(缺乏 Python 知识)。由于它变得相当昂贵, 我不打算进一步开发或维护这个项目。
概述
IaC 内存 MCP 服务器通过提供以下功能来解决维护 IaC 组件的准确、版本感知上下文的挑战:
- IaC 组件的持久性存储和版本跟踪
- 具有基于 URI 访问的层次结构资源组织
- 组件之间的全面关系映射
- 版本特定的文档管理
- 模式验证和时间元数据跟踪
- 自动关系分析和洞察
核心组件
资源管理
服务器实现了一个具有分层 URI 的复杂资源管理系统:
资源 URI 结构
resources://<平台>/<类别>/<名称>
支持的平台:
- terraform
- ansible
- 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 组件发现和分析:
search_resources
- 目的:搜索 IaC 资源
- 参数:
provider
: 提供程序名称resource_type
: 资源类型
- 返回:有关给定提供程序的特定资源的信息
analyze_entity
- 目的:分析实体及其关系
- 参数:
entity_id
: 实体 IDinclude_relationships
: 包括关系
- 返回:详细的实体分析,包括名称、类型和观察结果
terraform_provider
- 目的:获取有关 Terraform 提供程序的信息
- 参数:
provider_name
: Terraform 提供程序的名称(必需)version
: 要查询的特定版本(可选)
- 返回:指定版本的详细提供程序信息
ansible_module
- 目的:获取有关 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"
}
}
}
开发
本地开发
# 安装依赖
uv sync
# 运行测试
uv run pytest
# 带有 MCP Inspector 的开发服务器
npx @modelcontextprotocol/inspector uv run iac-memory-mcp-server
许可证
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅 LICENSE 文件。
推荐服务器
Crypto Price & Market Analysis MCP Server
一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。
MCP PubMed Search
用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。
mixpanel
连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

Sequential Thinking MCP Server
这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

Nefino MCP Server
为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。
Vectorize
将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。
Mathematica Documentation MCP server
一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。
kb-mcp-server
一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。
Research MCP Server
这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

Cryo MCP Server
一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。