trackmcp
Back to directory
RonFelsenfeld

mcp-playground

View on GitHub

MCP Playground

0 stars PythonOthers Updated Jul 4, 2025

Documentation

MCP Playground

Table of Contents

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
  • `uv` package manager
  • Virtual environment support

Technologies and Tools

  • `mcp[cli]`: Model Context Provider for service communication
  • `httpx`: Modern HTTP client for Python
  • `python-dotenv`: Environment variable management

Local Installation Instructions

1. Clone the repository:

bash
git clone https://github.com/RonFelsenfeld/mcp-playground.git
cd mcp-playground

2. Set up the virtual environment and install dependencies:

bash
make setup

3. Activate the virtual environment:

bash
source .venv/bin/activate

4. Sync dependencies:

bash
make sync

5. Run the MCP services:

    bash
    python -m src.news_mcp.main
      bash
      python -m src.weather_mcp.main

      Available Make Commands

      • `make setup`: Creates a new virtual environment
      • `make activate`: Shows activation command for the virtual environment
      • `make sync`: Syncs project dependencies
      • `make freeze-dependencies`: Freezes current dependencies to requirements.txt
      • `make 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).

      1. Install Claude Desktop, available here

      2. Open Claude, go to Settings -> Developer

      3. Click "Edit Config"

      4. Open "claude_desktop_config.json" file

      5. Copy-paste the following JSON inside the file:

      json
      {
        "mcpServers": {
          "weather": {
            "command": "",
            "args": [
              "--directory",
              "",
              "run",
              "-m",
              "src.weather_mcp.main"
            ]
          },
          "news": {
            "command": "",
            "args": [
              "--directory",
              "",
              "run",
              "-m",
              "src.news_mcp.main"
            ],
            "env": {
              "NEWS_API_KEY": ""
            }
          }
        }
      }

      Replace:

      • `` with the absolute path to your `uv` executable (from the `which uv` command)
      • `` 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:

      1. Creating an account at newsdata.io

      2. Going to your dashboard

      3. Generating a new API key

      After generating you API key, replace `` with it.

      Frequently asked questions

      What is mcp-playground?

      mcp-playground is MCP Playground

      How do I install mcp-playground?

      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-playground open source?

      Yes — it is hosted on GitHub at https://github.com/RonFelsenfeld/mcp-playground.

      Related MCP tools

      Run your own MCP server? See who uses it and what to fix.

      Measure it with TrackMCP