Skip to main content

HumanBridge MCP Server by Jatin Iyer — AI-to-human GUI dialogs with dynamic sizing and scrollable content

Project description

HumanBridge MCP Server

by Jatin Iyer

License: MIT PyPI version

A Model Context Protocol (MCP) Server that enables AI assistants to interact with humans through polished, modern GUI dialogs. HumanBridge bridges the gap between automated AI processes and human decision-making — providing text input, multiple choice, confirmations, and info notifications, all in dynamically-sized, scrollable windows that never overflow your screen.


Features

  • Text Input — get text, numbers, or other data with validation
  • Multiple Choice — single or multi-select option lists
  • Multi-line Input — collect code, descriptions, or long-form content
  • Confirmation Dialogs — yes/no decisions before proceeding
  • Information Messages — display notifications and status updates
  • Health Check — monitor server and GUI availability
  • Dynamic sizing — windows grow to fit content, cap at 80% screen height, then scroll
  • Scrollable content — title/prompt area scrolls automatically when text is long
  • Cross-platform — Windows 11-style, macOS native, Linux compatible

Installation

Quick Install with uvx (Recommended)

uvx humanbridge-mcp

pip

pip install humanbridge-mcp
humanbridge-mcp

Configuration

VS Code GitHub Copilot

Add to your VS Code settings.json or .vscode/mcp.json:

{
  "mcp": {
    "servers": {
      "humanbridge": {
        "command": "uvx",
        "args": ["humanbridge-mcp"]
      }
    }
  }
}

Claude Desktop

Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "humanbridge": {
      "command": "uvx",
      "args": ["humanbridge-mcp"]
    }
  }
}

Restart after updating the config.


Available Tools

get_user_input

Single-line text, integer, or float input.

Parameter Type Description
title str Dialog window title
prompt str Question shown to user
default_value str Pre-filled value (optional)
input_type str "text", "integer", or "float"

get_user_choice

Pick one or many options from a list.

Parameter Type Description
title str Dialog window title
prompt str Question shown to user
choices list[str] Options to present
allow_multiple bool Allow multi-select (default: false)

get_multiline_input

Large text area for code, descriptions, or long content.

Parameter Type Description
title str Dialog window title
prompt str Question shown to user
default_value str Pre-filled text (optional)

show_confirmation_dialog

Yes/No decision dialog.

Parameter Type Description
title str Dialog window title
message str Confirmation message

show_info_message

Informational notification — user clicks OK to dismiss.

Parameter Type Description
title str Dialog window title
message str Information message

health_check

Returns server status, platform details, and GUI availability.


Response Format

All tools return structured JSON:

{
  "success": true,
  "user_input": "User's response",
  "cancelled": false,
  "platform": "windows"
}

Common fields: success, cancelled, platform, error
Tool-specific: user_input, input_type, selected_choice, selected_choices, confirmed, response, acknowledged, character_count, line_count


Dialog Behaviour

  • Short content: window sizes exactly to content — compact and clean
  • Long content: window grows up to 80% of screen height, then the title/prompt area becomes scrollable (mousewheel supported)
  • Input widgets (entry field, text area, choice list) are always fully visible — they never scroll away
  • All dialogs are resizable by the user

Troubleshooting

Dialogs not appearing

  • Verify you're in a desktop environment (not headless)
  • Check tkinter: python -c "import tkinter"
  • Run health_check tool to diagnose

macOS permission error

  • Grant Accessibility permissions: System Preferences → Security & Privacy → Accessibility

Dialog timeout

  • Default timeout is 5 minutes. Dialogs return cancelled: true after timeout.

Platform Support

Platform Status Notes
Windows 10/11 ✅ Full Modern Windows 11-style UI, Segoe UI font
macOS ✅ Full SF Pro Display font, Accessibility permission needed
Linux ✅ Full Ubuntu/Debian compatible, system fonts

License

MIT License — see LICENSE


HumanBridge MCP Server by Jatin Iyer

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

humanbridge_mcp-1.0.0.tar.gz (10.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

humanbridge_mcp-1.0.0-py3-none-any.whl (16.9 kB view details)

Uploaded Python 3

File details

Details for the file humanbridge_mcp-1.0.0.tar.gz.

File metadata

  • Download URL: humanbridge_mcp-1.0.0.tar.gz
  • Upload date:
  • Size: 10.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for humanbridge_mcp-1.0.0.tar.gz
Algorithm Hash digest
SHA256 886489cbe3643f80a9bab68c7297c9f7765e3d681cd604556a9bc004035e8b89
MD5 8902afbaab0aa5fbae5a37f232f9f734
BLAKE2b-256 12a7830b176497b7681b5fb034607f2558ca59157698c5b52022fa10d7d65125

See more details on using hashes here.

File details

Details for the file humanbridge_mcp-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for humanbridge_mcp-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 651b0c3a25c10f37d6c63028041286b88d475cb3ec6ead5d56c9524fe3bfc053
MD5 2b49f3b0953513c1443eebdd870f1e80
BLAKE2b-256 c3ec82b51320461bb69258e4df5467dc150274b9f31e79ab4f8cd5c23e1e94d2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page