mcp
/mcp
Integruje json-render z MCP Apps, aby serwery MCP renderowały interaktywne interfejsy w Claude, ChatGPT, Cursor lub VS Code.
- Autor
- vercel-labs ↗
- Repozytorium
- json-render ↗
- Licencja
- Apache-2.0
- Ostatnia zmiana repozytorium
- 23.10.2026
Ocena i bezpieczeństwo
- Pliki w paczce
- 1
- Skrypty
- 0
- Komentarze HTML
- 0
- Adresy URL w SKILL.md
- 0
Brak sygnałów. Repozytorium zmienione 23.10.2026, bez odwołań do wycofanych modeli i API.
Apache-2.0, otwarta: można używać i zmieniać, z zachowaniem licencji i informacji o zmianach.
Co robi i kiedy
Integruje json-render z MCP Apps, aby serwery MCP renderowały interaktywne interfejsy w Claude, ChatGPT, Cursor lub VS Code.
Oryginalny opis (EN)
MCP Apps integration for json-render. Use when building MCP servers that render interactive UIs in Claude, ChatGPT, Cursor, or VS Code, or when integrating json-render with the Model Context Protocol.
Jak działa
- Quick Start
- Architecture
- Server API
- Client API (@json-render/mcp/app)
- Building the iframe HTML
- Client Configuration
- Dependencies
Podgląd SKILL.md
---
name: mcp
description: MCP Apps integration for json-render. Use when building MCP servers that render interactive UIs in Claude, ChatGPT, Cursor, or VS Code, or when integrating json-render with the Model Context Protocol.
---
# @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)
```typescript
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)
```tsx
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`:
```typescript
// 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`)
```json
{
"mcpServers": {
"my-app": {
"command": "npx",
"args": ["tsx", "server.ts", "--stdio"]
}
}
}
```
### Claude Desktop
```json
{
"mcpServers": {
"my-app": {
"command": "npx",
"args": ["tsx", "/path/to/server.ts", "--stdio"]
}
}
}
```
## Dependencies
```bash
# 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
```
Wersje
| Repozytorium | Wynik | Licencja |
|---|---|---|
| Ta strona · vercel-labs/json-render | 100 | Apache-2.0 |
| managedcode/dotnet-skills | 100 | MIT |
| clockworklabs/spacetimedb | 100 | AGPL-3.0 |
| Tyler-R-Kendrick/agent-skills | 100 | MIT |
| Tyler-R-Kendrick/agent-skills | 100 | MIT |
| overmind-core/overmind | 95 | AGPL-3.0 |
| terryspov/claudeclaw-plus | 95 | MIT |
| chrishuffman5/domain-expert | 87 | MIT |
Identyczna treść występuje jeszcze w 1 innych folderach na GitHubie. Tu pokazujemy jedną, najlepiej ocenioną kopię.
Migawka bazy z 28.10.2026 · wersja paczki 77da99af2b61 (skrót SHA-256 całej paczki)
Pobrania w ostatnich 30 dniach: 0 · ranking
Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.
Podobne skille
- 100render-mcp
Łączy i konfiguruje serwer Render MCP dla narzędzi AI do kodowania (Cursor, Claude Code, Codex): uwierzytelnianie, wybór workspace, katalog narzędzi i rozwiązywanie problemów. - 100mcp-builder
Projektuje i implementuje serwery MCP: narzędzia, zasoby, prompty, schematy i kontrakty błędów dla klientów agentowych, np. agentów Cursor i Claude. - 100render-mcp
Łączy i konfiguruje serwer Render MCP dla narzędzi AI do kodowania (Cursor, Claude Code, Codex): uwierzytelnianie, wybór workspace, katalog narzędzi i rozwiązywanie problemów. - 100chat-apps-ui-sdk
Pomaga budować, recenzować i projektować interaktywne UI w ChatGPT lub Claude: aplikacje OpenAI Apps SDK, MCP Apps i MCP-UI z serwerem Next.js/React, w tym bezpieczeństwo i zgłoszenie do katalogu. - 100mcp-authoring
Tworzy serwery MCP dla Claude Code w TypeScript z MCP SDK: definicje narzędzi, typy transportu, metadata.json dla dev-suite i wzorce wdrożenia zgodne ze specyfikacją. - 90claude-agent-sdk-tool-integration
Integruje narzędzia, uprawnienia i serwery MCP z agentami Claude przy użyciu Agent SDK.