UML图生成服务

一个基于Google Gemini的Python服务,通过gRPC接口和MCP工具生成PlantUML代码,用于创建UML类和时序图。

  • by Cool-Coder174
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Cool-Coder174/UML-MCP

使用说明

UMLmcp(注:这个缩写可能代表特定的术语或项目名称,在没有具体上下文的情况下,直接翻译为“UMLmcp”保持原样,因为可能是一个专有名词或内部使用的代码)

这个项目是一个Python服务,它利用Google Gemini生成用于UML类图和序列图的PlantUML代码。它提供了一个gRPC接口和一个MCP工具来生成UML图。

设置

  1. 创建一个虚拟环境:

    python -m venv .venv
    source .venv/bin/activate
    
  2. 安装依赖项:

    pip install -r requirements.txt
    
  3. 创建一个 key.txt 在项目根目录下创建文件,并在第一行粘贴您的Gemini API密钥。

生成 gRPC 存根

要生成 gRPC 存根,请运行以下命令:

python -m grpc_tools.protoc -I proto --python_out=grpc_server/generated --grpc_python_out=grpc_server/generated proto/uml_service.proto

运行服务器

gRPC 服务器

要运行gRPC服务器,请执行以下命令:

python -m grpc_server.server

MCP服务器

MCP(模型-上下文-协议)服务器提供了 generate_uml 工具,允许其他进程生成UML图。要运行MCP服务器,请使用以下命令:

python -m mcp_server.server

CLI 使用方法

要使用命令行界面 (CLI),请运行以下命令:

python -m cli.main --mode [domain_json|free_text] --input <file or "-"> --class --sequence --outdir ./out

测试

要运行测试,请执行以下命令:

pytest -q