Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
167 changes: 167 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -326,6 +326,173 @@ To use these examples with MCP clients that support the stdio transport (such as
> [!NOTE]
> The `qr` server requires cloning the repository first. See [qr-server README](https://github.com/modelcontextprotocol/ext-apps/tree/main/examples/qr-server) for details.

#### Local Development

To test local modifications with MCP clients, first clone and install the repository:

```bash
git clone https://github.com/modelcontextprotocol/ext-apps.git
cd ext-apps
npm install
```

Then configure your MCP client to build and run the local server. Replace `~/code/ext-apps` with your actual clone path:

<details>
<summary>MCP client configuration for local development (all examples)</summary>

```json
{
"mcpServers": {
"basic-react": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/basic-server-react && npm run build >&2 && node dist/index.js --stdio"
]
},
"basic-vanillajs": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/basic-server-vanillajs && npm run build >&2 && node dist/index.js --stdio"
]
},
"basic-vue": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/basic-server-vue && npm run build >&2 && node dist/index.js --stdio"
]
},
"basic-svelte": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/basic-server-svelte && npm run build >&2 && node dist/index.js --stdio"
]
},
"basic-preact": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/basic-server-preact && npm run build >&2 && node dist/index.js --stdio"
]
},
"basic-solid": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/basic-server-solid && npm run build >&2 && node dist/index.js --stdio"
]
},
"budget-allocator": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/budget-allocator-server && npm run build >&2 && node dist/index.js --stdio"
]
},
"cohort-heatmap": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/cohort-heatmap-server && npm run build >&2 && node dist/index.js --stdio"
]
},
"customer-segmentation": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/customer-segmentation-server && npm run build >&2 && node dist/index.js --stdio"
]
},
"map": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/map-server && npm run build >&2 && node dist/index.js --stdio"
]
},
"pdf": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/pdf-server && npm run build >&2 && node dist/index.js --stdio"
]
},
"scenario-modeler": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/scenario-modeler-server && npm run build >&2 && node dist/index.js --stdio"
]
},
"shadertoy": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/shadertoy-server && npm run build >&2 && node dist/index.js --stdio"
]
},
"sheet-music": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/sheet-music-server && npm run build >&2 && node dist/index.js --stdio"
]
},
"system-monitor": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/system-monitor-server && npm run build >&2 && node dist/index.js --stdio"
]
},
"threejs": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/threejs-server && npm run build >&2 && node dist/index.js --stdio"
]
},
"transcript": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/transcript-server && npm run build >&2 && node dist/index.js --stdio"
]
},
"video-resource": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/video-resource-server && npm run build >&2 && node dist/index.js --stdio"
]
},
"wiki-explorer": {
"command": "bash",
"args": [
"-c",
"cd ~/code/ext-apps/examples/wiki-explorer-server && npm run build >&2 && node dist/index.js --stdio"
]
},
"qr": {
"command": "bash",
"args": ["-c", "uv run ~/code/ext-apps/examples/qr-server/server.py --stdio"]
},
"say": {
"command": "bash",
"args": ["-c", "uv run --index https://pypi.org/simple ~/code/ext-apps/examples/say-server/server.py --stdio"]
}
}
}
```

</details>

This configuration rebuilds each server on launch, ensuring your local changes are picked up.

## Resources

- [Quickstart Guide](https://modelcontextprotocol.github.io/ext-apps/api/documents/Quickstart.html)
Expand Down
15 changes: 15 additions & 0 deletions examples/basic-server-preact/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,21 @@ Add to your MCP client configuration (stdio transport):
}
```

### Local Development

To test local modifications, use this configuration (replace `~/code/ext-apps` with your clone path):

```json
{
"mcpServers": {
"basic-preact": {
"command": "bash",
"args": ["-c", "cd ~/code/ext-apps/examples/basic-server-preact && npm run build >&2 && node dist/index.js --stdio"]
}
}
}
```

## Overview

- Tool registration with a linked UI resource
Expand Down
15 changes: 15 additions & 0 deletions examples/basic-server-react/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,21 @@ Add to your MCP client configuration (stdio transport):
}
```

### Local Development

To test local modifications, use this configuration (replace `~/code/ext-apps` with your clone path):

```json
{
"mcpServers": {
"basic-react": {
"command": "bash",
"args": ["-c", "cd ~/code/ext-apps/examples/basic-server-react && npm run build >&2 && node dist/index.js --stdio"]
}
}
}
```

## Overview

- Tool registration with a linked UI resource
Expand Down
15 changes: 15 additions & 0 deletions examples/basic-server-solid/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,21 @@ Add to your MCP client configuration (stdio transport):
}
```

### Local Development

To test local modifications, use this configuration (replace `~/code/ext-apps` with your clone path):

```json
{
"mcpServers": {
"basic-solid": {
"command": "bash",
"args": ["-c", "cd ~/code/ext-apps/examples/basic-server-solid && npm run build >&2 && node dist/index.js --stdio"]
}
}
}
```

## Overview

- Tool registration with a linked UI resource
Expand Down
15 changes: 15 additions & 0 deletions examples/basic-server-svelte/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,21 @@ Add to your MCP client configuration (stdio transport):
}
```

### Local Development

To test local modifications, use this configuration (replace `~/code/ext-apps` with your clone path):

```json
{
"mcpServers": {
"basic-svelte": {
"command": "bash",
"args": ["-c", "cd ~/code/ext-apps/examples/basic-server-svelte && npm run build >&2 && node dist/index.js --stdio"]
}
}
}
```

## Overview

- Tool registration with a linked UI resource
Expand Down
15 changes: 15 additions & 0 deletions examples/basic-server-vanillajs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,21 @@ Add to your MCP client configuration (stdio transport):
}
```

### Local Development

To test local modifications, use this configuration (replace `~/code/ext-apps` with your clone path):

```json
{
"mcpServers": {
"basic-vanillajs": {
"command": "bash",
"args": ["-c", "cd ~/code/ext-apps/examples/basic-server-vanillajs && npm run build >&2 && node dist/index.js --stdio"]
}
}
}
```

## Overview

- Tool registration with a linked UI resource
Expand Down
15 changes: 15 additions & 0 deletions examples/basic-server-vue/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,21 @@ Add to your MCP client configuration (stdio transport):
}
```

### Local Development

To test local modifications, use this configuration (replace `~/code/ext-apps` with your clone path):

```json
{
"mcpServers": {
"basic-vue": {
"command": "bash",
"args": ["-c", "cd ~/code/ext-apps/examples/basic-server-vue && npm run build >&2 && node dist/index.js --stdio"]
}
}
}
```

## Overview

- Tool registration with a linked UI resource
Expand Down
15 changes: 15 additions & 0 deletions examples/budget-allocator-server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,21 @@ Add to your MCP client configuration (stdio transport):
}
```

### Local Development

To test local modifications, use this configuration (replace `~/code/ext-apps` with your clone path):

```json
{
"mcpServers": {
"budget-allocator": {
"command": "bash",
"args": ["-c", "cd ~/code/ext-apps/examples/budget-allocator-server && npm run build >&2 && node dist/index.js --stdio"]
}
}
}
```

## Features

- **Interactive Sliders**: Adjust budget allocation across 5 categories (Marketing, Engineering, Operations, Sales, R&D)
Expand Down
15 changes: 15 additions & 0 deletions examples/cohort-heatmap-server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,21 @@ Add to your MCP client configuration (stdio transport):
}
```

### Local Development

To test local modifications, use this configuration (replace `~/code/ext-apps` with your clone path):

```json
{
"mcpServers": {
"cohort-heatmap": {
"command": "bash",
"args": ["-c", "cd ~/code/ext-apps/examples/cohort-heatmap-server && npm run build >&2 && node dist/index.js --stdio"]
}
}
}
```

## Features

- **Cohort Retention Heatmap**: Color-coded grid showing retention percentages across cohorts and time periods
Expand Down
15 changes: 15 additions & 0 deletions examples/customer-segmentation-server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,21 @@ Add to your MCP client configuration (stdio transport):
}
```

### Local Development

To test local modifications, use this configuration (replace `~/code/ext-apps` with your clone path):

```json
{
"mcpServers": {
"customer-segmentation": {
"command": "bash",
"args": ["-c", "cd ~/code/ext-apps/examples/customer-segmentation-server && npm run build >&2 && node dist/index.js --stdio"]
}
}
}
```

## Features

- **Interactive Scatter Plot**: Bubble chart visualization using Chart.js with configurable X/Y axes
Expand Down
15 changes: 15 additions & 0 deletions examples/map-server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,21 @@ Add to your MCP client configuration (stdio transport):
}
```

### Local Development

To test local modifications, use this configuration (replace `~/code/ext-apps` with your clone path):

```json
{
"mcpServers": {
"map": {
"command": "bash",
"args": ["-c", "cd ~/code/ext-apps/examples/map-server && npm run build >&2 && node dist/index.js --stdio"]
}
}
}
```

## Features

- **3D Globe Rendering**: Interactive CesiumJS globe with rotation, zoom, and 3D perspective
Expand Down
Loading
Loading