Token导航 LogoToken导航TokenDH.com
Diagram MCP Server logo
运维云端stdio官方级别未说明来源级核验

Diagram MCP Server

MCP Server

基于Python diagrams包的MCP服务器,支持通过自然语言生成AWS/GCP/Azure/Kubernetes/混合云架构图,提供2000+云服务图标和IaC解析功能

工具数

6

提示词数

0

GitHub Stars

126

资源数

0
PythonClaude云端部署Claude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

andrewmoshu

提供方

andrewmoshu

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uvx infrastructure-diagram-mcp-server

详细介绍

MCP服务器基础结构图

](https://pypi.org/project/infrastructure-diagram-mcp-server/) ![License](https://opensource.org/licenses/Apache-2.0)

多云基础设施图的模型上下文协议(MCP)服务器

此MCP服务器无缝创建 图表 使用Python图表包DSL。为生成专业的基础设施图 任何云提供商 (AWS、GCP、Azure)、Kubernetes、本地、混合和多云架构,使用自然语言与Claude Desktop或其他MCP客户端配合使用。

备注:这是一部基于 awslab/aws图mcp服务器,扩展了多云提供商支持和增强功能。

先决条件

  1. 安装 GraphViz 带有开发标题 -图表生成和.drawio导出所需
  2. 安装 uv星体 (推荐)或使用 pip
  3. *(可选)* 安装 -需要使用以下命令进行完整的Helm图表解析 parse_helm_chart

安装GraphViz

macOS(Homebrew):

brew install graphviz

Ubuntu/Debian:

sudo apt-get install graphviz graphviz-dev

窗户(巧克力):

choco install graphviz

或从以下网址下载 graphviz.org

安装Helm(可选)

使用Helm进行全模板渲染是必需的 parse_helm_chart 工具。如果没有Helm,解析器将使用具有有限模板支持的回退模式。

macOS(Homebrew):

brew install helm

Ubuntu/Debian:

curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash

窗户(巧克力):

choco install kubernetes-helm

或从以下网址下载 helm.sh/docs/intro/install

MCP客户端配置

在MCP客户端中配置MCP服务器。这 CFLAGSLDFLAGS (或 INCLUDELIB 在Windows上)的初始构建需要环境变量 pygraphviz.

macOS上的Claude桌面/光标 (~/Library/Application Support/Claude/claude_desktop_config.json~/.cursor/mcp.json):

{
  "mcpServers": {
    "infrastructure-diagrams": {
      "command": "uvx",
      "args": ["infrastructure-diagram-mcp-server"],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR",
        "CFLAGS": "-I/opt/homebrew/include",
        "LDFLAGS": "-L/opt/homebrew/lib"
      }
    }
  }
}
备注: /opt/homebrew 是Apple Silicon Mac上的默认Homebrew前缀。对于Intel Mac,请使用 /usr/local 相反。

Linux (例如。, ~/.config/claude/claude_desktop_config.json):

{
  "mcpServers": {
    "infrastructure-diagrams": {
      "command": "uvx",
      "args": ["infrastructure-diagram-mcp-server"],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR"
      }
    }
  }
}
备注:在Linux上,安装 graphviz-dev 首先(sudo apt-get install graphviz graphviz-dev),则不需要额外的env变量。

视窗 (例如。, %APPDATA%\Claude\claude_desktop_config.json):

{
  "mcpServers": {
    "infrastructure-diagrams": {
      "command": "uvx",
      "args": ["infrastructure-diagram-mcp-server"],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR",
        "INCLUDE": "C:\\Program Files\\Graphviz\\include",
        "LIB": "C:\\Program Files\\Graphviz\\lib"
      }
    }
  }
}
备注:如果将Graphviz安装在其他位置,请调整其路径。

其他MCP客户端 (例如,基洛- ~/.kiro/settings/mcp.json):

{
  "mcpServers": {
    "infrastructure-diagrams": {
      "command": "uvx",
      "args": ["infrastructure-diagram-mcp-server"],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR",
        "CFLAGS": "-I/opt/homebrew/include",
        "LDFLAGS": "-L/opt/homebrew/lib"
      },
      "autoApprove": [],
      "disabled": false
    }
  }
}

Docker安装

使用Docker构建和运行:

docker build -t infrastructure-diagram-mcp-server .

然后配置您的MCP客户端:

{
  "mcpServers": {
    "infrastructure-diagrams": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "--interactive",
        "--env",
        "FASTMCP_LOG_LEVEL=ERROR",
        "infrastructure-diagram-mcp-server:latest"
      ]
    }
  }
}

特性

基础结构图MCP服务器提供以下功能:

  1. 多提供商支持:为AWS、GCP、Azure、Kubernetes、本地和混合/多云架构创建图表
  2. 2000+图标:访问所有主要云提供商和服务的图标
  3. 多种图表类型:基础架构、序列图、流程图、类图等
  4. 丰富的示例:27多个针对AWS、GCP、Azure、K8s、混合和多云模式的预构建模板
  5. 定制:自定义图表外观、布局、样式、颜色和连接
  6. 安全:内置代码扫描,确保安全生成图表
  7. 无缝显示:图表在Claude Desktop中内联显示,具有自动渲染功能
  8. 灵活的输出:将图表保存为工作区目录中的PNG格式
  9. 可编辑导出:自动生成.drawio文件,以便在diagrams.net/draw.io中进行编辑
  10. IaC解析:解析Kubernetes清单、Helm图表和Terraform配置,以提取用于图表生成的基础设施信息

如何使用

在MCP客户端(例如Claude Desktop)中配置后,您可以使用自然语言生成图表:

示例提示:

发现可用图标:

List all available GCP infrastructure diagram icons

获取示例代码:

Show me examples of Azure microservices diagrams

生成图表:

Create a GCP data pipeline diagram showing Pub/Sub, Dataflow, and BigQuery
Generate an AWS serverless architecture with API Gateway, Lambda, and DynamoDB
Design a multi-cloud architecture spanning AWS, GCP, and Azure

将基础架构解析为代码:

Parse the Kubernetes manifests in ./k8s/ and show me the resources and relationships
Parse the Helm chart at ./charts/my-app/ and generate a diagram of the infrastructure
Parse the Terraform configuration in ./infrastructure/ and visualize the AWS resources

服务器将自动:

  1. 从2000多个可用图标中找到合适的图标
  2. 使用图表包生成Python代码
  3. 内联创建和显示PNG图
  4. 将图表保存到工作区目录
  5. 生成一个可编辑的.drawio文件以供进一步定制

使用draw.io编辑图表

每个图表都会自动以两种格式导出:

  • 便携式网络图形:用于即时查看和共享(在Claude Desktop中内联显示)
  • .drawio:用于编辑 diagrams.net 或draw.io

.drawio文件允许您:

  • 修改单个组件、颜色和样式
  • 添加其他注释、注解或文档
  • 重新组织布局和定位
  • 导出为其他格式(SVG、PDF、JPEG等)
  • 使用熟悉的工具与团队成员协作

只需在浏览器中打开生成的.drawio文件,网址为 diagrams.net -无需安装!

最新动态

此分叉扩展了原始的AWS Diagram MCP服务器,包括:

  • 全面多云支持:GCP、Azure、Kubernetes、混合和多云架构
  • 27+综合示例:跨所有提供商的现成模板
  • 完整图标覆盖:所有2000多个图标均已正确导入并可用
  • 增强型显示器:用于无缝内联渲染的MCP ImageContent格式
  • 可编辑导出:自动生成.drawio文件,以便在diagrams.net/draw.io中编辑
  • IaC解析:解析Kubernetes清单、Helm图表和Terraform HCL以提取基础设施
  • 漏洞修补:已解决双重问题 .png 扩展和只读文件系统问题
  • 图标更正:修复了示例中28个以上不正确的类名

代码示例

下面是显示图表包语法的Python代码示例。使用Claude Desktop时,您可以简单地用自然语言描述您想要的内容!

AWS无服务器应用程序

from diagrams import Diagram
from diagrams.aws.compute import Lambda
from diagrams.aws.database import Dynamodb
from diagrams.aws.network import APIGateway

with Diagram("Serverless Application", show=False):
    api = APIGateway("API Gateway")
    function = Lambda("Function")
    database = Dynamodb("DynamoDB")

    api >> function >> database

GCP微服务

from diagrams import Diagram, Cluster
from diagrams.gcp.compute import CloudRun
from diagrams.gcp.network import LoadBalancing
from diagrams.gcp.database import SQL

with Diagram("GCP Microservices", show=False):
    lb = LoadBalancing("load balancer")
    with Cluster("Services"):
        services = [CloudRun("api"), CloudRun("worker")]
    db = SQL("database")

    lb >> services >> db

Azure Web应用程序

from diagrams import Diagram
from diagrams.azure.web import AppService
from diagrams.azure.database import SQLServer
from diagrams.azure.storage import BlobStorage

with Diagram("Azure Web App", show=False):
    AppService("web") >> SQLServer("db") >> BlobStorage("storage")

多云架构

from diagrams import Diagram, Cluster
from diagrams.aws.compute import EC2
from diagrams.gcp.compute import CloudRun
from diagrams.azure.web import AppService

with Diagram("Multi-Cloud Setup", show=False):
    with Cluster("AWS"):
        aws = EC2("primary")
    with Cluster("GCP"):
        gcp = CloudRun("backup")
    with Cluster("Azure"):
        azure = AppService("cdn")

    aws >> [gcp, azure]

示例图表库

下面是使用此MCP服务器生成的完整架构图示例。这些演示了不同云提供商和部署场景中的真实模式。

AWS无服务器架构

使用AWS服务的生产就绪无服务器架构。

架构组件:

  • 用户通过HTTPS连接
  • API网关作为入口点
  • 用于计算的多个Lambda函数
  • DynamoDB用于NoSQL数据库存储

______________________________________________________________________

GCP无服务器架构

Google Cloud Platform上具有托管服务的无服务器架构。

架构组件:

  • 用户通过HTTPS连接
  • 用于流量分配的负载均衡器
  • 无服务器计算的云功能
  • 文档数据库的Firestore

______________________________________________________________________

Azure无服务器架构

Microsoft Azure上的无服务器架构,具有完全托管的服务。

架构组件:

  • 用户通过HTTPS连接
  • 用于路由和负载平衡的应用网关
  • 用于无服务器执行的功能应用程序
  • Cosmos DB用于全球分布式数据库

______________________________________________________________________

Kubernetes架构

Kubernetes上具有完全存储支持的容器化应用程序部署。

架构组件:

  • 外部访问和路由入口
  • 内部负载平衡服务
  • 多个Pod运行容器化应用程序
  • 持久卷和有状态存储的声明

______________________________________________________________________

多云架构

一个跨AWS、GCP和Azure的分布式架构,具有全局DNS路由以实现高可用性。

架构组件:

  • 用于智能流量路由的全球DNS(Route53)
  • AWS 区域:ELB→ 拉姆达→ DynamoDB
  • GCP地区:负载平衡器→ 云功能→ 消防仓库
  • Azure区域:负载平衡器→ 功能应用程序→ Cosmos数据库

______________________________________________________________________

混合云架构

将本地基础设施连接到AWS云的企业混合云设置。

架构组件:

  • 本地应用服务器和PostgreSQL数据库
  • 用于安全加密连接的VPN网关
  • 带有EC2实例的AWS VPC
  • RDS用于数据库复制和灾难恢复
  • S3用于备份和归档存储

______________________________________________________________________

GCP基础组织层(来自Terraform)

从中解析出全面的GCP组织级基础设施 地形示例基础 使用 parse_terraform 工具。

架构组件:

  • 组织级资源(VPC服务控制、资源标签、组织策略)
  • 日志基础设施(云日志、发布/订阅、存储、BigQuery接收器)
  • 安全服务(云KMS、密钥管理器、安全指挥中心)
  • CI/CD管道(云构建、源代码仓库、工件注册表)
  • 网络集线器(集线器VPC、云NAT、云路由器、互连)
  • 特定于环境的共享VPC(开发、非生产、生产)

______________________________________________________________________

Milvus矢量数据库架构(来自Helm Chart)

从官方解析的生产就绪Milvus部署 密尔沃基掌舵 图表使用 parse_helm_chart 工具。

架构组件:

  • 通过Milvus SDK进行客户端访问
  • 访问层(服务,部署milvus代理)
  • 协调层(rootcoord、querycoord、indexcoord、datacoord)
  • 工作层(查询节点、索引节点、数据节点)
  • 依赖关系(etcd用于元数据,MinIO用于对象存储,Pulsar用于消息队列)

______________________________________________________________________

IaC解析工具

服务器包括三个工具,用于将基础设施解析为代码文件:

parse_k8s_manifest

解析Kubernetes YAML清单以提取资源和关系。

Parse the K8s manifests in ./manifests/ and show me what's deployed

检测:

  • 所有K8s资源类型(部署、服务、ConfigMaps、机密、PVC、入口等)
  • 关系:服务→部署,部署→ConfigMap/秘密/PVC,入口→服务
  • 命名空间分组

parse_helm_chart

解析Helm图表 helm template Helm CLI不可用时的渲染或回退模式。

备注:为了获得最佳结果, 安装Helm没有Helm,解析器使用回退模式,对Go模板的支持有限。
Parse the Helm chart at ./charts/my-app/ with values from values-prod.yaml

特征:

  • 全Helm模板渲染(需要Helm CLI)
  • 无Helm的基本解析回退模式
  • 自定义值文件和内联值支持
  • 发布名称和命名空间配置

parse_terraform

解析Terraform HCL配置以提取资源、数据源、模块和关系。

Parse the Terraform configuration in ./terraform/ and visualize the infrastructure

检测:

  • 来自AWS、GCP、Azure和Kubernetes提供商的资源
  • 数据源和模块参考
  • 明确的 depends_on 关系
  • 资源之间的隐含引用

______________________________________________________________________

发展

测试

该项目包括一个全面的测试套件,以确保MCP服务器的功能。测试按模块组织,涵盖服务器功能的各个方面。

要运行测试,请使用提供的脚本:

./run_tests.sh

如果尚未安装pytest及其依赖项,此脚本将自动安装它们。

或者直接运行pytest(如果您安装了pytest):

pytest -xvs tests/

要在承保范围内跑步:

pytest --cov=infrastructure_diagram_mcp_server --cov-report=term-missing tests/

发展依赖性

要设置开发环境,请安装开发依赖项:

uv pip install -e ".[dev]"

这将安装开发所需的依赖项,包括pytest、pytest-asyncio和pytest-cov。

故障排除

pygraphviz 生成错误: graphviz/cgraph.h not found

当在安装过程中找不到GraphViz开发头文件时,会发生此错误。

macOS:

# Make sure graphviz is installed
brew install graphviz

# Set compiler flags
export CFLAGS="-I$(brew --prefix graphviz)/include"
export LDFLAGS="-L$(brew --prefix graphviz)/lib"

# Then install
uvx infrastructure-diagram-mcp-server

Linux:

# Install development headers
sudo apt-get install graphviz graphviz-dev  # Ubuntu/Debian
sudo dnf install graphviz-devel              # Fedora/RHEL

窗户:

# Install Graphviz with Chocolatey
choco install graphviz

# Set environment variables
$env:INCLUDE = "C:\Program Files\Graphviz\include"
$env:LIB = "C:\Program Files\Graphviz\lib"

MCP服务器无法在Claude Desktop/Cursor中启动

  1. 确保 CFLAGS/LDFLAGS (macOS)或 INCLUDE/LIB (Windows)环境变量在MCP配置中设置
  2. 尝试清除uv缓存: rm -rf ~/.cache/uv
  3. 重新启动MCP客户端

图表未内联显示

确保您使用的是支持MCP ImageContent的最新版本的Claude Desktop或Cursor。

贡献

欢迎投稿!请随时向 .

许可证

此项目根据Apache许可证2.0获得许可-请参阅 许可证 文件以获取详细信息。

这是一部基于 awslab/aws图mcp服务器. 版权所有Amazon.com,股份有限公司或其附属公司。保留所有权利。

通知 文件以获取更多归因信息。

链接

  • PyPI: https://pypi.org/project/infrastructure-diagram-mcp-server/
  • GitHub: https://github.com/andrewmoshu/diagram-mcp-server
  • 原始项目: https://github.com/awslabs/mcp/tree/main/src/aws-diagram-mcp-server
  • 图表库: https://diagrams.mingrammer.com/

目录标签

目录标签

PythonClaude云端部署多云架构本地部署基础设施可视化自然语言处理DevOps工具云服务图

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP