使用说明

项目简介

Arc MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,旨在简化 Web 应用程序在各种托管环境中的部署流程。它特别关注共享主机环境,并致力于通过对话式交互,让即使是新手开发者也能轻松完成应用部署。Arc 通过 MCP 协议向 LLM 客户端暴露工具、资源和 Prompt,引导用户完成从环境配置到应用上线的全过程。

主要功能点

  • 框架部署: 支持多种 Web 框架(目前主要支持 Wasp 框架),简化部署流程。
  • 多环境支持: 支持 Netlify、Vercel、传统共享主机 (Shared Hosting) 和 Hostm.com 等多种托管服务提供商。
  • 引导式部署: 通过 Prompt 模板,以对话方式引导用户完成部署的每一步。
  • 认证管理: 安全地存储和管理托管服务提供商的认证凭据。
  • 问题排查: 内置工具帮助诊断和解决常见的部署问题。
  • 共享主机优化: 特别针对传统共享主机环境进行了部署简化。

安装步骤

  1. 克隆仓库

    git clone https://github.com/elblanco2/arc-mcp.git
    cd arc-mcp
  2. 创建并激活虚拟环境

    python -m venv venv
    source venv/bin/activate   # Linux/macOS
    venv\Scripts\activate      # Windows
  3. 安装依赖

    pip install -r requirements.txt
  4. 安装 Arc MCP Server

    pip install -e .

服务器配置

要将 Arc MCP Server 与 MCP 客户端(如 Claude Desktop)连接,您需要配置客户端以启动 Arc 服务器。以下是 Claude Desktop 的配置示例,您需要将以下 JSON 配置添加到 Claude Desktop 的配置文件 'claude_desktop_config.json' 中:

{
  "mcpServers": {
    "arc": {                  //  服务器名称,可以自定义,如 "my-arc-server"
      "command": "python",    //  启动服务器的命令,这里使用 python
      "args": [               //  启动参数列表
        "-m",                 //  以模块运行 Python 包
        "arc",                //  运行 arc 包,对应 arc/server.py 中的 main 函数
        "--debug"             //  可选参数:启用 debug 日志,方便调试
      ]
    }
  }
}

参数说明:

  • '"arc"': 服务器在 MCP 客户端中显示的名称,可以自定义。
  • '"command": "python"': 指定用于启动服务器的命令,这里是 Python 解释器。
  • '"args"': 传递给 'python' 命令的参数列表,
    • '"-m", "arc"': 告诉 Python 运行 'arc' 包作为主程序,这会执行 'arc/main.py' 或 'arc/server.py' 中定义的 'main' 函数。
    • '"--debug"': 可选参数,用于启用调试日志,方便在开发或测试阶段查看服务器运行状态。您可以根据需要添加或移除此参数。 其他可选参数包括 '--secure-storage-path' (自定义凭据存储路径) 和 '--transport' (选择传输协议,默认为 stdio)。

配置完成后,重启 Claude Desktop 客户端,客户端应该能够检测到并连接到 Arc MCP Server。

基本使用方法

  1. 启动 MCP 客户端: 启动配置了 Arc MCP Server 的 MCP 客户端 (如 Claude Desktop)。
  2. 对话交互: 在客户端中,您可以开始与 LLM 的对话,讨论关于 Web 应用部署相关的问题。
  3. 功能调用: Arc MCP Server 将通过 MCP 协议向客户端暴露以下核心功能:
    • 工具 (Tools):
      • 'authenticate_provider': 存储托管服务提供商的认证信息。
      • 'check_server_status': 检查服务器状态。
      • 'analyze_requirements': 分析框架和托管环境的兼容性及需求。
      • 'deploy_framework': 部署 Web 框架应用到指定的托管环境。
      • 'troubleshoot_deployment': 帮助分析和解决部署错误。
    • 资源 (Resources):
      • 'hosting://providers': 列出支持的托管服务提供商及其特性。
      • 'hosting://frameworks': 列出支持的 Web 框架及其需求。
      • 'hosting://templates/{framework}': 获取特定框架的应用模板信息。
      • 'hosting://deployment-logs/{provider}/{app_name}': 访问应用部署日志(功能待完善)。
    • Prompt 模板 (Prompts):
      • 'wasp-deployment': 引导用户部署 Wasp 应用的 Prompt。
      • 'troubleshooting': 引导用户进行部署问题排查的 Prompt。
      • 'windsurf-handoff': 引导用户将项目切换到 Windsurf (Codeium) 进行开发的 Prompt。

通过与客户端对话,您可以利用这些工具、资源和 Prompt,在 LLM 的引导下完成 Web 应用的部署和管理任务。

例如,您可以向 Claude 提问: "我想部署一个 Wasp 应用到 Netlify,请帮我引导一下。" 客户端会将这个问题发送给 Arc MCP Server,服务器会根据 'wasp-deployment' Prompt 提供相应的对话引导和工具调用,帮助您完成部署流程。

信息

分类

开发者工具