Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Synapse Hello

FreeNot checked

Hello World Synapse App — reference implementation for MCP apps with UIs

GitHubEmbed

About

Hello World Synapse App — reference implementation for MCP apps with UIs

README

mpak NimbleBrain Discord License: MIT

Minimal reference implementation for building MCP apps with UIs. Python server (FastMCP) + React UI (Synapse SDK).

View on mpak registry | Built by NimbleBrain

Quick Start

# Install server deps
uv sync

# Install UI deps + build
cd ui && npm install && npm run build && cd ..

# Preview (standalone — no NimbleBrain needed)
npx @nimblebrain/synapse preview \
  --server "uv run uvicorn mcp_hello.server:app --port 8001" \
  --ui ./ui

# Open http://localhost:5180

Development

UI hot-reload (standalone)

npx @nimblebrain/synapse preview \
  --server "uv run uvicorn mcp_hello.server:app --port 8001" \
  --ui ./ui

This starts three things:

  • :8001 — MCP server (uvicorn, your Python tools)
  • :5173 — Vite dev server (React UI with HMR)
  • :5180 — Preview harness (minimal bridge host)

Edit ui/src/App.tsx — changes appear instantly at localhost:5180.

UI hot-reload (NimbleBrain)

cd products/nimblebrain/code
bun run dev --app /path/to/mcp-servers/hello/ui

Full platform with Synapse runtime injection, data sync, and all host features.

Tools only (no UI)

# stdio mode (Claude Desktop, any MCP client)
uv run python -m mcp_hello.server

# HTTP mode (direct API testing)
uv run uvicorn mcp_hello.server:app --port 8001

Project Structure

hello/
├── manifest.json              MCPB bundle manifest
├── pyproject.toml             Python project config
├── src/mcp_hello/
│   ├── server.py              MCP server: tools + UI resource
│   └── ui.py                  Loads built HTML or inline fallback
└── ui/                        Vite + React project
    ├── package.json
    ├── vite.config.ts
    ├── index.html             Entry point
    └── src/
        ├── main.tsx           React mount
        └── App.tsx            Components with Synapse hooks

How It Works

  1. server.py defines MCP tools (get_greeting, get_greet_count) and a UI resource (ui://hello/main)
  2. ui.py loads ui/dist/index.html (the built single-file React bundle) and serves it as the resource
  3. The UI uses Synapse hooks (useCallTool, useDataSync, useTheme) for tool calls and host integration
  4. Vite + vite-plugin-singlefile bundles everything into one HTML file — no external assets

Cross-Host Compatibility

Host Tools UI Synapse Features
NimbleBrain Full Full (React + Synapse) Data sync, theme, keyboard forwarding
Synapse Preview Full Full (React + Synapse) Tool calls, theme toggle
Claude Desktop Full Not yet N/A
Any MCP client Full Depends on host Graceful degradation

from github.com/NimbleBrainInc/synapse-hello

Installing Synapse Hello

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/NimbleBrainInc/synapse-hello

FAQ

Is Synapse Hello MCP free?

Yes, Synapse Hello MCP is free — one-click install via Unyly at no cost.

Does Synapse Hello need an API key?

No, Synapse Hello runs without API keys or environment variables.

Is Synapse Hello hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Synapse Hello in Claude Desktop, Claude Code or Cursor?

Open Synapse Hello on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Synapse Hello with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs