About mcd-demo
mcd-demo is a demo project for building simple MCP servers and connecting them to a LangChain agent. It includes weather, math, and telemetry servers, which must be started before running the agent.
Key features
- 01Example weather, math, and telemetry servers
- 02LangChain agent integration
- 03Azure OpenAI environment configuration
- 04Run math server in Docker
Use cases
- 01Test simple MCP server creation
- 02Run a LangChain agent with MCP servers
- 03Experiment with a Dockerized math server
MCP support
The project runs three MCP servers for weather, math, and telemetry and connects them to the LangChain agent.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEmcd-demo
Testing creation of simple MCP servers and integrating with LangChain agent
Prerequisites
Create a virtual environment
python3 -m venv venv
source venv/bin/activate
Install dependencies
pip install -r requirements.txt
Set Environment variables
Set the following environment variables. Get the values from Azure AI Foundry where the models are deployed:
export AZURE_OPENAI_API_KEY=<your_azure_openai_api_key>
export AZURE_OPENAI_ENDPOINT=<your_azure_openai_endpoint>
Optionally, you can set the following environment variables to configure the MCP servers:
export MCP_MATH_URI=http://<server-uri>:5001/sse
Note: You can also set these variables in a
.envfile in the root directory of the project.
Running the agent
Start the MCP servers
You have to start all three MCP servers before starting the agent. Each server listens on a separate port. You can start them in separate terminals or run them in the background. To run in the background, do the following:
python weather_server.py &
python math_server.py &
python telemetry_server.py &
Alternatively, you can run the math server in a Docker container. To do this, first build the Docker image:
make build
Then, run the container:
make run-local
If you want to push the Docker image to a registry, tag and push it using the following commands:
make login
make push
Start the agent
python agent.py
Killing the MCP servers
pkill -9 -f weather_server.py
pkill -9 -f math_server.py
pkill -9 -f telemetry_server.py
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.