* docs: standardize UI terminology to use "view" consistently Replaces "widget" and "Guest UI" terminology with "view" across the codebase as decided in the community survey. This change updates: - Specification document - SDK source code and JSDoc comments - Example servers and documentation - Plugin documentation and skills Closes #71 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
45 lines
1,002 B
Markdown
45 lines
1,002 B
Markdown
# Video Resource Server
|
|
|
|

|
|
|
|
Demonstrates serving binary content (video) via MCP resources using the base64 blob pattern.
|
|
|
|
## MCP Client Configuration
|
|
|
|
Add to your MCP client configuration (stdio transport):
|
|
|
|
```json
|
|
{
|
|
"mcpServers": {
|
|
"video-resource": {
|
|
"command": "npx",
|
|
"args": [
|
|
"-y",
|
|
"--silent",
|
|
"--registry=https://registry.npmjs.org/",
|
|
"@modelcontextprotocol/server-video-resource",
|
|
"--stdio"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
## Quick Start
|
|
|
|
```bash
|
|
npm install
|
|
npm run dev
|
|
```
|
|
|
|
## Tools
|
|
|
|
- **play_video** - Plays a video loaded via MCP resource
|
|
- `videoId`: Choose from various sizes (`bunny-1mb`, `bunny-5mb`, `bunny-10mb`, etc.)
|
|
|
|
## How It Works
|
|
|
|
1. The `play_video` tool returns a `videoUri` pointing to an MCP resource
|
|
2. The view fetches the resource via `resources/read`
|
|
3. The server fetches the video from CDN and returns it as a base64 blob
|
|
4. The view decodes the blob and plays it in a `<video>` element
|