MCP Playground
A playground for MCP implementations featuring multiple microservices, including news and weather examples.
MCP Playground
Table of Contents
- Description
- Requirements
- Technologies and Tools
- Local Installation Instructions
- Available Make Commands
- Connecting with Claude Desktop
Description
This project is a playground for MCP (Model Context Provider) implementations, featuring multiple microservices including a News MCP and Weather MCP. The services are implemented using MCP with stdio transport, providing a simple and efficient way to expose functionality through standard input/output streams.
Requirements
- Python 3.12
uvpackage manager- Virtual environment support
Technologies and Tools
mcp[cli]: Model Context Provider for service communicationhttpx: Modern HTTP client for Pythonpython-dotenv: Environment variable management
Local Installation Instructions
- Clone the repository:
git clone https://github.com/RonFelsenfeld/mcp-playground.git
cd mcp-playground
- Set up the virtual environment and install dependencies:
make setup
- Activate the virtual environment:
source .venv/bin/activate
- Sync dependencies:
make sync
-
Run the MCP services:
- To run the News MCP service:
python -m src.news_mcp.main- To run the Weather MCP service:
python -m src.weather_mcp.main
Available Make Commands
make setup: Creates a new virtual environmentmake activate: Shows activation command for the virtual environmentmake sync: Syncs project dependenciesmake freeze-dependencies: Freezes current dependencies to requirements.txtmake clean: Removes virtual environment and lock files
Connecting with Claude Desktop
This project can be connected to Claude Desktop to test and interact with the MCP services using Anthropic's Model Context Protocol (MCP).
-
Install Claude Desktop, available here
-
Open Claude, go to Settings -> Developer
-
Click "Edit Config"
-
Open "claude_desktop_config.json" file
-
Copy-paste the following JSON inside the file:
{
"mcpServers": {
"weather": {
"command": "<ABSOLUTE_PATH_TO_UV>",
"args": [
"--directory",
"<YOUR_PROJECT_PATH>",
"run",
"-m",
"src.weather_mcp.main"
]
},
"news": {
"command": "<ABSOLUTE_PATH_TO_UV>",
"args": [
"--directory",
"<YOUR_PROJECT_PATH>",
"run",
"-m",
"src.news_mcp.main"
],
"env": {
"NEWS_API_KEY": "<YOUR_NEWS_API_KEY>"
}
}
}
}
Replace:
<ABSOLUTE_PATH_TO_UV>with the absolute path to youruvexecutable (from thewhich uvcommand)<YOUR_PROJECT_PATH>with the absolute path to your project directory
For the News MCP service, you'll need a News API key from newsdata.io. You can get a free API key by:
- Creating an account at newsdata.io
- Going to your dashboard
- Generating a new API key
After generating you API key, replace <YOUR_NEWS_API_KEY> with it.
Related Servers
Remote MCP Server (Authless)
A remote MCP server deployable on Cloudflare Workers without authentication.
MCP RAG Server
A lightweight Python server for Retrieval-Augmented Generation (RAG) using AWS Lambda. It retrieves knowledge from external data sources like arXiv and PubMed.
MCP System Monitor Server
A cross-platform server for real-time monitoring of CPU, GPU, memory, disk, network, and process information.
Flux Schnell MCP Server
A text-to-image generation server using the Flux Schnell model.
Cursor Chat History MCP
Provides local access to Cursor chat history for AI analysis and insights, with no external services or API keys required.
WordPress MCP
A Python MCP server for interacting with a local WordPress instance.
MCP-S Gateway
A secure, open-source OAuth gateway for MCP authentication.
AbletonMCP
Control Ableton Live with AI prompts for music production, track creation, and session manipulation.
OpenAPI Schema
Exposes OpenAPI schema information to Large Language Models (LLMs). The server loads OpenAPI schema files specified via command line.
Roo Activity Logger
Automatically logs AI coding assistant activities, such as command executions and code generation, into searchable JSON files.