MCP Playground

A demonstration MCP server implementation in Go featuring real-time bidirectional file communication.

MCP Playground

A demonstration Model Context Protocol (MCP) server implementation in Go featuring real-time bidirectional file communication.

๐ŸŽฏ Features

  • Real-Time Communication: Bidirectional file-based communication with live notifications
  • MCP Resources: Live-updating resources with automatic change notifications
  • File Monitoring: External file changes detected and reported in real-time
  • Rich Tool Set: Complete set of tools for file interaction and monitoring

๐Ÿš€ Quick Start

# Build the server
task build

# Start monitoring and interact with the file
task run

๐Ÿ”ง MCP Tools

  • start_file_monitoring - Start real-time file monitoring
  • write_to_file - Write messages to communication file
  • read_communication_file - Read current file contents
  • get_recent_changes - Get list of recent external changes
  • get_monitoring_status - Check monitoring status

๐Ÿ“ก MCP Resources

  • file://communication - Live communication file with real-time updates

๐Ÿงช Testing

# Test real-time notifications
./test_realtime_resources.sh

# Test basic file monitoring  
./test_file_monitoring.sh

๐Ÿ”Œ Claude Desktop Integration

Copy configuration to your Claude Desktop config:

{
  "mcpServers": {
    "mcp-playground": {
      "command": "/path/to/mcp-playground/bin/mcp-playground",
      "args": []
    }
  }
}

๐Ÿ“– How It Works

  1. Start monitoring with start_file_monitoring tool
  2. External changes to communication.txt are detected automatically
  3. Real-time notifications sent via MCP notifications/resources/updated
  4. Claude Desktop receives live updates and can react to external changes

Perfect for experimenting with MCP real-time capabilities! ๐ŸŽช

Related Servers