项目简介
Contentful MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的后端应用。它作为大型语言模型 (LLM) 与 Contentful 内容管理系统 (CMS) 之间的桥梁,使 LLM 能够通过标准化的协议直接查询和获取 Contentful 中的内容类型及具体的条目(Entries)。
主要功能点
- 获取内容类型列表: 允许 LLM 查询 Contentful Space 中定义的所有内容类型(Content Types)的列表,了解CMS的数据结构。
- 获取指定内容类型的条目: 根据 LLM 指定的内容类型,从 Contentful 中检索并返回该类型下的具体内容条目。
- 结构化数据输出: 将从 Contentful 获取的数据转换为 LLM 易于理解和处理的结构化格式。
安装步骤
- 克隆仓库: 使用 'git clone' 命令将项目代码下载到本地。
- 安装依赖: 进入项目目录,运行 'npm install' 安装所需的Node.js依赖包。
- 配置环境: 在项目根目录创建一个名为 '.env' 的文件,填入您的 Contentful API 密钥和环境信息。例如:
CONTENTFUL_SPACE_ID=您的空间ID CONTENTFUL_ACCESS_TOKEN=您的访问令牌 CONTENTFUL_ENVIRONMENT=您的环境名称 (如: develop 或 master) # CONTENTFUL_PREVIEW_ACCESS_TOKEN=您的预览访问令牌 (可选) - 构建项目: 运行 'npm run build' 编译 TypeScript 代码。这将在 'dist' 目录下生成可执行的JavaScript文件。
服务器配置
Contentful MCP 服务器运行后,MCP 客户端(如 Claude Desktop)需要知道如何启动并连接它。您需要在客户端的配置中添加如下信息。请将路径替换为您本地项目的实际绝对路径。
一个典型的客户端配置条目示例如下(具体格式取决于您的MCP客户端):
{ "mcpServers": { "contentful": { "command": "node", // 启动服务器的命令 "args": [ // 命令的参数 "/绝对/路径/到/您的/contentful-mcp-server/dist/index.js" // 指向编译后的服务器启动文件 ] } // 客户端可能还有其他MCP服务器配置 } }
- 'command': 运行服务器所需的可执行程序,此处为 'node'。
- 'args': 传递给 'command' 的参数数组,此处指向项目的启动脚本的绝对路径。
请确保 '/绝对/路径/到/您的/contentful-mcp-server' 是您的项目在文件系统中的实际位置。
基本使用方法
配置完成后,当您使用支持 MCP 的 LLM 客户端(例如 Claude Desktop)时,客户端会自动启动并连接 Contentful MCP 服务器。
LLM 可以通过调用服务器注册的“工具”来与 Contentful 交互:
- 调用 'get-content-types' 工具来获取内容类型列表。
- 调用 'get-entries' 工具并提供 'contentType' 参数来获取指定内容类型下的条目。
LLM 可以利用这些工具获取的 Contentful 数据来回答关于您的内容库的问题,或者基于其中的信息执行其他任务。
信息
分类
AI与计算