LightCMS MCP 服务器
使用说明(简要,便于快速上手)
-
项目简介 LightCMS MCP 服务器是一个完整的后端实现,基于 MCP 协议提供对资源、工具、以及提示模板(Prompts)的管理和渲染能力。服务器支持两种传输模式:本地工具使用的标准输入输出(Stdio)传输,以及面向远程AI客户端的HTTP流式传输。通过MCP服务器,AI代理可以读取资源、执行工具、并获取Prompt模板等,从而实现AI驱动的内容管理与站点运维工作流。
-
主要功能点
- MCP核心能力:实现MCP服务器,注册并暴露43个工具,用于网站内容、模板、资产、设置、搜索等操作
- 多传输模式:Stdio传输(本地工具)与HTTP流式传输(远端AI客户端)
- OAuth 2.1 认证与 API Key 认证:支持远端代理的安全接入
- REST API 与 CLI:提供REST API及CLI工具,方便程序化与脚本化操作
- MCP 服务器卡片与工具定义:动态生成服务器卡,包含工具和资源描述,便于MCP客户端发现与对接
- 会话与版本管理:对主题、内容、模板等设置进行版本记录与回滚
- MongoDB 作为后端存储:持久化资源、内容、用户、密钥等数据
-
安装步骤
- 安装前提
- Go 环境(1.20+,仓库要求的版本)
- MongoDB Atlas 或自托管 MongoDB 实例
- 获取代码
- 将仓库克隆到本地
- 依赖与构建
- 进入项目目录,执行 go mod tidy;再编译/运行
- 运行服务器
- 直接运行 cmd/server/main.go 对应的HTTP/本地模式
- 或使用 MCP 客户端/CLI 持续集成流程接入
- 配置文件与环境
- 复制示例配置文件 config.dev.json.json/ config.prod.json
- 按照实际环境设置 port、mongo_uri、env、session_secret 等字段
- 环境变量方式也支持(如 Fly.io 部署)
- MCP 客户端接入
- 本仓库实现的 MCP 服务可通过 Claude Code 的 stdio 或 Claude Cowork/桌面等客户端进行连接
- MCP 客户端需要的配置信息包含 server 名称、启动命令、参数等,见下方“服务器配置”部分
- 安装前提
-
服务器配置(MCP 客户端所需,示例仅为配置描述,不含代码) { "server_name": "LightCMS MCP Server", "command": "path/to/lightcms-mcp", // 实际路径为编译后的MCP服务器二进制,如 /path/to/bin/lightcms-mcp "args": [ {"flag": "--transport", "value": "stdio", "description": "传输模式:stdio,直接在本地Claude Code等工具中运行"}, {"flag": "", "value": "", "description": "如需使用HTTP流式传输,请改用对应HTTP传输参数及端口配置,客户端会处理"} ], "notes": "该配置用于帮助MCP客户端在本地或远端启动MCP服务。实际连接时,MCP客户端可以通过标准的云端或本地传输模式启动服务器进程,此处不要求MCP客户端提供密钥等敏感信息。LightCMS的MCP实现使用/config.json 提供服务端口、OAuth/API Key等认证信息,CLI与MCP Card均可在后台自动发现。" }
-
基本使用方法
- 启动与连接
- 在本地环境中启动LightCMS的MCP服务,确保REST API与数据库可用
- 通过Claude Code、Claude Desktop等工具选择Stdio传输,并将 lightcms-mcp 二进制路径传给工具
- 按客户端提示完成授权/连接流程(若使用OAuth,则需要管理员授权)
- 进行工具调用
- 使用MCP客户端向服务器发出工具请求,如列出内容、创建内容、查询模板等
- 服务器返回标准的JSON-RPC响应,包含工具执行结果、错误信息等
- 监控与维护
- 通过/admin界面与REST API管理资源、模板、主题、API Key等
- 查看服务器卡片信息、以及对MCP工具的描述与样例
- 安全与配置
- 生产环境建议开启HTTPS、配置合适的session_secret、并限定MongoDB访问范围
- 使用OAuth 2.1进行远程代理的授权,确保客户端的最小权限需求
- 启动与连接
-
适用场景
- AI 驱动的内容管理与网站运维自动化
- 需要通过统一的MCP协议向LLM客户端暴露资源、工具与Prompt模板的后端