Back to MCP directory
publicPublicdnsLocal runtime

umbraco-cms-mcp-dev

Umbraco MCP是一个基于模型上下文协议(MCP)的服务器,为Umbraco CMS提供AI驱动的后台内容管理功能。它通过Umbraco管理API实现安全、权限控制的自动化操作,使AI助手能够通过自然对话执行复杂的后台任务,无需人工操作界面。

article

README

🚀 更新忽略端点技能

本技能通过分析Umbraco管理API并与已实现的MCP工具进行对比,自动更新docs/analysis/IGNORED_ENDPOINTS.md文件。

🚀 快速开始

运行方式

从项目根目录下,可通过以下两种方式运行此技能:

  • 命令行方式:运行以下命令
npx ts-node .claude/skills/update-ignored-endpoints/scripts/update-ignored-endpoints.ts
  • Claude Code方式:输入指令
Can you update the ignored endpoints documentation?

✨ 主要特性

  • 从生成的Umbraco管理API TypeScript客户端中提取所有API端点。
  • 扫描工具目录,识别哪些端点有MCP工具实现。
  • 按API组对被忽略(未实现)的端点进行分类。
  • 生成包含当前覆盖统计信息的更新后的IGNORED_ENDPOINTS.md文件。
  • 保留文档中现有的理由说明部分。

💻 使用示例

基础用法

在项目根目录下,使用命令行运行脚本:

npx ts-node .claude/skills/update-ignored-endpoints/scripts/update-ignored-endpoints.ts

高级用法

通过Claude Code调用技能:

Can you update the ignored endpoints documentation?

📚 详细文档

工作原理

TypeScript脚本会对以下内容进行分析:

  • API端点:通过查找所有Result类型的导出,从src/umb-management-api/api/api/umbracoManagementAPI.ts中提取。
  • 已实现的工具:通过查找CreateUmbracoTool调用及其对应的API客户端方法调用,从src/umb-management-api/tools/中扫描。
  • 分类:按照常见模式(用户、安全、包等)对被忽略的端点进行分组。

输出内容

脚本会输出以下内容:

  • 更新后的docs/analysis/IGNORED_ENDPOINTS.md文件。
  • 控制台摘要信息,显示:
    • 发现的API端点总数。
    • 已实现的端点数量。
    • 被忽略的端点数量。
    • API覆盖百分比。

示例输出

✅ IGNORED_ENDPOINTS.md has been updated successfully!

Summary:
  Total API endpoints: 401
  Implemented (unique endpoints): 323
  Ignored: 82
  Coverage: 80.5%

Note: 334 MCP tools implement 323 unique API endpoints
      Some tools use multiple endpoints, and some endpoints are used by multiple tools.

数据解读

为什么工具数量和端点数量不同?

  • count-mcp-tools334个MCP工具(包含CreateUmbracoToolCreateUmbracoResource的文件)。
  • update-ignored-endpoints:这些工具调用了323个唯一的API端点

两者数量存在差异(334个工具 vs 323个端点)的原因如下:

  1. 一些工具使用多个API端点(例如,publish-document-with-descendants调用2个端点)。
  2. 一些端点被多个工具使用(例如,deleteDocumentById在不同上下文中被调用)。

这两个数字都是准确的,它们衡量的是不同方面:

  • 334个工具 = 向大语言模型(LLMs)公开的MCP工具。
  • 323个端点 = 所使用的唯一Umbraco API端点。
  • 401个总数 = 所有可用的Umbraco管理API端点。
  • 80.5%覆盖率 = 有工具实现的API端点百分比。

自定义设置

你可以通过设置环境变量来自定义脚本的行为:

  • PROJECT_ROOT:覆盖项目根目录(默认值:/Users/philw/Projects/umbraco-mcp)。

示例:

PROJECT_ROOT=/path/to/project npx ts-node .claude/skills/update-ignored-endpoints/scripts/update-ignored-endpoints.ts

🔧 技术细节

  • 使用TypeScript编写,以确保类型安全并与项目保持一致。
  • 使用glob包进行高效的文件模式匹配。
  • 保留现有文档中的“## Rationale”部分。
  • 端点根据命名模式自动分类。
  • 使用正则表达式匹配来查找API端点和工具实现。
  • 覆盖统计信息有助于跟踪API完整实现的进度。
help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client