Token导航 LogoToken导航

MCP Server · AI代理

Cloudflare Remix Vite MCP

该项目展示了如何在Cloudflare Workers上构建交互式MCP(Model Context Protocol)小工具,并嵌入到如ChatGPT等AI聊天界面中,结合现代Web技术创建丰富的状态化AI对话体验。

未说明官方级别未说明来源级核验工具 1
Cloudflare WorkersTypeScriptAI代理

快速开始

公开资料没有提供安装命令,按仓库或官方文档接入。
作者 / 组织
kentcdodds
提供方
kentcdodds

工具数量

1

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

45

仓库热度

收录来源

2 个

MCP World

选型结论

Cloudflare Remix Vite MCP 属于AI代理类 MCP Server,公开资料标注 1 个工具,通过传输方式未标注接入,客户端适配情况以官方文档为准,没有现成的安装命令;接入前先确认权限范围。

分类

AI代理

传输方式

未说明

认证方式

无需认证

部署方式

支持远程部署

安装与配置

公开目录没有给出安装命令,需要按仓库 README安装;下面按同类条目的通用流程说明。

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    先确认运行方式

    公开资料没有标注传输方式,先看仓库 README,确认是本地进程还是远程地址。

  2. 2

    获取服务

    公开目录没有给出安装命令,按仓库 README里的步骤安装或获取服务。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 1 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

公开资料仍需确认:安装命令

详细介绍

混音3 MCP演示

本项目演示了如何构建交互式MCP(模型上下文协议) 在Cloudflare Workers上运行并可嵌入AI聊天界面的小部件 比如ChatGPT。它展示了MCP与现代网络相结合的力量 在人工智能对话中创建丰富、有状态体验的技术。

演示视频

查看ChatGPT中的计算器小部件,包括隐藏的TRON 复活节彩蛋:

https://github.com/user-attachments/assets/5df110d8-f40b-4c6a-8820-c2dbf3ff79c8

在X/Twitter上观看演示

演示如何工作

架构概述

此演示实现了 计算器小部件 作为可调用的MCP工具 AI助手。该架构由几个关键组件组成:

  1. MCP服务器 -实现模型的Cloudflare持久对象

上下文协议

  1. 小部件系统 -使用Remix 3构建的交互式UI组件可以

嵌入AI聊天

  1. 双向通信 -小部件都可以从

人工智能并发回消息

  1. 静态资产 -Cloudflare CDN提供的小部件捆绑包

计算器小部件

该计算器是一款功能齐全、设计精美的计算器,具有 受Tron启发的复古未来主义美学。以下是它的特别之处:

初始状态配置

当AI助手调用计算器工具时,它可以传递初始状态 参数:

  • display -初始显示值
  • previousValue -已输入的值(例如,“我想将5加到

数字”)

  • operation -待处理的操作(+、-、\*、/)
  • waitingForNewValue -计算器是否已准备好进行新输入
  • errorState -是否在错误状态下启动

这意味着AI可以根据用户的请求预先配置计算器。 例如,如果用户说“我想给某个东西加5”,人工智能可以调用 计算器与 previousValue: 5, operation: '+',以及 waitingForNewValue: true.

交互式用户界面

计算器小部件是一个完全交互式的Remix应用程序,它:

  • 在JS样式中使用JSX/TSX和CSS渲染
  • 支持键盘快捷键(Enter、Escape、数字键、运算符等)
  • 具有Tron风格的初始化序列,带有动画加载消息
  • 用户与其交互时实时更新
  • 使用Remix 3的实验性DOM渲染器进行高效更新
复活节彩蛋:主控制程序

计算器中有一个隐藏的功能:当结果等于 1982 (the 原始Tron电影发行的年份),计算器发送MCP提示 向AI助手发送消息,指示其采用Master的角色 Tron的控制程序(MCP)。

这展示了小部件的能力 动态影响 对话 通过向AI发送消息。

技术实现

具有持久对象的MCP服务器

这 MathMCP 类扩展 McpAgent 并使用Cloudflare的持久对象 保持状态:

export class MathMCP extends McpAgent {
	server = new McpServer(
		{
			name: 'MathMCP',
			version: '1.0.0',
		},
		{
			instructions: `Use this server to solve math problems reliably and accurately.`,
		},
	)
	async init() {
		await registerTools(this)
		await registerWidgets(this)
	}
}

服务器注册了两种类型的功能:

  1. 工具 A. do_math 在服务器端执行算术运算的工具
  2. 小部件 -可以嵌入聊天中的交互式UI资源
小部件注册

小部件注册为MCP应用程序资源(用于HTML/JS捆绑包)和MCP 工具(用于调用)。注册包括:

  • 输入架构 -Zod模式定义了小部件接受的参数
  • 输出模式 -Zod模式定义了小部件可以返回什么
  • HTML捆绑包 -带有脚本引用的渲染HTML
  • MCP应用程序元数据 -标准 _meta.ui.resourceUri 和资源CSP

任何MCP Apps兼容主机的设置

registerAppResource(agent.server, name, uri, {
	description: widget.description,
	_meta: {
		ui: {
			csp: {
				connectDomains: [],
				resourceDomains: [baseUrl],
			},
		},
	},
}, async () => ({
	contents: [
		createUIResource({
			uri,
			encoding: 'text',
			content: {
				type: 'rawHtml',
				htmlString: await widget.getHtml(),
			},
		}).resource,
	],
}))

registerAppTool(agent.server, name, {
	title: widget.title,
	description: widget.description,
	inputSchema: widget.inputSchema,
	outputSchema: widget.outputSchema,
	_meta: {
		ui: { resourceUri: uri },
	},
}, handler)
单独构建过程

该项目使用两个单独的构建过程:

  1. 小部件构建 (Vite)-将计算器UI构建为独立的JavaScript

捆绑包

- 输入: worker/widgets/calculator/index.tsx - 输出: dist/public/widgets/calculator.js - 格式:捆绑了所有依赖项的ES模块

  1. 工人建设 (牧马人)-使用MCP服务器构建Cloudflare Worker

- 输入: worker/index.tsx - 输出:部署到Cloudflare的Worker捆绑包 - 包括:MCP协议处理程序、工具注册、小部件服务

通信协议

小部件使用 MCP应用程序JSON-RPC桥(ui/* 方法)通过 App 类别:

  • 初始化 -小部件调用 ui/initialize 和 App.connect()
  • 工具输入 -主机发送 ui/notifications/tool-input
  • 工具调用 -小部件调用 tools/call 通过 app.callServerTool()
  • 消息 -小部件发送 ui/message 通过 app.sendMessage()
  • 链接 -小部件请求 ui/open-link 通过 app.openLink()
const app = new App({ name: 'calculator-widget', version: '1.0.0' })
app.ontoolinput = ({ arguments: toolInput }) => {
	console.log('toolInput', toolInput)
}
await app.connect()

// Widget sends a prompt to the AI
await app.sendMessage({
	role: 'user',
	content: [{ type: 'text', text: MCP_PROMPT }],
})

用户体验

以下是用户在ChatGPT中与此MCP服务器交互时发生的情况:

  1. 用户问:“我能得到一个计算器吗?”
  2. ChatGPT调用 calculator 通过MCP工具
  3. 工具元数据通过以下方式链接到UI资源 _meta.ui.resourceUri
  4. ChatGPT获取 ui:// 资源,在iframe中呈现小部件,以及

通过发送工具输入 ui/notifications/tool-input

  1. 小部件加载后,显示Tron风格的初始化序列,然后显示

计算器

  1. 用户与计算器交互(点击按钮或使用键盘)
  2. 如果结果为1982,则小部件会向ChatGPT发送一个提示
  3. ChatGPT采用MCP角色并相应地做出响应

自己跑步

先决条件

  • Node.js(v18或更高版本)
  • npm或纱线
  • Cloudflare帐户(用于部署)

本地开发

  1. 克隆并安装
   npm install
  1. 启动开发服务器
   npm run dev

这同时运行两个进程:

- 手表模式下的小部件构建(Vite) - 拿着当地耐用物品的工人(牧马人)

  1. 测试计算器小部件

访问 http://localhost:8787/__dev/widgets 在中查看计算器小部件 隔离。

  1. 连接到MCP检查器

使用MCP检查器测试MCP服务器:

   npm run inspect

然后连接到 http://localhost:8787/mcp 在检查员。

部署

  1. 为生产而建
   npm run build
  1. 部署到Cloudflare
   npm run deploy
  1. 与ChatGPT一起使用

部署后,您可以通过提供以下内容将此MCP服务器添加到ChatGPT 部署URL+ /mcp 终点。

项目结构

├── worker/
│   ├── index.tsx              # Main worker entry point
│   ├── tools.ts               # MCP tool definitions (do_math)
│   ├── widgets.tsx            # Widget registration system
│   ├── utils.ts               # CORS and utility functions
│   └── widgets/
│       ├── utils.ts           # Widget communication utilities
│       └── calculator/
│           ├── index.tsx      # Calculator UI component
│           ├── calculator.ts  # Calculator business logic
│           └── mcp-prompt.ts  # The MCP easter egg prompt
├── dist/
│   └── public/
│       └── widgets/
│           └── calculator.js  # Built calculator bundle
├── vite.config.widgets.ts     # Vite config for widget builds
└── wrangler.jsonc             # Cloudflare Workers config

关键技术

平台

有状态的协调原语

人工智能服务通信

渲染器)

  • 维特 -小部件包的快速构建工具
  • 黄道带 -TypeScript第一模式验证

环境和配置

这 wrangler.jsonc 配置:

  • 持久对象绑定(MATH_MCP_OBJECT)
  • 服务小部件捆绑包的资产绑定
  • MCP SDK的Node.js兼容性
  • 生产监控的可观察性

开发技巧

  • 小工具开发:小部件代码的更改将自动热重新加载
  • 员工变动:Wrangler将在文件更改时重新启动worker
  • 类型安全:运行 npm run typecheck 验证TypeScript
  • 代码检查:运行 npm run lint 检查代码样式

学分

此演示展示了尖端的网络技术,包括实验性的Remix 3 功能、MCP小部件和Cloudflare的边缘计算平台。计算器 该设计以其独特的橙色光芒向Tron的美学致敬 复古未来主义风格。

工具与能力

工具数量

1

资源数量

0

提示词数量

0

能力标签

AI聊天集成TypeScript本地部署交互式小工具CloudflareWorkersMCP协议状态管理

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

多步任务编排

把拆解、检索、执行串成一条链,模型按步骤调用工具。

长期上下文

把会话、笔记和知识放到外部存储,换个会话还能接着做。

接自有流程

把内部系统和模型连起来,让助手调用已有的工作流。

选择建议

值得选的地方

  • 只提供 1 个工具,职责集中,接入后不容易误操作。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • 公开资料没有可直接复制的安装命令,第一次接入要自己找入口。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在AI代理场景里让模型直接调用外部能力的人。
  • 愿意照着官方文档一步步配环境的人。

不太适合

  • 希望一条命令就装好、不想看文档的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Cloudflare Remix Vite MCP

MCP World · 本页

1未说明未标注2 个2026-05-17
Everything Claude Code

MCP World

0stdio有1 个2026-05-17
Filesystem 560c4363

MCP World

13未说明未标注2 个2026-05-17
Time 7365cb6d

MCP.so

2SSE有2 个2026-05-17
Server Everything (everything)

MCP World

11stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Cloudflare Remix Vite MCP 怎么安装?

公开目录没有给出可以直接复制的安装命令,需要按仓库 README里的步骤安装;装好后写进客户端的 MCP 配置再重启。

Cloudflare Remix Vite MCP 怎么在 Claude Desktop、Cursor 里配置?

它是传输方式未标注,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

Cloudflare Remix Vite MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Cloudflare Remix Vite MCP 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Cloudflare Remix Vite MCP 支持哪些客户端?

公开资料没有标注具体客户端;能配置本地 MCP 命令的客户端都能接,配置方式参照官方文档。

来源信息

继续浏览同类 MCP