mcp-talk
MCP Talk Demo Files
Documentation
MCP Talk Demo Files
This folder contains practical examples for the "Beyond the Basics: Unlocking the Power of MCP" presentation at the 10x Developers Meetup.
๐ Quick Setup (Recommended)
Option 1: Automated Setup (Recommended)
macOS/Linux:
cd /Users/davidhague/source/mcp-talk
chmod +x setup.sh
./setup.shWindows:
cd \Users\davidhague\source\mcp-talk
setup.batOption 2: Manual Setup
cd /Users/davidhague/source/mcp-talk
# Create and activate virtual environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install --upgrade pip
pip install -r requirements.txt
# Test setup
python test_setup.py๐ Demo Files
1. `01_python_client_demo.py`
Simple MCP Python Client
- Demonstrates how to connect to any MCP server from Python
- Shows tool discovery, resource access, and general MCP interactions
- Perfect for showing the developer experience
To run:
source venv/bin/activate # Activate venv first!
# Terminal 1 - Start MCP server
npx -y @modelcontextprotocol/server-filesystem /tmp
# Terminal 2 - Run client
python 01_python_client_demo.py2. `02_system_monitor_server.py`
Complete MCP Server from Scratch
- System monitoring server with all three MCP capabilities
- Tools: CPU usage, memory info, disk usage, processes, network
- Resources: System overview, platform information
- Shows how to build a full MCP server
To run:
source venv/bin/activate
python 02_system_monitor_server.pyTo connect with Claude Desktop:
Add to your Claude Desktop config (`~/Library/Application Support/Claude/claude_desktop_config.json`):
{
"mcpServers": {
"system-monitor": {
"command": "python",
"args": ["/Users/davidhague/source/mcp-talk/02_system_monitor_server.py"],
"env": {
"PATH": "/Users/davidhague/source/mcp-talk/venv/bin:/usr/bin:/bin"
}
}
}
}3. `03_sse_server_complete.py`
MCP with Server-Sent Events (SSE) - Pseudocode Reference
- LEGACY TRANSPORT - Educational purposes only
- Shows SSE endpoint structure (GET /sse + POST /messages)
- Demonstrates why Streamable HTTP is preferred
Note: This is pseudocode for understanding SSE concepts.
For working implementations, use `04_https_streamable.py`
4. `04_https_streamable.py`
Next-Generation Streamable HTTP MCP
- Demonstrates the latest MCP transport protocol
- Unified endpoint architecture
- Production-ready streaming implementation
To run:
source venv/bin/activate
python 04_https_streamable.py5. `05_http_client_demo.py`
HTTP MCP Client Demo
- Demonstrates connecting to HTTP MCP servers instead of stdio
- Shows the same LLM integration but over HTTP transport
- Perfect companion to show stdio vs HTTP client differences
To run:
source venv/bin/activate
# Terminal 1 - Start HTTP MCP server
python 04_https_streamable.py
# Terminal 2 - Run HTTP client
python 05_http_client_demo.py๐ฏ Presentation Flow
Demo 1: Python Client (stdio) (5 minutes)
- "Here's how easy it is to connect to any MCP server from Python"
- Run the stdio client against filesystem server
- Show tool discovery and execution with LLM integration
Demo 2: Build Custom Server (10 minutes)
- "Let's build an MCP server from scratch"
- Walk through the system monitor server code
- Show tools and resources capabilities
- Connect it to Claude Desktop
Demo 3: HTTP Transport (8 minutes)
- "Now let's make servers truly standalone with HTTP"
- Run the HTTP streamable server
- Show the unified endpoint architecture
- Demonstrate HTTP client connecting to it
Demo 4: SSE Concepts (2 minutes)
- "For context, here's the legacy SSE approach"
- Show the pseudocode structure
- Explain why Streamable HTTP is preferred
๐ง Key Technical Points
MCP Architecture
โโโโโโโโโโโโโโโ MCP Protocol โโโโโโโโโโโโโโโ
โ Client โ โโโโโโโโโโโโโโโโโโโบ โ Server โ
โ (Claude, โ โ (Your App) โ
โ Cursor, โ โข Tools โ โ
โ Custom) โ โข Resources โ โ
โโโโโโโโโโโโโโโ โข Prompts โโโโโโโโโโโโโโโTransport Evolution
1. STDIO โ Local, simple, process-based
2. SSE โ Remote, dual-endpoint (GET /sse + POST /messages)
3. Streamable HTTP โ New unified, single endpoint
Three Capabilities
- Tools (Model-controlled): Functions the AI can call
- Resources (App-controlled): Data the AI can read
- Prompts (User-controlled): Templates users select
๐ Virtual Environment Notes
Why use a virtual environment?
- Isolated Python dependencies
- Reproducible demo environment
- No conflicts with system packages
- Professional development practice
Managing the venv:
# Activate (do this before running demos)
source venv/bin/activate
# Check it's working
which python # Should show venv/bin/python
# Install additional packages if needed
pip install some-package
# Deactivate when done
deactivateIf you see import errors:
- Make sure venv is activated (`source venv/bin/activate`)
- Run `python test_setup.py` to verify setup
- Reinstall with `pip install -r requirements.txt`
๐ Additional Resources
- MCP Documentation
- MCP Python SDK
- MCP Servers Collection
- MCP Inspector - Great for testing
๐ Next Steps for Audience
1. Start Simple: Use existing MCP servers with Claude Desktop
2. Build Custom: Create MCP servers for your specific needs
3. Go Remote: Deploy SSE servers for team/production use
4. Explore Transports: Try different transport protocols for your use case
๐ก Talk Takeaways
- MCP is the "USB-C for AI" - universal protocol
- Three capabilities: tools, resources, and prompts unlock real workflows
- Multiple transport options for different deployment scenarios
- Production-ready with proper session management
- Open standard with growing ecosystem
๐ง Troubleshooting
Common Issues:
1. ModuleNotFoundError: Activate venv first (`source venv/bin/activate`)
2. Permission denied on setup.sh: Run `chmod +x setup.sh`
3. Node.js not found: Install from nodejs.org for filesystem server demo
4. Port 8000 in use: Change port in SSE server or kill existing process
5. Claude Desktop not connecting: Check config file path and restart Claude Desktop
*These demos show practical, working examples of MCP's power beyond basic tutorials.*
Frequently asked questions
What is mcp-talk?
mcp-talk is MCP Talk Demo Files
How do I install mcp-talk?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is mcp-talk open source?
Yes โ it is hosted on GitHub at https://github.com/davehague/mcp-talk and has 2 stars.
Related MCP tools
Cognee is the open-source AI memory platform for agents. Give your AI agents persistent long-term memory across sessions with a self-hosted knowledge graph engine.
Automate browser based workflows with AI
Hindsight: Agent Memory That Learns
A privacy-first app that strips AI watermarks from content you own.
Agent framework and applications built upon Qwen>=3.0, featuring Function Calling, MCP, Code Interpreter, RAG, Chrome extension, etc.
The power of Claude Code / GeminiCLI / CodexCLI + [Gemini / OpenAI / OpenRouter / Azure / Grok / Ollama / Custom Model / All Of The Above] working as one.
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP