• TypeScript 99.1%
  • CSS 0.4%
  • JavaScript 0.3%
  • HTML 0.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jerome 1ab5496e0a
Add tabbed sidebar with MCP server management and resizable interface
- Created tabbed interface with MCP, Conversations, and Inference tabs
- Set MCP tab as default tab
- Added quick connect button for example server with OAuth auth
- Created form to add custom MCP servers with auth type selection
- Implemented server management UI with connect/disconnect/remove actions
- Made sidebar resizable with drag handle (240px-600px range)
- Added comprehensive MCP server status display and tools listing
- Created dedicated Inference tab for OpenRouter connection management

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-12 15:28:20 +01:00
docs Update conversation system documentation for tool naming fix 2025-06-12 12:08:10 +01:00
src Add tabbed sidebar with MCP server management and resizable interface 2025-06-12 15:28:20 +01:00
.eslintrc.cjs Implement complete InferenceProvider system with OpenRouter integration 2025-06-10 17:37:11 +01:00
.gitignore Implement complete InferenceProvider system with OpenRouter integration 2025-06-10 17:37:11 +01:00
index.html Implement complete InferenceProvider system with OpenRouter integration 2025-06-10 17:37:11 +01:00
package-lock.json Implement complete InferenceProvider system with OpenRouter integration 2025-06-10 17:37:11 +01:00
package.json Implement complete InferenceProvider system with OpenRouter integration 2025-06-10 17:37:11 +01:00
postcss.config.js Implement complete InferenceProvider system with OpenRouter integration 2025-06-10 17:37:11 +01:00
README.md Implement complete InferenceProvider system with OpenRouter integration 2025-06-10 17:37:11 +01:00
tailwind.config.js Implement complete InferenceProvider system with OpenRouter integration 2025-06-10 17:37:11 +01:00
tsconfig.json Implement improved auto-reconnect logic and fix TypeScript errors 2025-06-12 14:02:00 +01:00
tsconfig.node.json Implement complete InferenceProvider system with OpenRouter integration 2025-06-10 17:37:11 +01:00
vite.config.ts Implement complete InferenceProvider system with OpenRouter integration 2025-06-10 17:37:11 +01:00

Example Remote MCP Client

A React TypeScript application for connecting to multiple MCP (Model Context Protocol) servers and providing a conversational interface with tool calling capabilities.

Features

  • 🔗 Multi-server MCP connections (HTTP/SSE transports)
  • 🤖 Inference provider abstraction (starting with OpenRouter)
  • 💬 Conversational interface with agent loops
  • 🛠️ Real-time tool call visualization
  • 🔍 MCP debugging and message tracing
  • 📱 Responsive UI with left sidebar and chat interface

Development

Prerequisites

  • Node.js (v18 or higher)
  • npm, yarn, or pnpm

Getting Started

  1. Install dependencies:

    npm install
    
  2. Start the development server:

    npm run dev
    
  3. Open http://localhost:3000 in your browser

Available Scripts

  • npm run dev - Start development server
  • npm run build - Build for production
  • npm run preview - Preview production build
  • npm run lint - Run ESLint
  • npm run test - Run tests
  • npm run test:ui - Run tests with UI

Architecture

The application is built with a modular architecture using React hooks and providers:

  • InferenceProvider - Abstraction for LLM inference (OpenRouter, etc.)
  • MCPProvider - Multi-server MCP connection management
  • AgentLoop - Tool calling and conversation flow
  • UI Components - Modular, reusable interface components

Technology Stack

  • React 18 with TypeScript
  • Vite for build tooling
  • Tailwind CSS for styling
  • MCP TypeScript SDK for protocol implementation
  • Vitest for testing

Project Status

This is an active development project serving as both:

  • A public example implementation of MCP client features
  • A prototyping testbed for MCP protocol changes