MCP Feedback Server
by andrei-cb
README.md
# MCP Feedback Server
An interactive feedback system for MCP (Model Context Protocol) that allows agents to request user feedback during task execution.
## Overview
This system consists of:
- **feedback_server.py**: The main MCP server that runs in your terminal and handles feedback requests
- **feedback_client.py**: A test client script demonstrating how agents connect to request feedback
## Installation
1. Install the required dependencies:
```bash
pip install mcp
```
## Usage
### Step 1: Start the Feedback Server
Run the server in a terminal:
```bash
python feedback_server.py
```
The server will:
- Start on `localhost:9876`
- Display a message when ready
- Show agent requests and allow you to provide feedback interactively
### Step 2: Configure Your MCP Agent
Add the server to your MCP configuration file (e.g., `mcp_config.json`):
```json
{
"mcpServers": {
"feedback-server": {
"command": "python",
"args": [
"/<path_to_script>/feedback_client.py"
]
}
}
}
```
### Step 3: Agent Prompt
Use this prompt with your agent:
```
Whenever you're about to complete a user request, call the MCP interactive_feedback instead of simply ending the process. Keep calling MCP until the user's feedback is empty, then end the request.
```
## How It Works
1. **Agent calls the tool**: When an agent needs feedback, it calls the `interactive_feedback` tool with:
- `work_summary`: Summary of work completed so far
- `question` (optional): Specific question for the user
2. **Server displays request**: The feedback server shows:
- Timestamp of the request
- Work summary from the agent
- Any specific questions
3. **User provides feedback**: In the terminal running the server:
- Type feedback and press Enter to send it back to the agent
- Press Enter with empty input to approve and let the agent continue
4. **Agent receives response**: The agent gets either:
- User feedback to act upon
- Approval to continue (when feedback is empty)
## Example Interaction
### In the server terminal:
```
š Feedback Server started on localhost:9876
Waiting for agent connections...
==============================================================
š AGENT REQUEST - 2025-01-15 14:30:45
==============================================================
Work Summary:
I have completed the following tasks:
1. Created the user authentication system
2. Set up the database models
3. Implemented the API endpoints
Agent's Question:
Should I proceed with adding the frontend components?
==============================================================
š Your Feedback (press Enter with empty input to approve and continue):
> Yes, but make sure to use React with TypeScript
ā
Feedback sent to agent: 'Yes, but make sure to use React with TypeScript'
```
## Features
- ā
Real-time interactive feedback
- ā
Socket-based communication (no polling)
- ā
Clear visual feedback in terminal
- ā
Support for both general feedback and specific questions
- ā
Simple approval mechanism (empty input = continue)
- ā
Error handling and connection management
## Troubleshooting
- **Connection refused**: Make sure the feedback server is running before the agent tries to connect
- **Port already in use**: The server uses port 9876 by default. Make sure no other process is using this port
- **MCP not found**: Install the MCP package using `pip install mcp`
## Architecture
The system uses a dual-server architecture:
1. **MCP Server**: Handles the MCP protocol and tool definitions
2. **Socket Server**: Manages the interactive feedback loop in the terminal
This design allows for real-time interaction while maintaining compatibility with the MCP protocol.
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues