Vendure MCP服务

一个独立的模型上下文协议(MCP)服务器,用于以编程方式与本地Vendure项目的CLI命令进行上下文感知交互。

  • by vendurehq
  • TypeScript
  • 本地部署
  • 12 星标
  • 更新于
在 GitHub 查看 vendure-ecommerce/mcp

使用说明

[!小心] 此MCP已过时,不再维护。不要再使用它了。让您的代理直接与Vendure CLI交互。

Vendure MCP Server

A standalone Model Context Protocol (MCP) server for Vendure CLI orchestration. This package runs on a per-project basis, allowing external clients like Cursor to interact with your local Vendure project's CLI commands in a programmatic and context-aware way.

特性

  • 项目整合:直接在Vendure项目中运行,提供上下文感知工具。
  • CLI集成:直接访问Vendure CLI add 和 migrate 命令。
  • 项目分析:分析项目结构,列出插件、实体和服务。
  • 双重运输支持:通过标准I/O(STDIO)连接本地客户端,如Cursor,或通过HTTP连接网络客户端。
  • 环境检查:验证Vendure在项目中的安装和依赖关系。
  • 访问文档:MCP可以在需要时获取官方Vendure文档作为上下文使用。
  • 实时:无需修改即可与任何当地Vendure项目合作。

动态CLI集成

服务器根据项目安装的Vendure CLI命令定义动态生成MCP工具。这确保了:

  • 单一事实来源:CLI更改会自动反映在MCP工具中。
  • 经得起未来考验:新的CLI命令和选项将自动可用。
  • 无幻觉:工具生成的代码始终是正确的,因为它基于项目中的实际CLI定义。

安装和设置工作流程

[!警告] 使用MCP的CLI命令编排功能。目标项目应运行 @vendure/cli >3.4.0或更高版本的软件包。目前,这将是我们的小分支。

要更改软件包的版本,请打开 package.json 将您的项目的“@vendure/cli”版本更改为“minor”,然后删除您的 package-lock.json 文件和 node_modules 文件夹并运行 npm install.

该服务器旨在直接从您的Vendure项目安装和运行。这确保了它始终可以访问正确的依赖关系和项目上下文。

配置您的MCP客户端(例如Cursor)

创建或更新 mcp.json MCP客户端使用的文件。此文件通常位于 .cursor/mcp.json 在项目的根文件夹中。

以下是STDIO和HTTP连接的配置。

[!重要] 您必须重新启动MCP客户端,例如Cursor IDE或Claude Code,才能应用更改。

选项1:STDIO连接(建议用于本地客户端)

这是最简单、最直接的连接方式。

{
    "mcpServers": {
        "vendure-local-mcp": {
            "command": "npx",
            "args": ["@vendure/mcp-server@latest", "--projectPath", "/path/to/your/vendure-project"]
        }
    }
}

[!重要] 您必须更换 /path/to/your/vendure-project 随着 绝对路径 到Vendure项目的根目录。和你一样的路 vendure-config.ts.

选项2:HTTP连接

如果你的客户端不支持STDIO,或者你需要通过网络连接,你可以在HTTP模式下运行服务器。

首先,从您的终端启动服务器 Vendure项目的根目录:

npx @vendure/mcp-server@latest --transport http --projectPath .

这将在默认端口(8000)上启动服务器,您可以使用 --port <0000> 旗帜。

然后,配置您的 mcp.json 要连接到正在运行的服务器的URL:

{
    "mcpServers": {
        "vendure": {
            "url": "http://localhost:8000/mcp"
        }
    }
}

选项3:Docker

这将启动一个Docker容器,服务器将在stdio模式下运行。请参阅 Docker指南 有关使用Docker运行的更多信息。

{
    "mcpServers": {
        "vendure-mcp-docker": {
            "command": "docker",
            "args": [
                "run",
                "--rm",
                "-i",
                "--env",
                "PROJECT_PATH=/workspace",
                "--volume",
                "/absolute/path/to-your-vendure-project:/workspace",
                "vendure/mcp:latest",
                "--projectPath",
                "/workspace"
            ]
        }
    }
}

[!重要] 您必须更换 /path/to/your/vendure-project 随着 绝对路径 到Vendure项目的根目录。和你一样的路 vendure-config.ts.

发展

如果您正在为Vendure MCP服务器本身做出贡献,则需要从源代码运行它。

从源代码构建

git clone https://github.com/vendure-ecommerce/mcp.git
cd vendure-mcp-server # Or the correct directory name
npm install
npm run build

发展模式

要将MCP客户端连接到本地开发服务器,请使用 npm run dev 脚本并将其指向测试Venture项目。您可以在STDIO或HTTP模式下运行它。

  • STDIO模式: npm run dev -- --projectPath /path/to/your/test-vendure-project
  • HTTP模式: npm run dev:http -- --projectPath /path/to/your/test-vendure-project

配置您的 mcp.json 如设置部分所述,连接到开发服务器。这 -- 需要将参数正确传递给npm脚本。

故障排除和问题报告

如果您在使用/运行MCP时遇到问题,我们将感谢您提供任何有助于我们重现您问题的信息。

[!提示] 您可以为我们提供 MCP日志 由您的MCP客户端创建。 在Cursor中,您可以通过以下方式找到它们 Developer: Open Log File... > MCP Logs 默认情况下,在命令调色板(Shift+Cmd/Ctrl/Super+P)中。

链接