Skip to main content
Glama
Rajanm001

MCP Tools Server

by Rajanm001
README.md
# MCP Tools Server

A simple **Model Context Protocol (MCP)** server that exposes custom, typed tools
to any MCP-compatible client such as **Claude Desktop**.

Instead of hardcoding integrations into prompts, this server defines tools once
through a clean, standardized interface — so an LLM can call them directly and
reuse them anywhere.

## Tools

| Tool | What it does |
|------|--------------|
| `get_weather(city)` | Returns the current temperature and wind speed for a city. |
| `convert_currency(amount, from_currency, to_currency)` | Converts an amount using live exchange rates. |

Both tools call free public REST APIs and wrap every request in error handling,
so a network failure returns a safe message instead of crashing the agent.

## How it works

```
Claude  <-->  MCP Server (this repo)  <-->  External REST APIs
```

The LLM sees typed tool schemas and decides when to call them. The server runs
the real code and returns validated results.

## Setup

```bash
# 1. Clone the repo
git clone https://github.com/RajanM001/mcp-tools-server.git
cd mcp-tools-server

# 2. Install dependencies
pip install -r requirements.txt

# 3. Run the server
python server.py
```

## Connect to Claude Desktop

Add this to your `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "rajan-tools": {
      "command": "python",
      "args": ["/full/path/to/server.py"]
    }
  }
}
```

Restart Claude Desktop, and the tools appear automatically. Ask Claude
"What's the weather in Delhi?" and it will call `get_weather`.

## Tech

- Python
- MCP Python SDK
- httpx (async HTTP)
- Open-Meteo & ExchangeRate APIs (no API key required)

## Author

**Rajan Mishra** — AI Developer
[LinkedIn](https://www.linkedin.com/in/rajan-mishra-data-technologist) · [GitHub](https://github.com/RajanM001)