Modal MCP Server 使用说明

项目简介

Modal MCP Server 是一个 MCP 服务器的实现,旨在桥接 LLM 客户端和 Modal 云计算平台。它通过 MCP 协议,向 LLM 客户端提供工具,用于管理 Modal 卷(Volume)和部署 Modal 应用程序。这使得 LLM 应用能够安全、便捷地利用 Modal 强大的云计算能力,例如存储和计算资源。

主要功能点

  • Modal 卷管理:提供一系列工具,允许 LLM 客户端列出、查看、复制、删除、上传和下载 Modal 卷中的文件,实现对云端存储资源的便捷管理。
  • Modal 应用部署:支持 LLM 客户端通过工具远程部署 Modal 应用程序,简化部署流程。
  • 基于 MCP 协议:采用标准的 Model Context Protocol 进行通信,确保与兼容 MCP 协议的 LLM 客户端良好集成。
  • 工具化操作:将 Modal 的各项功能封装成易于 LLM 调用的工具,降低使用门槛。
  • JSON-RPC 通信:使用 JSON-RPC 协议进行客户端和服务端通信,数据交换格式规范统一。

安装步骤

  1. 克隆仓库

    git clone https://github.com/smehmood/modal-mcp-server.git
    cd modal-mcp-server
  2. 安装依赖 确保已安装 uv 包管理器,然后运行:

    uv sync

服务器配置

要将 Modal MCP Server 集成到 MCP 客户端(例如 Cursor),需要在客户端的 MCP 配置文件中添加服务器配置信息。以下是针对 'modal-mcp-server' 的配置示例,通常位于 '~/.cursor/mcp.json':

{
  "mcpServers": {
    "modal-mcp-server": {  // 服务器名称,客户端用于标识和调用
      "command": "uv",     // 启动服务器的命令,这里使用 uv 运行 Python 脚本
      "args": [          // 命令参数
        "--project", "/path/to/modal-mcp-server", // 指定项目路径,请替换为实际仓库路径
        "run", "/path/to/modal-mcp-server/src/modal_mcp/server.py" // 运行服务器脚本的路径,请替换为实际仓库路径
      ]
    }
  }
}

请务必将配置中的 '/path/to/modal-mcp-server' 替换为克隆到本地的 'modal-mcp-server' 仓库的绝对路径。

基本使用方法

  1. 启动服务器: MCP 客户端(如 Cursor)会根据配置文件中的 'command' 和 'args' 自动启动 Modal MCP Server。

  2. 在 MCP 客户端中使用工具: 在支持 MCP 协议的 LLM 客户端中,你可以通过服务器名称 '"modal-mcp-server"' 调用以下工具,实现对 Modal 卷和应用的各种操作:

    • 'list_modal_volumes': 列出所有 Modal 卷。无需参数。
    • 'list_modal_volume_contents': 列出指定 Modal 卷的内容。参数:'volume_name' (卷名), 'path' (卷内路径,默认为 "/")。
    • 'copy_modal_volume_files': 复制 Modal 卷内的文件。参数:'volume_name' (卷名), 'paths' (路径列表,最后一个路径为目标路径,其余为源路径)。
    • 'remove_modal_volume_file': 删除 Modal 卷中的文件或目录。参数:'volume_name' (卷名), 'remote_path' (远程路径), 'recursive' (是否递归删除目录,默认为 false)。
    • 'put_modal_volume_file': 上传本地文件或目录到 Modal 卷。参数:'volume_name' (卷名), 'local_path' (本地路径), 'remote_path' (远程路径,默认为 "/"), 'force' (是否强制覆盖,默认为 false)。
    • 'get_modal_volume_file': 从 Modal 卷下载文件或目录到本地。参数:'volume_name' (卷名), 'remote_path' (远程路径), 'local_destination' (本地目标路径,默认为当前目录,"-" 表示输出到 stdout), 'force' (是否强制覆盖,默认为 false)。
    • 'deploy_modal_app': 部署 Modal 应用程序。参数:'absolute_path_to_app' (Modal 应用文件的绝对路径)。

    具体工具的使用方式和参数请参考 MCP 客户端的文档或界面。

注意事项

  • 使用 Modal MCP Server 前,请确保已安装 Modal CLI 并配置有效的 Modal 凭据。
  • 部署 Modal 应用的项目必须使用 'uv' 进行依赖管理,并且项目虚拟环境中已安装 'modal' 包。
  • 工具返回的结果以 JSON 格式呈现,包含操作是否成功、数据或消息、以及可能的错误信息和命令执行详情。

信息

分类

开发者工具