About MCP Client
MCP Client is an interactive AI assistant with a dual-display system: a command-line interface for input and an always-on-top window for real-time output monitoring. It supports MCP server integration for enhanced capabilities.
Key features
- 01Command-line interface
- 02Always-on-top display window
- 03Real-time output monitoring
- 04Pause execution
- 05Global keyboard shortcuts
- 06MCP server integration
Use cases
- 01Control computer with AI assistance
- 02Monitor and pause AI actions in real-time
- 03Manage long-running tasks with live input
MCP support
The client connects to MCP servers to enhance AI capabilities, allowing the AI to interact with external systems through MCP tools.
Details
From the project READMEMCP Client
An interactive AI assistant interface with a dual-display system: a terminal-based CLI for commands and an always-on-top window for real-time model output monitoring.
Features
- Terminal Interface: Interact with the AI assistant through a command-line interface
- Always-on-top Display Window: Monitor model outputs in real-time
- Translucent window with modern design
- Stays on top of other applications
- Follows you across virtual desktops
- Real-time Output Monitoring: See what the model is generating as it happens
- Pause Functionality: Pause model execution if you see undesired actions being generated
- User Input Requests: The display window can request user input while long-running tasks continue in the CLI
- Global Shortcuts:
Ctrl/Cmd + Shift + Tto toggle the follow desktop behaviorCtrl/Cmd + Shift + Pto pause/resume model execution
- MCP Integration: Connect to Model Context Protocol (MCP) servers for enhanced AI capabilities
Use Cases (all of them TODO...)
- Computer Control: Use the MCP client to control your computer with AI assistance
- Browser Automation: Navigate and interact with web browsers while monitoring AI actions
- Long-running Tasks: Monitor progress and provide input while background tasks run
- Safety Monitoring: Observe and control AI actions in real-time
Getting Started
Prerequisites
- Node.js (v12 or higher)
- npm
- Python 3.7+
- MCP library (for MCP server integration)
Installation
- Clone this repository
- Install dependencies:
npm install pip install -r backend/requirements.txt pip install mcp - Start the application:
python backend/cli.py
Usage
The application runs in two parts:
- Terminal Interface: Where you input commands and see primary responses
- Floating Window: Where you can monitor model outputs in real-time
Terminal Commands
The CLI supports various commands for interacting with the AI assistant. Type help in the terminal for a list of available commands.
Display Window Controls
- Pause Button: Click to pause model execution if you see undesired actions
- Toggle Follow Desktop: Enable/disable the window following you across virtual desktops
- Drag: Click and drag anywhere on the window to reposition it
MCP Server Integration
The application can connect to MCP servers for enhanced AI capabilities:
-
Configure your MCP server in
backend/server.config:{ "llm_type": "mcp", "server_path": "/path/to/your/mcp_server.py", "server_name": "your-mcp-server", "server_version": "0.1.0" } -
Install the MCP library:
pip install mcp -
Start the application with MCP integration:
python backend/cli.py
The application will automatically connect to the specified MCP server and use it for generating responses. If the MCP server is not available, it will fall back to the mock LLM implementation.
Architecture
The application consists of:
- Electron frontend for the always-on-top display window
- Python backend with Flask API for handling AI interactions
- Terminal-based CLI for user input and command processing
License
ISC
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.