项目简介

这是一个基于 Model Context Protocol (MCP) 构建的后端服务,专门用于管理使用Hugo静态网站生成器创建的网站。它通过提供一系列标准化工具,让语言模型 (LLM) 或其他MCP客户端能够执行网站的创建、管理、内容编辑、预览、构建和部署等操作。

主要功能点

  • 环境设置: 检查并安装Hugo、Go、Git等必要的软件环境。
  • 站点管理: 创建新的Hugo网站。
  • 主题管理: 列出可用主题,安装和更新主题,获取主题详情。
  • 内容管理: 创建新的文章/页面,列出现有内容。
  • 预览与构建: 启动本地预览服务器,构建网站用于生产环境。
  • 部署: 将构建好的网站部署到GitHub Pages、Netlify、Vercel或自定义远程仓库。

安装步骤

  1. 前提条件:

    • Python 3.10 或更高版本。
    • 'uv' Python 包管理器(可以使用 'pip install uv' 或其他方式安装)。
    • Git 版本控制工具(强烈推荐,部分功能依赖)。
    • 根据需要部署的平台,可能还需要安装相应的CLI工具(例如 Netlify CLI, Vercel CLI),服务器端工具会尝试自动安装。
    • 根据Hugo主题或功能需求,可能还需要安装Go语言环境。
  2. 克隆仓库:

    git clone https://github.com/sunnycloudyang/hugo-mcp.git
  3. 配置MCP客户端: 将该服务端添加到你的MCP客户端配置中。典型的配置需要指定服务端的名称、启动命令及其参数。例如,在一个JSON格式的MCP客户端配置文件中,你可以这样添加:

    {
        "mcpServers": {
            "hugo-mcp": {  // 服务端名称,可自定义
                "command": "uv", // 启动服务端的可执行命令
                "args": [        // 传递给命令的参数列表
                    "--directory",
                    "/绝对/路径/到/hugo-mcp/所在/父文件夹", // 替换为 hugo-mcp 仓库克隆后所在的父文件夹绝对路径
                    "run",
                    "main.py"    // 服务端主程序文件
                ]
            }
        }
        // ... 其他配置
    }

    请确保将示例中的 '/绝对/路径/到/hugo-mcp/所在/父文件夹' 替换为你实际克隆 'hugo-mcp' 仓库的目录的绝对路径。MCP客户端会使用这个配置来启动和连接到 'hugo-mcp' 服务端。

基本使用方法

  1. 根据上述配置,使用你的MCP客户端启动 'hugo-mcp' 服务端。许多客户端会自动管理服务端的启动和停止。
  2. 通过MCP客户端向 'hugo-mcp' 服务端发送JSON-RPC请求,调用其暴露的工具(如 'create_site', 'build_site', 'deploy_site' 等)。
  3. 服务端将执行相应的操作,并通过JSON-RPC响应返回结果(成功信息或错误信息)。

完整工作流程示例 (概念说明)

一个典型的LLM与此服务端的交互工作流可能是:

  1. LLM调用 'check_hugo_installation' 检查Hugo是否安装。
  2. 如果未安装,LLM调用 'install_hugo' 安装Hugo。
  3. LLM调用 'list_themes' 获取可用主题列表。
  4. LLM调用 'get_theme_details' 获取某个主题的详细信息。
  5. LLM调用 'create_site' 创建一个新的Hugo网站,并指定选定的主题。
  6. LLM调用 'create_post' 创建新的文章。
  7. LLM调用 'start_preview' 启动本地预览服务器,允许用户查看网站草稿。
  8. LLM调用 'build_site' 构建最终的生产版本网站。
  9. LLM调用 'deploy_site' 将网站部署到指定平台(如GitHub Pages)。

信息

分类

开发者工具