页面节点mcp
允许AI助手构建和部署PageNode流的服务器。
支持两个接口:
- MCP(模型上下文协议) -适用于克劳德代码、克劳德桌面、Codex、游标、VS代码等。
- HTTP REST API -适用于Moltbot/Clawdbot技能、webhooks或任何HTTP客户端
安装
npm install -g pagenodes-mcp或者直接运行:
npx pagenodes-mcp快速开始
- 启动MCP服务器:
npx pagenodes-mcp - 在浏览器中打开PageNode
- 在PageNodes中启用MCP:汉堡包菜单(☰)→设置→ 启用“MCP服务器连接”
- 配置您的AI工具(见下文)
AI工具配置
克劳德代码(CLI)
Claude Code通过HTTP+SSE连接(建议用于网络连接)。
选项1:CLI命令
claude mcp add --transport sse pagenodes http://localhost:7778/sse要使其在所有项目中可用,请添加 --scope user:
claude mcp add --transport sse --scope user pagenodes http://localhost:7778/sse选项2:直接编辑配置
添加到您的设置文件(~/.claude.json 对于用户范围,或 .mcp.json 在项目范围的项目根目录中):
{
"mcpServers": {
"pagenodes": {
"type": "sse",
"url": "http://localhost:7778/sse"
}
}
}通过以下方式进行验证: claude mcp list
克劳德桌面版
Claude Desktop使用stdio将MCP服务器作为子进程生成。
打开设置→ 开发者→ 编辑配置(或编辑 ~/.config/claude/claude_desktop_config.json 在Linux上, ~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上):
{
"mcpServers": {
"pagenodes": {
"command": "npx",
"args": ["pagenodes-mcp", "--stdio"]
}
}
}保存后重新启动Claude Desktop。
OpenAI Codex命令行界面
Codex将MCP配置存储在 ~/.codex/config.toml.
对于HTTP/SSE (直接编辑配置):
添加到 ~/.codex/config.toml:
[mcp_servers.pagenodes]
url = "http://localhost:7778/sse"对于stdio (CLI命令):
codex mcp add pagenodes -- npx pagenodes-mcp --stdio或者直接编辑配置:
[mcp_servers.pagenodes]
command = "npx"
args = ["pagenodes-mcp", "--stdio"]VS代码+GitHub副本
VS代码使用 .vscode/mcp.json 在您的项目(或工作区设置)中。
创建 .vscode/mcp.json:
{
"servers": {
"pagenodes": {
"type": "http",
"url": "http://localhost:7778/sse"
}
}
}或者对于stdio:
{
"servers": {
"pagenodes": {
"command": "npx",
"args": ["pagenodes-mcp", "--stdio"]
}
}
}打开Copilot聊天→ 单击工具图标查看可用的MCP服务器。
光标
游标支持全局(~/.cursor/mcp.json)或项目级别(.cursor/mcp.json)配置。
创建或编辑配置文件:
{
"mcpServers": {
"pagenodes": {
"url": "http://localhost:7778/sse"
}
}
}或者对于stdio:
{
"mcpServers": {
"pagenodes": {
"command": "npx",
"args": ["pagenodes-mcp", "--stdio"]
}
}
}您还可以使用命令面板→ 通过UI配置“MCP:添加服务器”。
服务器选项
-p, --port HTTP/WebSocket port (default: 7778, env: PAGENODES_MCP_PORT)
--stdio Enable stdio MCP transport运输方式
| 模式 | 用例 | 工作原理 |
|---|---|---|
| HTTP+SSE | 网络连接(Claude Code、Codex、VS Code、Cursor) | 客户端连接到 /sse,帖子到 /message |
| 标准 | Spawned子进程(克劳德桌面) | JSON-RPC通过stdin/stdout |
这两种模式都可以同时运行——服务器在HTTP上监听,同时在以下情况下接受stdio --stdio 已通过。
连接流程
PageNodes (browser) ──WebSocket──► MCP Server ◄──HTTP/stdio──► Claude- 启动MCP服务器
- 在浏览器中打开PageNode
- 在PageNodes设置(汉堡包菜单)中启用MCP连接→ 设置)
- Claude现在可以创建和部署流
端点
| 端点 | 方法 | 描述 |
|---|---|---|
/sse | MCP客户端的GET | SSE连接(返回 endpoint 带有POST URL的事件) |
/message | POST | 来自SSE客户端的JSON-RPC消息 |
/mcp | POST | 传统直接JSON-RPC端点 |
/health | GET | 健康检查: { status, devices } |
/func/{tool} | POST | REST端点-通过HTTP调用任何工具(见下文) |
/generate_skill_definition | GET | 生成与Moltbot兼容的SKILL.md |
ws:// | WebSocket | PageNodes设备连接(内部) |
REST API(用于Moltbot/HTTP客户端)
每个MCP工具也可以作为REST端点使用:
# List connected devices
curl -X POST http://localhost:7778/func/list_devices
# Get flows from a device
curl -X POST http://localhost:7778/func/get_flows \
-H "Content-Type: application/json" \
-d '{"deviceId": "device-abc123"}'
# Deploy
curl -X POST http://localhost:7778/func/deploy \
-H "Content-Type: application/json" \
-d '{"deviceId": "device-abc123"}'Moltbot/Clawdbot集成
为Moltbot生成SKILL.md文件:
curl http://localhost:7778/generate_skill_definition > ~/.clawdbot/skills/pagenodes/SKILL.md这创建了一个技能定义,其中记录了所有可用的功能。然后,Moltbot可以通过REST API控制PageNodes。
工具
一旦连接,AI助手就可以访问这些工具(也可通过 /func/{tool} REST端点):
| 工具 | 说明 |
|---|---|
list_devices | 列出所有连接的PageNode设备 |
get_device_details | 获取特定设备的详细信息 |
get_started | 先叫这个。 返回指南、节点目录和当前状态 |
get_flows | 获取当前流、节点和配置节点 |
get_node_details | 获取特定节点类型的完整详细信息 |
create_flow | 创建新的流选项卡 |
add_nodes | 使用自动线分辨率添加多个节点 |
update_node | 更新节点的属性或位置 |
delete_node | 从流中删除节点 |
deploy | 将流部署到运行时 |
get_debug_output | 获取最近的调试面板消息 |
get_errors | 获取最近的运行时错误 |
get_logs | 使用可选过滤器获取最近的日志(UI、运行时、音频等) |
clear_logs | 清除日志缓冲区 |
get_inject_nodes | 列出所有可触发的注入节点 |
inject_node | 触发注入节点 |
trigger_node | 向任何节点的输入端发送消息 |
clear_debug | 清除调试消息缓冲区 |
clear_errors | 清除错误消息缓冲区 |
get_node_statuses | 获取所有节点的状态(连接状态等) |
get_canvas_svg | 获取流画布的SVG |
get_mcp_messages | 从mcp输出节点获取消息 |
send_mcp_message | 向节点中的mcp发送消息 |
get_custom_tools | 列出节点中工具定义的自定义工具 |
use_custom_tool | 执行自定义工具(由流支持的AI定义工具) |
自定义工具(AI定义的工具)
PageNodes允许AI代理创建自己的工具。使用 tool-in 和 tool-out 节点,您可以定义由PageNodes流支持的自定义工具。这意味着AI可以在运行时扩展自己的能力。
运作原理
- 在节点中创建工具 具有名称(例如。,
get_weather)和描述 - 将其连接到您的流中 -http请求、函数、硬件访问等
- 以工具输出节点结束 返回
msg.payload结果 - 部署 -该工具持续存在,并可通过以下方式调用
use_custom_tool
示例
[tool-in: search_web]
↓
[http request: search API]
↓
[function: format results]
↓
[tool-out]现在任何AI都可以调用:
use_custom_tool({
deviceId: "device-abc123",
name: "search_web",
message: { payload: "PageNodes tutorial" }
})该流执行并返回以下结果 tool-out.
发现
带有完整描述的自定义工具显示在 get_device_details:
{
"nodeCatalog": [...],
"customTools": [
{ "name": "search_web", "description": "Searches the web and returns top 5 results" },
{ "name": "get_weather", "description": "Gets current weather for a city" }
]
}这 list_devices 响应包括工具名称以供快速参考。使用 get_custom_tools 或 get_device_details 了解包括描述在内的全部详细信息。
AI到AI协作
自定义工具在流程中持续存在。一个人工智能可以创建复杂的工具-多步骤逻辑、错误处理、API集成-并用清晰的描述来展示它们。另一个AI稍后连接,看到可用的工具,并在不知道实现的情况下使用它们。
更强大的模型可以构建更简单的模型可以使用的工具。这些工具成为随着时间的推移而积累的基础设施。
许可证
ISC
