Provides containerization support for easy deployment of the MCP server, with a Dockerfile for building and running the server in an isolated environment.
Supports environment variable configuration through .env files for storing API keys and other sensitive configuration.
Allows cloning and accessing the MCP server code repository.
Integrates with LangChain (specifically langchain-groq) to enable conversational agents with memory capabilities.
Built on Python with support for multiple versions (3.13+ recommended, 3.11+ for Docker), using Python's ecosystem for MCP server implementation.
Uses TOML format for project configuration and dependency management via pyproject.toml.
Read file: pyproject.toml Ran tool Read file: mcpserver/requirements.txt Here’s a brief and clear README for your project, covering the MCP server, usage, and Docker integration:
MCP Crash Course
This project demonstrates how to build and interact with an MCP (Model Context Protocol) server using Python, with support for weather alerts and conversational agents. It also includes Docker support for easy deployment.
Features
Weather Alerts Tool:
Get real-time weather alerts for any US state using the National Weather Service API.Conversational Agent:
Useslangchain-groqand MCP tools to enable chat-based interactions with memory.Model Used:
llama-3.3-70b-versatile(via ChatGroq)MCP Server & Client:
Includes both server and client implementations for tool invocation and chat.Docker Support:
Easily build and run the server in a containerized environment.
Related MCP server: Weather MCP Server
Project Structure
Getting Started
1. Clone the repository
2. Set up a virtual environment (recommended)
3. Configure Environment Variables
Create a .env file in the root or set the following in your environment:
GROQ_API_KEY(for language model access)
4. Run the MCP Server
5. Run the Client
Or try the stdio client:
Docker Usage
Build and run the server in Docker:
The Dockerfile uses Python 3.11, installs dependencies with
uv, and runs the MCP server.
Dependencies
Python 3.13+ (or 3.11+ for Docker)
httpx
langchain-groq
mcp-use
mcp[cli]
nest-asyncio
All dependencies are managed via pyproject.toml and uv.
Notes
.venv/,__pycache__/, and other generated files are gitignored.For best results, use the latest stable Python version.
Make sure to set up your API keys and environment variables as needed.
Let me know if you want this saved to your README.md or need any changes!