Get the FREE Ultimate OpenClaw Setup Guide →

mcp-playground

A Streamlit-based chat app for LLMs with plug-and-play tool support via Model Context Protocol (MCP), powered by LangChain, LangGraph, and Docker.

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio elkhn-mcp-playground python servers/weather/main.py \
  --env PYTHONUNBUFFERED="1"

How to use

MCP Playground is a Streamlit-based interface that lets you chat with large language models and dynamically invoke external MCP tools. It spins up two FastMCP servers (Weather Service and Currency Exchange) alongside a Streamlit client, all orchestrated via Docker Compose. The MCP tools register with the agent so that, as you chat, the React agent can automatically detect available MCP tools and route relevant calls to them. You can inspect tool invocations as YAML blocks streamed back during a session, and you can add more MCP servers through the UI if desired. The client is provider-agnostic, supporting providers like OpenAI, Bedrock, Anthropic, Google Gemini, and Groq through LangChain and LangGraph.

How to install

Prerequisites:

  • Docker (version 24+ recommended) and Docker Compose
  • Access/credentials for an LLM provider (e.g., OPENAI_API_KEY) or AWS credentials for Bedrock
  1. Clone the repository
git clone https://github.com/your-org/mcp-playground.git
cd mcp-playground
  1. Build and run the stack with Docker Compose
docker compose up --build
  1. Access the applications:

Note: The project uses uv for dependency installation inside the containers to speed up builds.

Additional notes

Tips and considerations:

  • Ensure your LLM provider keys are available in the environment (e.g., OPENAI_API_KEY) or that you have AWS credentials for Bedrock.
  • The UI allows dynamic MCP server management; you can add/remove servers through the sidebar without editing config files.
  • If you run into port conflicts, adjust the docker-compose.yaml ports or disable conflicting services.
  • The included MCP servers (Weather and Currency) expose endpoints on 8000 and 8001 respectively; you can implement additional MCP servers by following the same pattern and updating servers_config or the UI.
  • For best performance, keep the uv-based dependency management; rebuilds will be faster when pyproject.toml or dependencies change.

Related MCP Servers

Sponsor this space

Reach thousands of developers