使用说明

项目简介

Manim MCP Server 是一个基于 Model Context Protocol (MCP) 构建的服务器,专注于利用 Manim 动画引擎为 LLM 客户端提供动态视频生成能力。它作为一个 MCP 工具服务器,接收来自客户端的 Manim Python 脚本,执行脚本并返回生成的动画视频文件。这使得 LLM 应用能够通过调用服务器提供的工具,动态地创建和展示复杂的数学或科学概念动画。

主要功能点

  • Manim 动画执行: 能够接收并执行 Manim Python 脚本,利用 Manim 强大的动画引擎生成高质量的视频。
  • 工具化集成: 通过 MCP 协议将 Manim 动画生成能力封装为工具,方便 LLM 客户端调用,实现按需生成动画。
  • 可配置的 Manim 执行路径: 允许用户通过环境变量灵活配置 Manim 可执行文件的路径,适应不同的 Manim 安装环境。
  • 临时文件管理: 使用临时目录存储 Manim 生成的中间文件,并提供清理工具,方便用户管理磁盘空间。
  • 媒体文件输出: 将生成的视频文件保存在指定的媒体文件夹中,方便用户查看和使用。

安装步骤

  1. 安装 Manim: 确保您的环境中已安装 Manim (Community Version) 动画库。如果未安装,请使用 pip 安装:

    pip install manim
  2. 安装 MCP 库: Manim MCP Server 基于 'mcp' 库构建,需要先安装 'mcp' 库:

    pip install mcp
  3. 克隆仓库: 克隆 'manim-mcp-server' 仓库到本地:

    git clone https://github.com/abhiemj/manim-mcp-server.git
    cd manim-mcp-server

服务器配置

要将 Manim MCP Server 集成到 MCP 客户端(例如 Claude),您需要在客户端的 MCP 服务器配置文件中添加以下配置信息。以下以 'claude_desktop_config.json' 为例,展示如何配置:

{
  "mcpServers": {
     "manim-server": {
      "command": "/absolute/path/to/python",  // Python 解释器路径,例如 /usr/bin/python3
      "args": [
        "/absolute/path/to/manim-mcp-server/src/manim_server.py" // manim_server.py 脚本的绝对路径
      ],
      "env": {
        "MANIM_EXECUTABLE": "/path/to/manim" // (可选) Manim 可执行文件路径,如果 manim 已添加到系统 PATH,则无需配置,例如 /usr/local/bin/manim
      }
    }
  }
}

配置参数说明:

  • '"manim-server"': 服务器名称,可以自定义,用于在客户端中标识该服务器。
  • '"command"': 必需。Python 解释器的绝对路径。您可以使用 'which python' (Linux/macOS) 或 'where python' (Windows) 命令查找 Python 路径。
  • '"args"': 必需。一个字符串数组,包含启动 'manim_server.py' 脚本所需的参数。这里需要指定 'manim_server.py' 脚本的绝对路径。
  • '"env"': 可选。一个 JSON 对象,用于设置环境变量。'MANIM_EXECUTABLE' 用于指定 Manim 可执行文件的路径。如果您的 Manim 可执行文件已添加到系统 PATH 环境变量中,则可以省略此配置。否则,请提供 Manim 可执行文件的完整路径。

注意: 请将 '/absolute/path/to/python' 和 '/absolute/path/to/manim-mcp-server/src/manim_server.py' 替换为您的实际路径。'/path/to/manim' 替换为您的 Manim 可执行文件路径(如果需要配置)。

基本使用方法

配置完成后,MCP 客户端 (如 Claude) 即可连接到 Manim MCP Server。客户端可以通过调用服务器提供的 'execute_manim_code' 工具来执行 Manim 代码并生成动画。

工具名称: 'execute_manim_code'

工具参数:

  • 'manim_code': 字符串类型,包含要执行的 Manim Python 代码。

使用示例 (在支持 MCP 协议的 LLM 客户端中):

用户在 LLM 客户端中可以指示模型调用 'execute_manim_code' 工具,并提供 Manim 代码作为参数。服务器将执行代码,并将生成的视频路径返回给客户端。客户端可以根据返回的信息展示生成的 Manim 动画。

此外,服务器还提供 'cleanup_manim_temp_dir' 工具用于清理临时文件目录,但通常客户端无需直接调用此工具,服务器内部会自动管理临时文件。

工具名称: 'cleanup_manim_temp_dir'

工具参数:

  • 'directory': 字符串类型,指定要清理的目录路径。 通常为 Manim 生成临时文件的目录。

通过以上配置和使用方法,您可以将 Manim MCP Server 集成到您的 LLM 应用中,为其增加强大的动态动画生成能力。

信息

分类

AI与计算