Skip to main content
Glama
jranjan01
by jranjan01
README.md
# 🌐 Travel MCP Server

A reusable **Model Context Protocol (MCP)** server built with **Python** and the **MCP Python SDK**. It exposes travel-related tools that can be dynamically discovered and invoked by AI clients such as **Google ADK**, **Claude Desktop**, and other MCP-compatible applications.

---

## ✨ Features

- šŸ”Œ Built using the **Model Context Protocol (MCP)**
- šŸ› ļø Exposes reusable travel tools
- šŸŒ¤ļø Retrieves live weather information
- šŸ“… Provides the current date
- šŸ” Automatic tool discovery
- šŸ¤– Compatible with Google ADK and other MCP clients
- 🧩 Easily extensible with new travel services

---

## šŸ—ļø Architecture

```text
AI Client (Google ADK / Claude Desktop)
                │
                ā–¼
           MCP Client
                │
────────────────────────────────
                │
         Travel MCP Server
                │
      ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”“ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
      ā–¼                   ā–¼
    Tool 1             Tool 2
                │
                ā–¼
        External APIs
```

---

## šŸ› ļø Available Tools

| Tool | Description |
|------|-------------|
| šŸŒ¤ļø `get_weather(city)` | Returns the current weather for the specified city |
| šŸ“… `get_current_date()` | Returns today's date in a human-readable format |

---

## šŸš€ Running the Server

Install dependencies:

```bash
uv sync
```

Start the MCP server:

```bash
uv run python server.py
```

---

## 🧰 Tech Stack

| Category | Technologies |
|----------|--------------|
| **Language** | Python |
| **Protocol** | Model Context Protocol (MCP) |
| **SDK** | MCP Python SDK |
| **Weather API** | Open-Meteo API |
| **Package Manager** | uv |

---

## šŸ”— Related Project

This server is used by the **AI Multi-Agent Travel Planner** built with **Google ADK**.

**Repository:** https://github.com/jranjan01/agentic-travel-planner

TDQS

B3.2/5.0

Scored across 2 tools

Disambiguation5/5

The two tools are completely distinct: one returns the current date, the other returns weather for a city. There is no overlap in their purposes.

Naming Consistency4/5

Both tools use the 'get_' prefix, but one includes a redundant '_tool' suffix. Otherwise, naming patterns are consistent (verb_noun).

Tool Count2/5

With only 2 tools, the server is very thin for a travel domain. Typical travel services would require many more tools (e.g., flights, hotels, destinations).

Completeness2/5

The tool surface is severely incomplete for a travel server. Essential operations like searching destinations, booking flights, or getting hotel info are missing.

Maintenance

ActivityStale
ResponsivenessNo issues