mcp

द्वारा vercel

MCP ऐप्स का json-render के लिए एकीकरण। इसका उपयोग तब करें जब MCP सर्वर बनाए जा रहे हों जो Claude, ChatGPT, Cursor, या VS Code में इंटरैक्टिव UI प्रस्तुत करते हैं, या जब एकीकरण किया जा रहा हो…

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

  1. createMcpApp() creates an McpServer that registers a render-ui tool and a ui:// HTML resource
  2. The tool description includes the catalog prompt so the LLM knows how to generate valid specs
  3. The HTML resource is a Vite-bundled single-file React app with json-render renderers
  4. Inside the iframe, useJsonRenderApp() connects to the host via postMessage and renders specs

Server API

  • createMcpApp(options) - main entry, creates a full MCP server
  • registerJsonRenderTool(server, options) - register a json-render tool on an existing server
  • registerJsonRenderResource(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 की और Skills

vercel
vercel
स्थानीय विकास और परीक्षण के लिए अनुकरणित Vercel REST API। उपयोग तब करें जब उपयोगकर्ता को स्थानीय रूप से Vercel API एंडपॉइंट्स के साथ इंटरैक्ट करने, Vercel इंटीग्रेशन का परीक्षण करने की आवश्यकता हो,…
cron-jobs
vercel
Vercel Cron Jobs कॉन्फ़िगरेशन और सर्वोत्तम अभ्यास। vercel.json में शेड्यूल किए गए कार्यों को जोड़ने, संपादित करने या डीबग करने पर उपयोग करें।
codegen
vercel
json-render के लिए कोड जनरेशन उपयोगिताएँ। UI स्पेक्स से कोड जनरेट करते समय, कस्टम कोड एक्सपोर्टर बनाते समय, स्पेक्स को ट्रैवर्स करते समय, या प्रॉप्स को सीरियलाइज़ करते समय उपयोग करें…
next-best-practice
vercel
Next.js सर्वोत्तम अभ्यास - फ़ाइल परंपराएँ, RSC सीमाएँ, डेटा पैटर्न, async API, मेटाडेटा, त्रुटि प्रबंधन, रूट हैंडलर, इमेज/फ़ॉन्ट अनुकूलन,…
benchmark-sandbox
vercel
Vercel Sandboxes में vercel-plugin eval परिदृश्य चलाएँ, स्थानीय WezTerm पैनलों के बजाय। Claude Code + प्लगइन पूर्व-स्थापित के साथ अस्थायी microVMs प्रदान करता है,…
write-guide
vercel
एक तकनीकी गाइड तैयार करें जो प्रगतिशील उदाहरणों के माध्यम से एक वास्तविक दुनिया के उपयोग के मामले को सिखाता है। अवधारणाओं को केवल तब पेश किया जाता है जब पाठक को उनकी आवश्यकता होती है।
benchmark-testing
vercel
बेंचमार्क परीक्षण परियोजनाएँ बनाएँ और लॉन्च करें ताकि वास्तविक परिदृश्यों में vercel-plugin कौशल इंजेक्शन का परीक्षण किया जा सके। पृथक निर्देशिकाएँ सेट करता है, इंस्टॉल करता है…
ai-gateway
vercel
Vercel AI गेटवे विशेषज्ञ मार्गदर्शन। मॉडल रूटिंग, प्रदाता फेलओवर, लागत ट्रैकिंग, या एकीकृत माध्यम से कई AI प्रदाताओं के प्रबंधन को कॉन्फ़िगर करते समय उपयोग करें…