Skip to main content
Glama
pasupuletiSaiM

Campus Life MCP Server

Campus Life MCP Server

An MCP (Model Context Protocol) server that provides information about IIT Guwahati campus life using a Retrieval-Augmented Generation (RAG) pipeline backed by Qdrant Cloud.

The server exposes a single MCP tool:

  • campus_life_info – Retrieves relevant campus life information from Qdrant and returns it to the MCP client (Claude Desktop).


Architecture

Claude Desktop
        │
        ▼
Cloudflare Tunnel
        │
        ▼
FastMCP HTTP Server
        │
        ▼
CampusLifeRetriever
        │
        ▼
Qdrant Cloud
        │
        ▼
Retrieved Chunks
        │
        ▼
Claude Desktop

Project Structure

campus-life-mcp/
│
├── server.py          # FastMCP server and MCP tool
├── retriever.py       # Qdrant retrieval pipeline
├── models.py          # Embedding & reranker models
├── observe.py         # Logfire tracing
├── config.py          # Configuration
├── .env.example       # Environment variables template
├── pyproject.toml
├── uv.lock
└── README.md

Retrieval Pipeline

User Query
      │
      ▼
Generate Embedding (BGE)
      │
      ▼
Qdrant Dense Search
      │
      ▼
CrossEncoder Reranking
      │
      ▼
Top K Chunks
      │
      ▼
Return to Claude

Prerequisites

  • Python 3.11+

  • uv

  • Cloudflare Tunnel (cloudflared)

  • Claude Desktop

  • Qdrant Cloud account


Setup

1. Clone the repository

git clone <repository-url>

cd campus-life-mcp

Related MCP server: mcp-rag-server

2. Install dependencies

uv sync

3. Create .env

Copy the example file.

cp .env.example .env

Fill the values:

QDRANT_URL=

QDRANT_API_KEY=

COLLECTION_NAME=

LOGFIRE_TOKEN=

LOGFIRE_SERVICE=campus-life-mcp

4. Start the MCP Server

uv run server.py

The server starts on

http://localhost:8000

Expose using Cloudflare Tunnel

Open another terminal and run

cloudflared tunnel --url http://localhost:8000

Cloudflare will generate a public URL similar to

https://xxxxx.trycloudflare.com

Connect to Claude Desktop

Add the remote MCP server using the generated Cloudflare URL.

Example:

{
  "mcpServers": {
    "campus-life": {
      "url": "https://xxxxx.trycloudflare.com/mcp"
    }
  }
}

Restart Claude Desktop.

The tool campus_life_info should now appear.


Example Query

Tell me about Kapili Hostel.

or

What clubs are available at IIT Guwahati?

or

What sports facilities are available on campus?

Logging

The server uses Logfire for observability.

It records:

  • Tool calls

  • Query execution

  • Latency

  • Exceptions


Technologies Used

  • FastMCP

  • Qdrant Cloud

  • Sentence Transformers (BGE Base)

  • BGE CrossEncoder Reranker

  • Logfire

  • Cloudflare Tunnel

  • uv


Future Improvements

  • Multiple MCP tools

  • Metadata filtering

  • Streaming responses

  • Docker support

  • Render deployment

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/pasupuletiSaiM/campus_info_tool_MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server