Skip to main content
Glama
zarrinmonirzadeh

Agentic Travel Recommendations Service

Agentic Travel Recommendations Service

A working proof-of-concept for an agent-discoverable travel recommendations API.

What is included

  • FastAPI backend

  • Mock member profile and partner-configuration services

  • Partner-specific recommendation caps

  • Partner-specific category exclusions

  • MCP-compatible JSON-RPC endpoint

  • MCP tool discovery via tools/list

  • MCP tool invocation via tools/call

  • REST API

  • Minimal browser UI

  • Automated tests

Related MCP server: Agentic Travel Recommendations API

Run locally

python -m venv .venv

# macOS/Linux
source .venv/bin/activate

# Windows PowerShell
.venv\Scripts\Activate.ps1

pip install -r requirements.txt
uvicorn app.main:app --reload

Open:

REST example

curl -X POST http://127.0.0.1:8000/api/recommendations \
  -H "Content-Type: application/json" \
  -d '{
    "member_id": "member-1001",
    "partner_id": "premium-bank",
    "destination": "Portland",
    "limit": 10
  }'

MCP discovery example

curl -X POST http://127.0.0.1:8000/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/list",
    "params": {}
  }'

MCP invocation example

curl -X POST http://127.0.0.1:8000/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "tools/call",
    "params": {
      "name": "get_recommendations",
      "arguments": {
        "member_id": "member-1001",
        "partner_id": "premium-bank",
        "destination": "Portland",
        "limit": 10
      }
    }
  }'

Sample IDs

Members:

  • member-1001

  • member-1002

  • member-1003

Partners:

  • premium-bank

  • family-club

  • business-card

Partner-rule examples

  • premium-bank: maximum 5 results; excludes hostel

  • family-club: maximum 4 results; excludes nightlife and casino

  • business-card: maximum 3 results; excludes hostel, nightlife, and casino

Test

pytest

Design notes

The recommendation engine first scores candidates against a mocked member profile, then applies the partner policy before returning results. Policy enforcement is performed server-side, so a client or agent cannot bypass recommendation caps or excluded categories.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers