Skip to main content
Glama
egargale

lb-mcp-ui-proxy

by egargale

Longbridge MCP-UI Proxy

An MCP (Model Context Protocol) proxy server that wraps the Longbroker OpenAPI MCP server and transforms its plain JSON responses into rich, interactive HTML dashboards — stock cards, candlestick charts, portfolio views, order forms, option chains, and more.

Built on the MCP-UI specification so any MCP host that renders ui:// resources (Goose, Claude Desktop, etc.) gets visual UIs instead of raw JSON.

Quick start

# 1. Install dependencies
npm install

# 2. Set your Longbridge token
export LONGBRIDGE_TOKEN="your_token_here"
# Generate a token at https://open.longbridge.com/connect

# 3. Run in dev mode (auto-restart on changes)
npm run dev

# 4. Or build and run production
npm run build
npm start

The server starts on http://localhost:3456 by default.

Related MCP server: sfc-data-mcp

Docker

docker build -t lb-mcp-ui-proxy .
docker run -p 3456:3456 -e LONGBRIDGE_TOKEN=your_token lb-mcp-ui-proxy

Configuration

All config is via environment variables (see .env.example):

Variable

Default

Description

PORT

3456

Server listen port

LONGBRIDGE_MCP_URL

https://openapi.longbridge.com/mcp

Longbridge MCP backend URL

LONGBRIDGE_TOKEN

(required)

Bearer token for Longbridge API

LOG_LEVEL

info

Logging verbosity: debug, info, warn, error

How it works

┌──────────┐    MCP (Streamable HTTP)    ┌──────────────────┐    MCP (Streamable HTTP)    ┌──────────────────┐
│  MCP Host │ ◄───────────────────────► │  lb-mcp-ui-proxy  │ ◄───────────────────────► │  Longbridge MCP  │
│ (Goose,   │   ui:// HTML resources     │  (this server)    │   JSON tool calls          │  (openapi.       │
│  Claude)  │                            │                   │                            │   longbridge.com) │
└──────────┘                            └──────────────────┘                            └──────────────────┘
  1. An MCP host connects to this proxy at POST /mcp using the Streamable HTTP transport.

  2. The proxy exposes 11 UI-enhanced tools (prefixed lb_).

  3. When the host calls a tool, the proxy:

    • Opens a session to the real Longbridge MCP server.

    • Forwards the tool call (e.g. get_quote → Longbridge).

    • Parses the JSON response.

    • Renders an interactive HTML dashboard via @mcp-ui/server's createUIResource.

    • Returns the HTML as a ui://longbridge/... resource that the host renders.

Tools

Proxy tool

Longbridge tool

UI

lb_quote

get_quote

Stock card with price, change, OHLCV, amplitude bar

lb_chart

get_candlesticks

Canvas-rendered candlestick chart with volume bars

lb_search

search_security

Search results table with symbol, name, exchange

lb_portfolio

get_account_summary + get_positions

Portfolio dashboard with P&L, positions table

lb_orders

get_orders

Orders table with status badges

lb_place_order

place_order

Interactive order form or direct order with confirmation

lb_option_chain

get_option_chain

Color-coded calls/puts table with Greeks

lb_alerts

get_alerts

Alerts list with toggle switches

lb_market_overview

get_market_status

Market indices and status (text)

lb_dca_plans

get_dca_plans

DCA plans dashboard with progress cards

Tool parameters

All tools accept their parameters as Zod-validated fields. Examples:

# Get a quote for Tesla
lb_quote(symbol: "TSLA.US")

# Candlestick chart
lb_chart(symbol: "TSLA.US", period: "1d", count: 100)

# Place a limit order
lb_place_order(symbol: "TSLA.US", side: "buy", type: "limit", price: 250.00, quantity: 10)

# Show the interactive order form
lb_place_order(_showForm: true)

API endpoints

Endpoint

Method

Description

/mcp

POST

MCP Streamable HTTP endpoint (session-based)

/health

GET

Health check — returns status, version, config check

Project structure

src/
├── index.ts               # Express server, MCP endpoint, session management
├── config.ts              # Environment variable config loader
├── longbridge-client.ts   # MCP client wrapper for Longbridge backend
├── tools/
│   └── register.ts        # Tool definitions — wires params → Longbridge → UI
└── ui/
    ├── styles.ts           # Shared CSS, HTML page wrapper, formatting helpers
    ├── quotes.ts           # Quote card + search results
    ├── chart.ts            # Candlestick chart (canvas)
    ├── portfolio.ts        # Portfolio dashboard + positions table
    ├── orders.ts           # Orders table + order form + confirmation
    ├── options.ts          # Option chain + price alerts
    └── dca.ts              # DCA plans dashboard

Development

# Dev server with hot reload
npm run dev

# Type-check only
npx tsc --noEmit

# Build for production
npm run build

Tech stack

  • Runtime: Node.js 22, TypeScript (ESM)

  • MCP SDK: @modelcontextprotocol/sdk (Streamable HTTP transport, both client and server)

  • UI rendering: @mcp-ui/server (createUIResource with raw HTML)

  • Web server: Express + CORS

  • Validation: Zod (tool parameter schemas)

  • Container: Docker (multi-stage build, Alpine)

License

Private — not yet licensed for distribution.

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Professional financial data MCP server integrating Tushare API, providing real-time financial data and technical indicators analysis for stocks, indices, funds, bonds, and cryptocurrencies across multiple markets (A-share, US, HK, crypto).
    18
    104 npm
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    MCP server that wraps SFC financial data API into 32 tools for comprehensive A-share market data, including real-time quotes, rankings, limit-up statistics, news, themes, financials, charts, research reports, and watchlists.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    A production-grade MCP server that provides tools to fetch historical stock data, company information, and technical indicators (SMA, EMA, RSI, MACD, Bollinger Bands) via yfinance, and includes a Flask web dashboard for visual analysis.
    -
  • A
    license
    B
    quality
    B
    maintenance
    MCP server exposing 43 financial data tools for A-share, HK, US stocks, crypto, and market news via open-stock-data.
    43
    14
    MIT