Garage-on-the-Go MCP Server

Garage-on-the-Go MCP Server

Provides tools for vehicle service search, mechanic matching, and booking generation as part of a multi-agent AI system for roadside assistance.

Category
Visit Server

README

Garage-on-the-Go AI Agent ๐Ÿ› ๏ธ

Kaggle AI Agents Capstone Project: Intensive Vibe Coding


Project Scope

Garage-on-the-Go AI Agent is a Kaggle capstone prototype designed to demonstrate multi-agent vehicle diagnostics, service estimation, and mobile mechanic matching.

  • Capstone Prototype: Built for Kaggle AI Agents Capstone evaluation and portfolio demonstration.
  • Simulated Operations: Uses mock service catalog data and simulated mechanic profiles for Guwahati-style areas.
  • No Real Dispatching: The generated booking receipt is a demo output and does not trigger real mechanic assignment, payment, or physical dispatch.

๐Ÿ“Œ Problem Statement

Stranded motorists facing sudden vehicle failures lack an immediate, reliable way to:

  1. Safely diagnose whether their vehicle is safe to drive or requires immediate towing.
  2. Estimate realistic, local maintenance costs without visiting physical workshops.
  3. Quickly find and book available mock mechanics operating in their specific neighborhood.

๐Ÿ’ก Solution

A localized, secure mobile mechanic coordinator driven by an ADK-inspired multi-agent orchestration sequential pipeline:

  • Triage Agent: Conducts safety and urgency classification.
  • Estimate Agent: Matches the query to a structured catalog, determining base service details and pricing ranges.
  • Booking Agent: Assigns mock mechanic specialists located in Guwahati areas and compiles a finalized booking summary.

๐Ÿ› ๏ธ Architecture & Multi-Agent Flow

The workflow is coordinated sequentially by a Root Agent orchestrator:

[User Input] 
    โ”‚
    โ–ผ
[Security Shield] โ”€โ”€โ–บ 1. Input Guard (Rejects injections / size limits)
    โ”‚                 2. PII Redactor (Filters email/phone for privacy)
    โ–ผ
[Root Agent (Orchestrator)]
    โ”‚
    โ”œโ”€โ–บ [Triage Agent] โ”€โ”€โ–บ Diagnoses causes, Urgency levels, Safety directions
    โ”‚
    โ”œโ”€โ–บ [Estimate Agent] โ”€โ”€โ–บ Queries Service Catalog Tool, determines Cost range
    โ”‚
    โ””โ”€โ–บ [Booking Agent] โ”€โ”€โ–บ Invokes Mechanic Match Tool, compiles Receipt
        โ”‚
        โ–ผ
   [Final Output] โ”€โ”€โ–บ Booking Confirmation Receipt JSON & Dashboard Cards

๐ŸŽ“ Kaggle Course Concepts Demonstrated

  • Multi-agent orchestration: Uses a sequential coordination pipeline (Triage -> Estimate -> Booking) directed by a central Root Orchestrator.
  • Gemini API via google-genai with fallback mode: Migrated to the modern google-genai SDK targeting the gemini-2.5-flash model. Includes a full deterministic rule-based fallback if the API key is not present or calls fail.
  • Real ADK integration layer under adk_agent/: Exposes the vehicle diagnostics agent tools using the official Google Agent Development Kit framework configuration.
  • Real MCP server under mcp_server/real_mcp_server.py: Exposes tools (search_services, find_mechanic, and generate_booking) to external clients using the official FastMCP framework on standard stdio transport.
  • Security guardrails: Includes prompt injection protection, input length restrictions, and regex-based redaction of phone/email PII before processing.
  • Streamlit deployability: Provides an interactive browser-based web demo interface ready for cloud environment testing. Features visual status chips, summary cards, confidence meters, and a structured Agent Execution Trace / Reasoning Flow panel.

๐Ÿš€ Setup & Execution

Prerequisites

  • Python 3.8+ installed on your system.

Installation

  1. Clone or navigate to the project directory:
    cd garage-on-the-go-agent
    
  2. Create and activate a virtual environment:
    python -m venv venv
    # On Windows (PowerShell):
    .\venv\Scripts\Activate.ps1
    # On macOS/Linux:
    source venv/bin/activate
    
  3. Install the dependencies:
    pip install -r requirements.txt
    

Configuration

  1. (Optional) Create a .env file in the root directory and add your Google Gemini API key:

    GEMINI_API_KEY=your_actual_api_key_here
    

    Note: If no API key is specified, the application automatically runs in rule-based offline fallback mode using the Maruti/Pulsar heuristics.

    โš ๏ธ WARNING: Never commit your .env file or expose raw API keys to GitHub.


๐Ÿ•น๏ธ How to Run

1. Run the Streamlit Interface

To view the Streamlit web demo:

streamlit run app.py

2. Run the CLI Terminal Demo

To run the interactive command-line utility:

python main.py

3. Run Automated Self-Tests

To run the programmatic validation suite verifying security guardrails, PII filters, and pipeline routing:

python main.py --test

4. Run the Google ADK Wrapper

To verify tool registration and inspect the Google Agent Development Kit setup:

python adk_agent/agent.py

5. Run the Real MCP Server

To execute the tool server via standard stdio transport:

python mcp_server/real_mcp_server.py

Or run the server in development mode using the FastMCP command-line tool:

mcp dev mcp_server/real_mcp_server.py

๐Ÿงช Demo Scenario

Try entering the following description in the CLI or Streamlit text input:

"My car's engine is making a loud knocking sound, and the dashboard temperature gauge is in the red. I see some coolant leaking onto the driveway. Call me at 98765-43210 or email user@test.com to confirm."

Expected Results:

  • Security Guard: Redacts 98765-43210 to [PHONE REDACTED] and user@test.com to [EMAIL REDACTED].
  • Triage: Diagnoses a cooling system/radiator issue, marks urgency as Critical, and issues a safety recommendation to stop driving immediately.
  • Estimate: Selects Coolant Flush & Top Up or Engine Diagnostics from the catalog, calculating a total pricing breakdown.
  • Booking: Matches an available mechanic in your location area (e.g. Rajen Kalita for Beltola) and prints a receipt with booking ID.

โš ๏ธ Limitations & Future Scope

  • Current Limitations: This is a prototype system that operates entirely on mock data, with no real GPS positioning, no payment gateway integration, and no real-world mechanic booking or dispatching.
  • Future Scope: Integration with real mechanic dashboards via Websockets, mapping visual routing APIs, and deploying native MCP server adapters to bind directly into developer IDE hosts.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured