README.mdā¢3.56 kB
# MCP Server Creation and MCP client connection (Agent-Claude,cursor or, custom server calling and integration with local LLMs).
This project demonstrates how to create and connect an MCP (Model Context Protocol) weather server using FastMCP.
> š **Want to learn more about MCP?** Check out our [Comprehensive MCP Guide](Readme_MCP.md) for detailed explanations, concepts, and best practices.
## Prerequisites
- Python 3.13+
- `uv` package manager installed
## Setup Instructions
### 1. Initialize the Project
Initialize a new project using `uv`:
```bash
uv init
```
### 2. Create Virtual Environment
Create a virtual environment for the project:
```bash
uv venv
```
### 3. Activate Virtual Environment
Activate the virtual environment:
**Windows:**
```bash
.venv\Scripts\activate
```
**Linux/Mac:**
```bash
source .venv/bin/activate
```
### 4. Install MCP CLI
Add the MCP CLI package to enable fast MCP CLI commands:
```bash
uv add "mcp[cli]"
```
## Running the MCP Server
### Development Mode
To run the MCP server in development mode:
```bash
uv run mcp dev server/weather.py
```
**Expected Output:**
```
Starting MCP inspector...
āļø Proxy server listening on localhost:6277
```
## Connecting to Claude Desktop
### Install Server to Claude
Add the weather server to Claude Desktop:
```bash
uv run mcp install server/weather.py
```
**Expected Output:**
```
Added server 'weather' to Claude config
Successfully installed weather in Claude app
```
Once installed, you can ask Claude questions like:
- "What are the weather alerts in CA?"
- The MCP server will be called automatically and display the results.
### Manual Configuration for Cursor or Other Clients
For Cursor or other clients, you'll need to manually configure the server using the Claude Desktop config file format.
**Get the server configuration from:** `claude_desktop_config` file
**Example Configuration:**
```json
"weather": {
"command": "C:\\Users\\gaura\\AppData\\Local\\Programs\\Python\\Python313\\Scripts\\uv.EXE",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"C:\\Users\\gaura\\OneDrive\\Desktop\\AI projects\\mcp_project\\server\\weather.py"
]
}
```
**Note:** Update the paths in the configuration to match your system paths.
**Usage in Cursor:**
- Go to **MCP** ā **mcp config.json**
- Add the configuration above
## Using MCP with Local LLMs (mcp-use)
`mcp-use` allows you to connect to MCP servers directly without an AI agent for programmatic tool access. This is useful for custom server calling and integration with local LLMs.
### Installation
Install the `mcp-use` package:
```bash
uv add mcp-use
```
### Configuration
Create a file named `weather.json` and add the following configuration to connect local LLMs to the MCP server:
```json
{
"mcpServers": {
"weather": {
"command": "C:\\Users\\gaura\\AppData\\Local\\Programs\\Python\\Python313\\Scripts\\uv.EXE",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"C:\\Users\\gaura\\OneDrive\\Desktop\\AI projects\\mcp_project\\server\\weather.py"
]
}
}
}
```
**Note:** Update the paths in the configuration to match your system paths.
## References
- **FastMCP**: https://github.com/jlowin/fastmcp
- Create MCP servers and connect them to different clients like Claude, Cursor, etc.
- **mcp-use**: https://github.com/mcp-use/mcp-use
- Connect to MCP servers directly without an AI agent for programmatic tool access (custom server calling and use)