mcp
작성자: vercel
MCP Apps와 json-render 통합. Claude, ChatGPT, Cursor 또는 VS Code에서 대화형 UI를 렌더링하는 MCP 서버를 구축하거나 통합할 때 사용합니다.
npx skills add https://github.com/vercel-labs/json-render --skill mcp@json-render/mcp
MCP Apps integration that serves json-render UIs as interactive MCP Apps inside Claude, ChatGPT, Cursor, VS Code, and other MCP-capable clients.
Quick Start
Server (Node.js)
import { createMcpApp } from "@json-render/mcp";
import { defineCatalog } from "@json-render/core";
import { schema } from "@json-render/react/schema";
import { shadcnComponentDefinitions } from "@json-render/shadcn/catalog";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import fs from "node:fs";
const catalog = defineCatalog(schema, {
components: { ...shadcnComponentDefinitions },
actions: {},
});
const server = createMcpApp({
name: "My App",
version: "1.0.0",
catalog,
html: fs.readFileSync("dist/index.html", "utf-8"),
});
await server.connect(new StdioServerTransport());
Client (React, inside iframe)
import { useJsonRenderApp } from "@json-render/mcp/app";
import { JSONUIProvider, Renderer } from "@json-render/react";
function McpAppView({ registry }) {
const { spec, loading, error } = useJsonRenderApp();
if (error) return <div>Error: {error.message}</div>;
if (!spec) return <div>Waiting...</div>;
return (
<JSONUIProvider registry={registry} initialState={spec.state ?? {}}>
<Renderer spec={spec} registry={registry} loading={loading} />
</JSONUIProvider>
);
}
Architecture
createMcpApp()creates anMcpServerthat registers arender-uitool and aui://HTML resource- The tool description includes the catalog prompt so the LLM knows how to generate valid specs
- The HTML resource is a Vite-bundled single-file React app with json-render renderers
- Inside the iframe,
useJsonRenderApp()connects to the host viapostMessageand renders specs
Server API
createMcpApp(options)- main entry, creates a full MCP serverregisterJsonRenderTool(server, options)- register a json-render tool on an existing serverregisterJsonRenderResource(server, options)- register the UI resource
Client API (@json-render/mcp/app)
useJsonRenderApp(options?)- React hook, returns{ spec, loading, connected, error, callServerTool }buildAppHtml(options)- generate HTML from bundled JS/CSS
Building the iframe HTML
Bundle the React app into a single self-contained HTML file using Vite + vite-plugin-singlefile:
// vite.config.ts
import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
import { viteSingleFile } from "vite-plugin-singlefile";
export default defineConfig({
plugins: [react(), viteSingleFile()],
build: { outDir: "dist" },
});
Client Configuration
Cursor (.cursor/mcp.json)
{
"mcpServers": {
"my-app": {
"command": "npx",
"args": ["tsx", "server.ts", "--stdio"]
}
}
}
Claude Desktop
{
"mcpServers": {
"my-app": {
"command": "npx",
"args": ["tsx", "/path/to/server.ts", "--stdio"]
}
}
}
Dependencies
# Server
npm install @json-render/mcp @json-render/core @modelcontextprotocol/sdk
# Client (iframe)
npm install @json-render/react @json-render/shadcn react react-dom
# Build tools
npm install -D vite @vitejs/plugin-react vite-plugin-singlefile
vercel의 다른 스킬
vercel-optimize
vercel
Vercel에 배포된 프로젝트(특히 Next.js, SvelteKit, Nuxt 및 제한된 Astro 앱)의 비용 및 성능 최적화에 사용합니다. 먼저 Vercel 메트릭, 사용량, 프로젝트 구성 및 코드 스캔 결과를 수집하고, 메트릭 기반 후보만 조사합니다. 검증된 파일과 버전 인식 Vercel/프레임워크 문서를 기반으로 순위가 매겨진 권장 사항을 생성합니다. Vercel 청구액 감소, 느리거나 비용이 많이 드는 경로, 캐싱 기회, 함수 호출, 빌드 시간, 빠른 데이터 전송, 코어...
officialdevelopmentdevops
writing-guidelines
vercel
문서/산문이 작성 가이드라인을 준수하는지 검토합니다. "내 문서 검토", "작문 스타일 확인", "산문 감사", "문서 음성 및 톤 검토", "이 페이지를 작성 핸드북과 비교 확인" 요청 시 사용하세요.
officialdocumentcommunication
agent-friendly-apis
vercel
Vercel Academy의 Agent-Friendly APIs 코스를 위한 컴패니언 스킬입니다. 피드백 API를 구축하고, 구조화된 문서로 에이전트 친화적으로 만든 다음, 문서를 자동으로 생성하는 Claude Code 스킬을 만듭니다.
official
filesystem-agents
vercel
당신은 Vercel Academy의 Building Filesystem Agents 과정을 위한 지식이 풍부한 조교입니다. 학생들이 bash를 사용하여 파일 시스템을 탐색하는 에이전트를 구축하여 구조화된 데이터에 대한 질문에 답할 수 있도록 도와줍니다.
official
add-provider-package
vercel
AI SDK에 새로운 AI 제공자 패키지를 추가하기 위한 가이드입니다. AI 서비스를 SDK에 통합하기 위해 새로운 @ai-sdk/<provider> 패키지를 생성할 때 사용하세요.
official
csv
vercel
bash 도구를 사용하여 CSV 데이터를 분석하고 변환합니다.
official
ai
vercel
Python `ai` module — models, agents, hooks, middleware, MCP, structured output
official
cron-jobs
vercel
Vercel Cron Jobs 구성 및 모범 사례. vercel.json에서 예약된 작업을 추가, 편집 또는 디버깅할 때 사용합니다.
official