This repository contains a Model Context Protocol (MCP) for Anthropic's Claude Desktop application, featuring a weather service example.
- UV (Python package manager)
- Claude Desktop (if want to use the tools in with anthropic chat UI)
- Python >= 3.10
- Anthropic API key (for client.py)
- AWS credentials (for bedrockClient.py)
The project includes two client implementations:
- Anthropic API Client (
client.py): Uses the standard Anthropic API - AWS Bedrock Client (
bedrockClient.py): Uses AWS Bedrock for Claude integration
To run either client:
cd mcp-client
uv venv # Create virtual environment using uv
uv pip install -e . # Install the client package
# For Anthropic API client
uv run client.py path/to/server/weather/server.py
# For AWS Bedrock client
uv run bedrockClient.py path/to/server/weather/server.pycd weather-server-python
uv venv # Create virtual environment- Install Claude Desktop from Anthropic
- Open the configuration file:
code %AppData%\Claude\claude_desktop_config.json- Add the following configuration (adjust the path according to your setup):
{
"mcpServers": {
"weather": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/PARENT/FOLDER/weather",
"run",
"weather"
]
}
}
}Once configured, the weather tools will be available in Claude Desktop. You can interact with them directly through the Claude interface.
You can extend the functionality by adding more tools to your custom server. Update the claude_desktop_config.json accordingly to make new tools available in Claude Desktop.
⚠️ Important: When naming your tools, only use letters, numbers, and underscores (_). Special characters and spaces are not supported in tool names.