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.
相关服务器
Alpha Vantage MCP Server
赞助Access financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
MCP Memory Gateway (rlhf-feedback-loop)
Local-first RLHF feedback loop for AI agents — capture preference signals, promote memories, block repeated mistakes, export DPO/KTO training pairs
Android Preference Editor
Edit Android preferences using adb and Node.js.
Authless Remote MCP Server
An example of a remote MCP server without authentication, deployable on Cloudflare Workers or runnable locally.
Composer
Architecture Diagrams automated by your AI Agent
Website Generator MCP
An example MCP server designed for deployment on Cloudflare Workers, supporting both remote and local setups.
SimpleLocalize
A MCP server for SimpleLocalize, a translation management system. Requires a SimpleLocalize API key.
WinTerm MCP
Provides programmatic access to the Windows terminal, enabling AI models to interact with the command line interface.
Better Auth
Enterprise-grade authentication with secure credential management, multi-protocol support, and real-time threat detection.
Safe File MCP
A test server demonstrating all features of the MCP protocol, including prompts, tools, resources, and sampling.
MCP Command Server
A secure server for executing pre-approved system commands via an environment variable.