FleetMind MCP Server
AI-powered delivery dispatch management system with 29 tools for managing orders, drivers, and intelligent route assignments. Uses Gemini 2.0 Flash AI to optimize delivery assignments based on weather, traffic, driver capabilities, and vehicle types.
README
title: FleetMind MCP Server emoji: π colorFrom: blue colorTo: purple sdk: docker app_file: app.py pinned: true short_description: AI delivery dispatch MCP server with 29 management tools tags:
- mcp
- building-mcp-track-enterprise
- model-context-protocol
- delivery-management
- postgresql
- fastmcp
- gradio
- enterprise
- logistics
- gemini
- google-maps
- ai-routing
<div align="center">
π FleetMind MCP Server
AI-Powered Delivery Dispatch for the Modern Enterprise
The Problem: Delivery dispatch is complexβcoordinating drivers, optimizing routes, handling weather delays, and meeting SLAs requires constant human oversight.
The Solution: FleetMind exposes 29 AI-accessible tools that let Claude (or any MCP client) manage your entire delivery operation through natural conversation.
The Impact: Dispatch managers can now say "Assign this urgent fragile delivery to the best available driver considering weather and traffic" and watch AI handle the complexity.
</div>
πΊ See It In Action
<div align="center"> <a href="https://www.youtube.com/watch?v=IA9iD0VPvro"> <img src="https://img.youtube.com/vi/IA9iD0VPvro/maxresdefault.jpg" alt="FleetMind Demo Video" width="560"> </a> <p><b>βΆοΈ Click to watch the demo video</b></p> </div>
Watch Gemini 2.0 Flash AI analyze weather, traffic, and driver capabilities to make intelligent assignment decisions with full reasoning transparency.
β‘ Quick Start (2 Minutes)
Step 1: Get Your API Key
π Generate API Key (copy immediatelyβshown once!)
Step 2: Configure Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"fleetmind": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp-1st-birthday-fleetmind-dispatch-ai.hf.space/sse?api_key=YOUR_KEY_HERE"
]
}
}
}
Step 3: Start Dispatching!
You: "Create an urgent delivery for Sarah at 456 Oak Ave, San Francisco,
then use AI to find the best driver considering the current rain"
Claude: Uses geocode_address β create_order β intelligent_assign_order
Returns: "Order ORD-... assigned to Mike (DRV-...).
AI selected Mike because: closest driver with cold-storage van,
safest route in current weather, 15 min ETA."
π Why FleetMind?
| Feature | What It Does | Why It Matters |
|---|---|---|
| π€ Gemini 2.0 Flash AI | Analyzes 10+ parameters for intelligent driver assignment | Better decisions than rule-based systems |
| π¦οΈ Weather-Aware Routing | OpenWeatherMap integration for safety-first planning | Reduces weather-related delivery failures |
| π Multi-Tenant Auth | Complete data isolation via deterministic user_id | Enterprise-ready security out of the box |
| π SLA Tracking | Automatic on-time/late/very-late classification | Built-in performance analytics |
| π¦ Real-Time Traffic | Google Routes API with live traffic data | Accurate ETAs, not guesstimates |
| ποΈ Vehicle Optimization | Motorcycle, bicycle, car, van, truck routing | Right routes for each vehicle type |
π οΈ The 29 Tools
<details> <summary><b>π Geocoding & Routing (3 tools)</b></summary>
| Tool | Description |
|---|---|
geocode_address |
Convert address β GPS coordinates |
calculate_route |
Vehicle-specific routing with traffic, tolls, fuel estimates |
calculate_intelligent_route |
AI-powered routing with weather + traffic analysis |
</details>
<details> <summary><b>π¦ Order Management (8 tools)</b></summary>
| Tool | Description |
|---|---|
create_order |
Create delivery with mandatory deadline & SLA tracking |
count_orders |
Count by status/priority with breakdowns |
fetch_orders |
Paginated list with filters |
get_order_details |
Full order info including timing data |
search_orders |
Find by customer name/email/phone/ID |
get_incomplete_orders |
Active deliveries shortcut |
update_order |
Modify order with cascading updates |
delete_order |
Safe deletion with assignment checks |
</details>
<details> <summary><b>π₯ Driver Management (8 tools)</b></summary>
| Tool | Description |
|---|---|
create_driver |
Onboard with vehicle type, skills, capacity |
count_drivers |
Count by status/vehicle with breakdowns |
fetch_drivers |
Paginated list with filters |
get_driver_details |
Full info with reverse-geocoded location |
search_drivers |
Find by name/plate/phone/ID |
get_available_drivers |
Ready-for-dispatch shortcut |
update_driver |
Modify with location auto-timestamp |
delete_driver |
Safe deletion with assignment checks |
</details>
<details> <summary><b>π Assignment Management (8 tools) β</b></summary>
| Tool | Description |
|---|---|
create_assignment |
Manual driver selection |
auto_assign_order |
Nearest driver + capacity/skill validation |
intelligent_assign_order |
π€ Gemini 2.0 Flash AI with full reasoning |
get_assignment_details |
Query by assignment/order/driver ID |
update_assignment |
Status transitions with cascading |
unassign_order |
Revert to pending safely |
complete_delivery |
Mark done + auto-update driver location |
fail_delivery |
Track failure with GPS + structured reason |
</details>
<details> <summary><b>ποΈ Bulk Operations (2 tools)</b></summary>
| Tool | Description |
|---|---|
delete_all_orders |
Mass delete with status filter & safety checks |
delete_all_drivers |
Mass delete with assignment safety blocks |
</details>
ποΈ Architecture
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β MCP Clients β
β Claude Desktop β’ Continue β’ Cline β’ Custom Apps β
βββββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββ
β SSE: /sse?api_key=fm_xxx
βΌ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Authentication Proxy (proxy.py) β
β β’ Captures API key from SSE connection β
β β’ Links session_id β api_key for tool calls β
β β’ Keep-alive pings every 30s β
βββββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββ
βΌ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β FastMCP Server (server.py) β
β β’ ApiKeyAuthMiddleware validates every call β
β β’ 29 tools with user_id filtering β
β β’ 2 real-time resources (orders://all, drivers://all) β
ββββββββββββ¬βββββββββββ¬βββββββββββββ¬βββββββββββ¬βββββββββββββββββ
βΌ βΌ βΌ βΌ
ββββββββββββ βββββββββββ ββββββββββββ βββββββββββββ
βPostgreSQLβ β Google β β Gemini β βOpenWeatherβ
β (Neon) β βMaps API β β2.0 Flash β β Map API β
β user_id β βGeocodingβ βIntelligentββ Weather β
βisolation β β Routing β βAssignmentβ β Data β
ββββββββββββ βββββββββββ ββββββββββββ βββββββββββββ
π Authentication & Security
FleetMind uses a 3-layer authentication system for enterprise-grade security:
| Layer | Component | Function |
|---|---|---|
| 1 | Proxy | Captures API key from URL, links sessions |
| 2 | Middleware | Validates every tool call, injects user context |
| 3 | Database | All queries filter by user_id (complete isolation) |
Security Features:
- β SHA-256 hashed key storage (never plaintext)
- β One-time key display (can't retrieve later)
- β Deterministic user_id from email (key rotation preserves data)
- β Production safeguards (SKIP_AUTH blocked when ENV=production)
<details> <summary><b>View Complete Auth Flow</b></summary>
1. Generate API Key β user_id = user_{MD5(email)[:12]}
2. Configure Claude β URL includes ?api_key=fm_xxx
3. SSE Connection β Proxy captures and stores key
4. Tool Call β Proxy injects key, middleware validates
5. Database Query β WHERE user_id = 'user_xxx'
6. Result β Only user's own data returned
</details>
π Deployment
Production (HuggingFace Space)
Already deployed at: https://mcp-1st-birthday-fleetmind-dispatch-ai.hf.space
Local Development
git clone <repository-url>
cd fleetmind-mcp
pip install -r requirements.txt
# Configure .env with your API keys
python start_with_proxy.py # Runs proxy (7860) + FastMCP (7861)
π Technical Specifications
| Metric | Value |
|---|---|
| Tools | 29 |
| Resources | 2 (orders://all, drivers://all) |
| Database | PostgreSQL (Neon serverless) |
| AI Model | Gemini 2.0 Flash (gemini-2.0-flash-exp) |
| Transport | SSE (Server-Sent Events) |
| Framework | FastMCP 2.13.0 |
| Language | Python 3.10+ |
π Links
| Resource | URL |
|---|---|
| Live Demo | https://mcp-1st-birthday-fleetmind-dispatch-ai.hf.space |
| MCP Endpoint | https://mcp-1st-birthday-fleetmind-dispatch-ai.hf.space/sse |
| Generate API Key | https://mcp-1st-birthday-fleetmind-dispatch-ai.hf.space/generate-key |
| HuggingFace Space | https://huggingface.co/spaces/MCP-1st-Birthday/fleetmind-dispatch-ai |
π₯ Team
FleetMind Development Team
MCP 1st Birthday Hackathon - Track 1: Building MCP Servers (Enterprise Category)
π License
MIT License - see LICENSE for details.
<div align="center">
Built with β€οΈ using FastMCP for the MCP 1st Birthday Hackathon
</div>
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Neon Database
MCP server for interacting with Neon Management API and databases
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.
E2B
Using MCP to run code via e2b.