关于 Mcp Server Js
YepCode MCP Server 是一个 MCP 服务,可将 YepCode 中的流程暴露为 AI 助手可调用的工具。它面向希望把工作流、API 与自动化接入 AI 平台的开发者,支持 JSON Schema 定义参数,并可用 Python 或 Node.js 实现工具。
主要功能
- 01将 YepCode 流程暴露为 MCP 工具
- 02使用 JSON Schema 定义工具参数
- 03支持 Python 与 Node.js 实现
- 04通过标签选择需要暴露的流程
- 05提供环境变量、文件与执行管理工具
- 06支持 NPX 与 Docker 本地部署
适用场景
- 01让 AI 助手触发已有的 YepCode 自动化流程
- 02让 LLM 生成并在 YepCode 环境中执行代码
- 03通过 MCP 管理工作区的计划任务与执行记录
MCP 相关
该项目是一个 MCP 服务,向 MCP 客户端暴露代码执行、环境变量、存储及流程管理等工具,并可选择按标签开放特定流程。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍

什么是 YepCode MCP 服务?
一个 MCP(Model Context Protocol)服务,可让 AI 平台与 YepCode 的基础设施交互。运行由大模型生成的脚本,并将 YepCode 流程转变为 AI 助手可直接使用的强大工具。YepCode 是构建动态 MCP 工具服务的理想环境:将每个流程公开为一个工具(使用 OAuth、API 令牌或您的凭据),通过 JSON Schema 灵活定义每个工具的参数,并使用 Python 或 Node.js 实现工具——所有这些都在一个可混合多种语言的服务中完成。
为什么选择 YepCode MCP 服务?
- 无缝集成 AI:无需配置,即可将 YepCode 流程转换为适用于 AI 的工具
- 实时流程控制:实现 AI 系统与您的工作流直接交互
- 企业级安全性:在 YepCode 隔离且可用于生产环境的环境中执行代码
- 通用兼容性:与任何支持 Model Context Protocol 的 AI 平台集成
YepCode:构建动态 MCP 工具服务的理想环境
YepCode 专为运行动态 MCP 工具服务而打造:
-
一个流程,一个工具:每个 YepCode 流程都可以作为 MCP 工具公开。为流程添加标签(例如
mcp-tool、core、automation),它们就会成为 AI 助手可调用的工具。您可以使用 OAuth、API 令牌或现有 YepCode 凭据来保护访问权限——每个工具都在您的工作区中运行,并采用相同的安全模型。 -
完全掌控工具参数:每个工具都可以使用 JSON Schema 定义自己的参数架构。您可以灵活描述输入内容(类型、描述、必填字段、枚举值、默认值等),让 AI 获取丰富的元数据并正确调用工具。
-
多语言工具实现:使用 Python 或 Node.js(或两者)实现工具。同一个 MCP 服务可以公开由不同运行时支持的工具——可以将其视为一个混合多种语言实现的 MCP 服务。
完整文档请参阅 YepCode MCP Server 文档。
安装
此软件包可让您在本地或自己的基础设施中运行 YepCode MCP 服务(NPX、Docker 或自定义部署)。可将其与 Cursor 或 Claude Desktop 等 AI 平台集成。
**提示:**您还可以通过 YepCode 账户使用托管的 MCP 服务,无需本地安装。连接 URL 始终为:
https://cloud.yepcode.io/mcp
前提条件
获取您的 YepCode API 凭据:
- 注册 YepCode Cloud
- 前往
Settings>API credentials创建新的 API 令牌。
使用 NPX
请确保已安装 Node.js(版本 18 或更高),并使用类似以下内容的配置:
{
"mcpServers": {
"yepcode-mcp-server": {
"command": "npx",
"args": ["-y", "@yepcode/mcp-server"],
"env": {
"YEPCODE_API_TOKEN": "your_api_token_here"
}
}
}
}
使用 Docker
- 构建容器镜像:
docker build -t yepcode/mcp-server .
- 使用类似以下内容的配置:
{
"mcpServers": {
"yepcode-mcp-server": {
"command": "docker",
"args": [
"run",
"-d",
"-e",
"YEPCODE_API_TOKEN=your_api_token_here",
"yepcode/mcp-server"
]
}
}
}
调试
由于 MCP 服务通过 stdio 通信,调试起来可能比较棘手。为了简化调试,我们建议使用 MCP Inspector,并运行以下命令:
npm run inspector
这将启动一个服务,让你可以直接在浏览器中使用调试工具。
YepCode MCP 工具参考
MCP 服务提供了多种工具,用于与 YepCode 的基础设施交互:
代码执行
run_code
在 YepCode 的安全环境中执行代码。
// Input
{
code: string; // The code to execute
options?: {
language?: string; // Programming language (default: 'javascript')
comment?: string; // Execution context
settings?: Record<string, unknown>; // Runtime settings
}
}
// Response
{
returnValue?: unknown; // Execution result
logs?: string[]; // Console output
error?: string; // Error message if execution failed
}
MCP 选项
YepCode MCP 服务支持以下选项:
runCodeCleanup:跳过 run_code 清理。默认情况下,执行后会删除 run_code 处理的源代码。如果你想出于审计目的保留源代码,可以使用此选项。skipCodingRules:跳过在 run_code 工具定义中包含编码规则。默认情况下,YepCode 文档中的 JavaScript 和 Python 编码规则会包含在工具架构中,以指导 AI 生成代码。如果你想跳过这些规则,以加快工具初始化速度或缩小工具定义,可以使用此选项。
可以通过 YEPCODE_MCP_OPTIONS 环境变量传入以逗号分隔的选项列表。
工具选择
你可以通过设置 YEPCODE_MCP_TOOLS 环境变量,并传入以逗号分隔的工具类别和流程标签列表,来控制启用哪些工具:
内置工具类别:
run_code:启用代码执行工具yc_api:启用所有基本 API 管理工具(流程、计划、变量、存储、执行、模块)yc_api_full:启用所有 API 管理工具,包括与版本相关的工具(在yc_api的基础上增加流程和模块版本管理工具)- 任何特定的 API 工具名称(例如
execute_process_sync、get_execution……)
流程标签:
- YepCode 流程中使用的任何标签(例如
mcp-tool、core、automation等) - 指定流程标签后,所有带有该标签的流程都会作为独立的 MCP 工具公开
- 流程工具将使用流程 slug 命名(如果名称超过 60 个字符,则会使用
yc_加流程 ID 作为前缀)
如果未指定,则默认启用所有内置工具,但不会公开任何流程工具。
// NPX configuration with options
{
"mcpServers": {
"yepcode-mcp-server": {
"command": "npx",
"args": ["-y", "@yepcode/mcp-server"],
"env": {
"YEPCODE_API_TOKEN": "your_api_token_here",
"YEPCODE_MCP_OPTIONS": "runCodeCleanup,skipCodingRules",
"YEPCODE_MCP_TOOLS": "run_code,yc_api,mcp-tool,core"
}
}
}
}
示例场景:
YEPCODE_MCP_TOOLS=run_code,yc_api- 启用内置代码执行工具和基本 API 管理工具YEPCODE_MCP_TOOLS=run_code,yc_api_full- 启用内置代码执行工具和所有 API 管理工具(包括版本管理)YEPCODE_MCP_TOOLS=core,automation- 仅公开带有“core”或“automation”标签的流程作为工具YEPCODE_MCP_TOOLS=run_code,yc_api,core- 启用内置工具以及所有带有“core”标签的流程
环境管理
set_env_var
在 YepCode 工作区中设置环境变量。
// Input
{
key: string; // Variable name
value: string; // Variable value
isSensitive?: boolean; // Whether to mask the value in logs (default: true)
}
remove_env_var
从 YepCode 工作区中移除环境变量。
// Input
{
key: string; // Name of the variable to remove
}
存储管理
YepCode 提供内置存储系统,可用于上传、列出、下载和删除文件。你可以在代码执行中通过 yepcode.storage 辅助方法访问这些文件。
list_files
列出 YepCode 存储中的所有文件。
// Input
{
prefix?: string; // Optional prefix to filter files
}
// Response
{
files: Array<{
filename: string; // File name or path
size: number; // File size in bytes
lastModified: string; // Last modification date
}>;
}
upload_file
将文件上传到 YepCode 存储。
// Input
{
filename: string; // File path (e.g., 'file.txt' or 'folder/file.txt')
content: string | { // File content
data: string; // Base64 encoded content for binary files
encoding: "base64";
};
}
// Response
{
success: boolean; // Upload success status
filename: string; // Uploaded file path
}
download_file
从 YepCode 存储下载文件。
// Input
{
filename: string; // File path to download
}
// Response
{
filename: string; // File path
content: string; // File content (base64 for binary files)
encoding?: string; // Encoding type if binary
}
delete_file
从 YepCode 存储中删除文件。
// Input
{
filename: string; // File path to delete
}
// Response
{
success: boolean; // Deletion success status
filename: string; // Deleted file path
}
流程执行
MCP 服务可以将你的 YepCode 流程作为独立的 MCP 工具公开,让 AI 助手能够直接访问。通过在 YEPCODE_MCP_TOOLS 环境变量中指定流程标签即可启用此功能。
工作原理:
- 为 YepCode 流程添加任意标签(例如,
core、api、automation、mcp-tool等) - 将这些标签添加到
YEPCODE_MCP_TOOLS环境变量中 - 所有具有指定标签的流程都会作为独立的 MCP 工具公开
每个公开的流程都会对应一个工具,其名称采用流程 slug(如果工具名称超过 60 个字符,则会加上 yc_ 前缀和流程 ID)。
如需了解有关流程标签的更多信息,请参阅我们的流程标签文档。
<process_slug>
// Input
{
parameters?: any; // This should match the input parameters specified in the process
options?: {
tag?: string; // Process version to execute
comment?: string; // Execution context
};
synchronousExecution?: boolean; // Whether to wait for completion (default: true)
}
// Response (synchronous execution)
{
executionId: string; // Unique execution identifier
logs: string[]; // Process execution logs
returnValue?: unknown; // Process output
error?: string; // Error message if execution failed
}
// Response (asynchronous execution)
{
executionId: string; // Unique execution identifier
}
API 管理工具
API 管理工具类别(yc_api 和 yc_api_full)提供全面的 API 访问能力,用于管理 YepCode 工作区的所有方面:
基础 API 工具(yc_api):
yc_api 标签会启用标准 API 管理工具,用于在工作区内执行核心操作。
扩展 API 工具(yc_api_full):
yc_api_full 标签包含 yc_api 的所有功能,以及用于管理流程和模块版本的其他工具。
流程管理:
get_processes- 列出流程,可选择筛选create_process- 使用源代码创建流程get_process- 获取流程详情update_process- 更新现有流程delete_process- 删除流程get_process_versions- 获取流程版本(需要yc_api_full)execute_process_async- 异步执行流程execute_process_sync- 同步执行流程schedule_process- 安排流程自动运行
计划管理:
get_schedules- 列出计划运行的流程get_schedule- 获取计划详情pause_schedule- 暂停计划任务resume_schedule- 恢复已暂停的计划任务delete_schedule- 删除计划任务update_schedule- 更新计划任务
变量管理:
get_variables- 列出团队变量create_variable- 创建新变量update_variable- 更新现有变量delete_variable- 删除变量
存储管理:
get_storage_objects- 列出存储对象upload_storage_object- 将文件上传到存储download_storage_object- 从存储下载文件delete_storage_object- 删除存储中的文件
执行管理:
get_executions- 列出执行记录,可选择筛选get_execution- 从 API 获取执行详情kill_execution- 终止正在运行的执行rerun_execution- 重新运行之前的执行get_execution_logs- 获取执行日志
模块管理:
get_modules- 列出脚本库模块create_module- 创建新模块get_module- 获取模块详情delete_module- 删除模块get_module_versions- 获取模块版本(需要yc_api_full)get_module_version- 获取特定模块版本(需要yc_api_full)delete_module_version- 删除模块版本(需要yc_api_full)get_module_aliases- 获取模块版本别名(需要yc_api_full)
许可证
本项目采用 MIT License 许可协议,详情请参阅 LICENSE 文件。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。