Token导航 LogoToken导航TokenDH.com
CopilotKit Generative UI MCP Framework logo
开发工具未说明官方级别未说明来源级核验

CopilotKit Generative UI MCP Framework

MCP Server

一个基于CopilotKit和OpenRouter的即插即用框架,用于构建AI驱动的生成式用户界面。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
TypeScriptClaude开发工具Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Roentek

提供方

Roentek

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

CopilotKit生成UI MCP框架

![License: MIT](https://opensource.org/licenses/MIT)

一个即插即用的框架,用于构建基于人工智能的生成用户界面 副驾驶套件, MCP应用程序,以及 开放路由.MCP服务器工具返回直接在基于浏览器的聊天界面中呈现的交互式HTML组件。

该项目包括一个带有CopilotKit的Next.js前端、一个带有示例UI生成工具的HTTP MCP服务器,以及为Claude Code预配置的9个MCP服务器集成。

建筑

Browser (localhost:3000)
    |
    |  User sends message in CopilotSidebar
    v
Next.js API Route (/api/copilotkit)
    |
    |  BuiltInAgent routes to OpenRouter (LLM)
    v
MCPAppsMiddleware
    |
    |  HTTP request to MCP server (localhost:3001/mcp)
    |  Tool returns data + _meta.ui/resourceUri reference
    v
CopilotKit Frontend
    |
    |  Fetches HTML resource from MCP server
    |  Renders interactive UI in sandboxed iframe
    v
User sees interactive dashboard in the chat sidebar

快速开始

1.克隆存储库

git clone https://github.com/Roentek/CopilotKit_Generative_UI_MCP_Framework.git
cd CopilotKit_Generative_UI_MCP_Framework

2.配置环境变量

cp .env.example .env

编辑 .env 并添加您的API密钥。您至少需要:

OPENAI_API_KEY=your-openrouter-api-key
OPENAI_BASE_URL=https://openrouter.ai/api/v1

3.安装依赖项并运行

npm run setup       # Installs root + MCP server dependencies
npm run dev:all     # Starts Next.js (port 3000) + MCP server (port 3001)

打开 http://localhost:3000 并尝试询问助手: “显示工作流状态”

先决条件

  • Node.js 18+npm
  • OpenRouter API密钥 (在这里买一个)--或任何与OpenAI兼容的LLM提供者
  • Claude 代码命令行工具 (可选,用于使用预配置的MCP服务器)

项目结构

CopilotKit_Generative_UI_MCP_Framework/
├── .claude/                           # Claude Code settings
│   ├── settings.json                  #   Enabled plugins
│   └── settings.local.json            #   Permissions + MCP server config
├── mcp-server/                        # HTTP MCP server for generative UI
│   ├── package.json                   #   Server dependencies
│   ├── tsconfig.json                  #   TypeScript config
│   └── src/
│       ├── server.ts                  #   Express + StreamableHTTPServerTransport
│       └── apps/
│           └── workflow-dashboard.html #   Sample interactive HTML app
├── src/
│   └── app/
│       ├── layout.tsx                 # CopilotKit provider wrapper
│       ├── page.tsx                   # Dashboard + CopilotSidebar
│       ├── globals.css                # Tailwind base styles
│       └── api/
│           └── copilotkit/
│               └── route.ts           # CopilotRuntime + MCPAppsMiddleware
├── .env.example                       # Environment variable template
├── .mcp.json                          # 9 pre-configured MCP servers
├── CLAUDE.md                          # AI agent instructions
├── LICENSE                            # MIT License
├── package.json                       # Next.js + CopilotKit dependencies
└── README.md                          # This file

环境变量

变量必填描述
OPENAI_API_KEY您的OpenRouter API密钥(由CopilotKit运行时使用)
OPENAI_BASE_URL设置为 https://openrouter.ai/api/v1 适用于OpenRouter
OPENROUTER_MODEL要使用的模型(默认为 openai/gpt-4o)-看 OpenRouter型号
MCP_SERVER_URLMCP服务器URL(默认为 http://localhost:3001/mcp)
SUPABASE_API_PAT取消MCP访问令牌
PINECONE_API_KEY松果向量DB API键
APIFY_API_PAT指定web抓取访问令牌
TAVILY_API_KEYTavilly搜索API密钥
VAPI_API_TOKENVapi语音MCP服务器令牌
N8N_HOST_URLn8n实例URL
N8N_API_KEY没有n8n API密钥
GOOGLE_USER_EMAIL谷歌工作区电子邮件
GOOGLE_OAUTH_CLIENT_ID谷歌OAuth客户端ID
GOOGLE_OAUTH_CLIENT_SECRET谷歌OAuth客户端机密
OPENROUTER_API_KEYMCP服务器集成的OpenRouter密钥

预配置的MCP服务器集成

这9台MCP服务器配置在 .mcp.json 与Claude Code CLI/IDE一起使用:

服务器用途传输
n8n工作流自动化stdio
塔维利网络搜索与研究
瓦皮语音和呼叫APIstdio
泽普文档和内存远程
松果矢量数据库stdio
Apify网络抓取stdio
Supabase数据库操作stdio
开放路由 LLM 路由
Google Workspace谷歌服务

可用的NPM脚本

脚本描述
npm run setup安装所有依赖项(root+MCP服务器)
npm run dev:all同时启动Next.js+MCP服务器
npm run dev仅启动Next.js开发服务器
npm run mcp:dev仅启动MCP服务器
npm run build为生产环境构建Next.js
npm run start启动Next.js生产服务器
npm run lint运行ESLint

如何添加新的MCP应用程序

MCP Apps模式允许工具返回交互式UI。以下是如何添加一个新的:

步骤1:创建HTML应用程序

在中创建一个自包含的HTML文件 mcp-server/src/apps/。它必须包含所有CSS和JavaScript内联(没有外部依赖关系)。该应用程序通过以下方式接收数据 window.addEventListener("message", ...).


  /* Your styles here */

  

  
    window.addEventListener("message", (event) => {
      const data = typeof event.data === "string"
        ? JSON.parse(event.data)
        : event.data;
      // Render your UI with the data
    });
  

步骤2:在中注册工具 mcp-server/src/server.ts

server.tool(
  "my-tool-name",
  "Description of what the tool does",
  { param1: z.string().describe("Parameter description") },
  async ({ param1 }) => {
    const data = { /* your data */ };
    return {
      content: [{ type: "text" as const, text: JSON.stringify(data) }],
      _meta: { "ui/resourceUri": "ui://generative-ui/my-app" },
    };
  }
);

步骤3:注册资源

server.resource(
  "my-app",
  "ui://generative-ui/my-app",
  { description: "My interactive app", mimeType: "text/html+mcp" },
  async (uri) => ({
    contents: [{
      uri: uri.href,
      mimeType: "text/html+mcp",
      text: loadApp("my-app.html"),
    }],
  })
);

步骤4:重新启动MCP服务器

npm run mcp:dev

OpenRouter配置

该框架使用 开放路由 作为LLM提供商。CopilotKit的运行时在内部使用OpenAI SDK,因此通过设置 OPENAI_BASE_URLhttps://openrouter.ai/api/v1OPENAI_API_KEY 对于您的OpenRouter密钥,所有LLM调用都透明地通过OpenRouter路由。

选择模型

默认模型为 openai/gpt-4o。要使用其他型号,请设置 OPENROUTER_MODEL 您的环境变量 .env 文件:

OPENROUTER_MODEL=anthropic/claude-sonnet-4  # Any OpenRouter model

热门选项:

  • openai/gpt-4o -OpenAI GPT-4 Omni(默认,平衡性能)
  • anthropic/claude-sonnet-4 -克劳德·十四行诗4(出色的推理能力)
  • anthropic/claude-opus-4 -克劳德作品4(最有能力)
  • google/gemini-2.0-flash-thinking-exp:free -谷歌Gemini 2.0 Flash(免费版)
  • meta-llama/llama-3.3-70b-instruct -Llama 3.3 70B
  • deepseek/deepseek-chat -DeepSeek V3(经济高效)

查看完整列表 OpenRouter型号.

故障排除

MCP服务器没有响应: 检查MCP服务器是否在端口3001上运行。跑 npm run mcp:dev 单独查看其日志。访问 http://localhost:3001/health 以验证。

CopilotSidebar显示错误: 确保 OPENAI_API_KEYOPENAI_BASE_URL 设置在您的 .env 文件。API路由位于 /api/copilotkit 需要这些与OpenRouter通信。

MCPAppsMiddle的TypeScript类型错误包括: 这是一个已知的重复问题 @ag-ui/client 包装。这 route.ts 文件用途 as any 键入断言来解决这个问题。跑 npm dedupe 如果您在安装新软件包后发现问题。

端口冲突: Next.js在端口3000上运行,MCP服务器在端口3001上运行。如果这些端口正在使用中,请设置 PORT Next.js通过 next dev -p 3002MCP_PORT MCP服务器的环境变量。

资源

许可证

麻省理工学院许可证-版权所有(c)2026 Roentek Designs

许可证 了解详情。

目录标签

目录标签

TypeScriptClaude开发工具AI界面生成本地部署CopilotKit集成OpenRouter交互式UIMCP服务器

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

oauth

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明oauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP