Rovv - Book Rides in Africa
Book rides, get fare estimates, and manage trips across African cities with Rovv.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"ride-booking": {
"url": "https://rovvafrica.com/api/v1/mcp"
}
}
}Remote endpoints
https://rovvafrica.com/api/v1/mcpstreamable-httpWhat it can do
Tool inventory
Tools (9)
🟢search_places(query, lat, lng)
Search for a location by name. Returns a list of matching places with addresses. Use this to find the pickup or dropoff location before booking a ride.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "The place name or address to search for, e.g. \"Lekki Phase 1\" or \"Murtala Muhammed Airport\""
},
"lat": {
"type": "number",
"description": "Optional latitude to bias results toward the user's area"
},
"lng": {
"type": "number",
"description": "Optional longitude to bias results toward the user's area"
}
},
"required": [
"query"
]
}🟢get_place_details(place_id)
Get the exact coordinates and full address for a place using its place_id (returned from search_places). Call this after search_places to get lat/lng needed for fare estimates and booking.
Input Schema
{
"type": "object",
"properties": {
"place_id": {
"type": "string",
"description": "The Google place_id from a search_places result"
}
},
"required": [
"place_id"
]
}🟢get_fare_estimate(pick_lat, pick_lng, drop_lat, drop_lng, pick_address, ...)
Get available vehicle types and fare estimates for a trip. Returns a list of vehicle options with prices, ETAs, and vehicle type IDs needed for booking.
Input Schema
{
"type": "object",
"properties": {
"pick_lat": {
"type": "number",
"description": "Pickup latitude"
},
"pick_lng": {
"type": "number",
"description": "Pickup longitude"
},
"drop_lat": {
"type": "number",
"description": "Dropoff latitude"
},
"drop_lng": {
"type": "number",
"description": "Dropoff longitude"
},
"pick_address": {
"type": "string",
"description": "Pickup address text"
},
"drop_address": {
"type": "string",
"description": "Dropoff address text"
}
},
"required": [
"pick_lat",
"pick_lng",
"drop_lat",
"drop_lng"
]
}🟢book_ride(pick_lat, pick_lng, drop_lat, drop_lng, pick_address, ...)
Book a Rovv ride. Requires pickup/dropoff coordinates, a vehicle_type ID (from get_fare_estimate), and payment method. Returns booking confirmation with ride number.
Input Schema
{
"type": "object",
"properties": {
"pick_lat": {
"type": "number",
"description": "Pickup latitude"
},
"pick_lng": {
"type": "number",
"description": "Pickup longitude"
},
"drop_lat": {
"type": "number",
"description": "Dropoff latitude"
},
"drop_lng": {
"type": "number",
"description": "Dropoff longitude"
},
"pick_address": {
"type": "string",
"description": "Pickup address text"
},
"drop_address": {
"type": "string",
"description": "Dropoff address text"
},
"vehicle_type": {
"type": "string",
"description": "The zone_type_id from get_fare_estimate results"
},
"payment_opt": {
"type": "integer",
"description": "Payment method: 0 = card, 1 = cash, 2 = wallet",
"default": 1
},
"is_later": {
"type": "boolean",
"description": "Set to true for scheduled rides",
"default": false
},
"trip_start_time": {
"type": "string",
"description": "For scheduled rides: datetime in Y-m-d H:i:s format"
}
},
"required": [
"pick_lat",
"pick_lng",
"drop_lat",
"drop_lng",
"pick_address",
"drop_address",
"vehicle_type"
]
}🔴cancel_ride(request_id, reason)
Cancel an active ride. Optionally provide a reason.
Input Schema
{
"type": "object",
"properties": {
"request_id": {
"type": "string",
"description": "The ride request ID to cancel. If not provided, cancels the current active ride."
},
"reason": {
"type": "string",
"description": "Optional cancellation reason"
}
},
"required": []
}🟢get_current_ride
Get the status of the user's current active ride, including driver details, ETA, and ride status.
Input Schema
{
"type": "object",
"properties": {},
"required": []
}🟢get_ride_history(limit)
Get the user's past ride history. Returns recent completed and cancelled rides.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"description": "Number of rides to return (default 5, max 20)",
"default": 5
}
},
"required": []
}🟢get_route_info(pickup_lat, pickup_lng, drop_lat, drop_lng)
Get driving route information between two points including distance, duration, and polyline.
Input Schema
{
"type": "object",
"properties": {
"pickup_lat": {
"type": "number",
"description": "Pickup latitude"
},
"pickup_lng": {
"type": "number",
"description": "Pickup longitude"
},
"drop_lat": {
"type": "number",
"description": "Dropoff latitude"
},
"drop_lng": {
"type": "number",
"description": "Dropoff longitude"
}
},
"required": [
"pickup_lat",
"pickup_lng",
"drop_lat",
"drop_lng"
]
}🟢get_wallet_balance
Get the user's Rovv wallet balance, total added, total spent, and recent transactions.
Input Schema
{
"type": "object",
"properties": {},
"required": []
}Community
Evidence