AskMeMCP - Human-in-the-Loop MCP Server

AskMeMCP is a Model Context Protocol (MCP) server that enables AI assistants to request human input through a web interface. It implements multiple interactive tools (ask-one-question, ask-multiple-choice, challenge-hypothesis, choose-next), allowing MCP clients like Claude Code to pause execution and wait for human responses.

Features

  • stdio Transport: Direct integration with Claude Code and other MCP clients
  • Self-Contained Server: Serves Angular UI statically - no separate UI server needed
  • Dynamic Port Allocation: Automatically finds available port if default is in use
  • Automatic Browser Opening: Opens UI automatically when requests arrive
  • Real-time Updates: Server-Sent Events for live communication
  • Multiple Tool Types: Single questions, multiple choice, hypothesis challenges, and decision workflows

Installation

Option 1: Using npx (No Installation Required)

You can run Ask-Me MCP directly using npx without installing it globally:

npx ask-me-mcp

Note: The first time you run this, npx will ask for confirmation to install the package temporarily. To skip this confirmation, use:

npx --yes ask-me-mcp

Option 2: Global Installation

npm install -g ask-me-mcp
ask-me-mcp

Configuration for Different Clients

Claude Desktop App

Add to your Claude configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "ask-me": {
      "command": "npx",
      "args": ["--yes", "ask-me-mcp"]
    }
  }
}

Claude Code

Using the CLI:

claude mcp add askme -- npx -y ask-me-mcp

Or manually add to your Claude Code configuration:

  • macOS: ~/Library/Application Support/Claude/claude_code_config.json
  • Windows: %APPDATA%\Claude\claude_code_config.json
  • Linux: ~/.config/Claude/claude_code_config.json
{
  "mcpServers": {
    "ask-me": {
      "command": "npx",
      "args": ["--yes", "ask-me-mcp"]
    }
  }
}

Cursor

Add to your Cursor settings (in .cursor/mcp_settings.json in your project root):

{
  "mcpServers": {
    "ask-me": {
      "command": "npx",
      "args": ["--yes", "ask-me-mcp"]
    }
  }
}

VS Code with Continue or Similar Extensions

For VS Code extensions that support MCP, add to your extension's configuration:

{
  "mcpServers": {
    "ask-me": {
      "command": "npx",
      "args": ["--yes", "ask-me-mcp"]
    }
  }
}

Port Configuration

The server has two port behaviors:

  1. Auto-discovery (default): Finds available port starting from 3000

    npx --yes ask-me-mcp
    
  2. Fixed port: Uses exact port specified with --port (fails if port is in use)

    npx --yes ask-me-mcp --port 8080
    

For Claude Code configuration with fixed port:

{
  "mcpServers": {
    "ask-me": {
      "command": "npx",
      "args": ["--yes", "ask-me-mcp", "--port", "8080"]
    }
  }
}

Option 3: Build from Source

# Clone the repository
git clone https://github.com/yourusername/AskMeMCP.git
cd AskMeMCP

# Install dependencies
npm install

# Build all projects
npm run build

# Configure Claude Code with full path

Add to your Claude Code configuration:

{
  "mcpServers": {
    "ask-me": {
      "command": "node",
      "args": ["/full/path/to/AskMeMCP/dist/askme-server/main.js"]
    }
  }
}

Usage

Once configured, you can use the available tools in Claude Code:

ask-one-question Tool

Please use the ask-one-question tool to ask me what my favorite color is

ask-multiple-choice Tool

Please use the ask-multiple-choice tool with these questions:
{
  "questions": [
    {
      "text": "Which deployment environments should we target?",
      "options": ["Development", "Staging", "Production"]
    },
    {
      "text": "Which features should be included in this release?",
      "options": ["User Authentication", "Dashboard Updates", "API Improvements", "Mobile Support"]
    }
  ]
}

All requests will appear in the web UI where you can provide responses. For multiple choice questions, you can select multiple options and add comments to each choice.

Architecture

  • askme-server: stdio MCP server with embedded HTTP bridge for browser communication
  • askme-ui: Angular 20+ frontend with reactive UI using signals
  • askme-shared: Shared TypeScript types for frontend-backend communication

Development

# Run the UI in development mode
npx nx serve askme-ui

# Run the server in development mode
npx nx serve askme-server

# Run tests
npx nx test askme-ui
npx nx test askme-server

# Lint code
npx nx lint askme-ui
npx nx lint askme-server

Troubleshooting

Connection Issues with Claude Code

If you see "Connection failed" errors:

  1. Enable Debug Mode: Run with debug logging to see what's happening:

    ASK_ME_MCP_DEBUG=1 claude --debug
    
  2. Check the Server: Test if the server runs correctly:

    npx --yes ask-me-mcp --help
    
  3. Port Conflicts: If port 3000 is in use, specify a different port:

    claude mcp add ask-me npx --yes ask-me-mcp --port 8080
    
  4. Manual Test: Run the server directly to see any errors:

    npx --yes ask-me-mcp
    

Common Issues

  • First Time Confirmation: The first run of npx ask-me-mcp may ask for confirmation. Use npx --yes to skip this.
  • Port Already in Use: The server automatically finds an available port, but you can specify one with --port
  • Browser Not Opening: If the browser doesn't open automatically, manually navigate to the port shown in debug logs

License

MIT

Related in Communication - Secure MCP Servers

ServerSummaryActions
AgentRPCAgentRPC is a universal RPC layer that allows AI agents to call functions across network boundaries...View
Ghost MCPThis repository contains a Model Context Protocol (MCP) server implementation for the Postiz platfor...View
Human-in-the-Loop Slack MCP ServerA Model Context Protocol (MCP) server that enables AI assistants to request information from humans...View
Slack NotifyMCP server for sending notifications to Slack using OAuth bot tokens.View
Agent Communication MCP Serverエージェント間のルームベースコミュニケーションを実現するModel Context Protocol (MCP) サーバーView
SmartleadView