A Model Context Protocol (MCP) server that provides access to a trip tracking SQLite database. This server enables AI assistants to query and manage flight trip information including users, airports, and flight details.
This MCP server exposes a SQLite database for the trip-tracker application through a set of tools and resources. It provides structured access to:
- Users: User account information and profiles
- Trips: Flight records including departure/arrival airports, times, airline info, flight numbers, reservations, terminals, and gates
- Airports: Airport data with IATA codes, names, cities, countries, and geographic coordinates
The server uses FastMCP and SQLAlchemy for async database operations, with input sanitization for security.
Trip Management:
get_trip- Get detailed trip information by IDlist_trips- List trips with optional filtering by user, departure/arrival airports, or airlineget_user_trips- Get all trips for a specific usersearch_trips_by_route- Search trips by departure and arrival airports
User Management:
get_user- Get user information by IDlist_users- List all users with paginationsearch_users- Search users by email or name
Airport Information:
get_airport- Get airport details by IATA codelist_airports- List all airports with paginationsearch_airports- Search airports by name, city, or country
trip://{trip_id}- Access trip information as a resource
Ensure you have Python 3.11 or higher installed.
Install dependencies using uv:
uv syncOr using pip:
pip install -r requirements.txtThe server connects to a SQLite database.
You can override this location by setting the TRIP_TRACKER_DB environment variable:
export TRIP_TRACKER_DB=/path/to/your/database.dbpython main.pyuv run main.pyThe server will:
- Initialize the database (create tables if they don't exist)
- Start the HTTP server on
http://127.0.0.1:9000
To use this server with an MCP client (like Claude Desktop), add it to your MCP settings:
{
"mcpServers": {
"trip-tracker": {
"command": "uv",
"args": [
"--directory",
"/home/user/trip-tracker-mcp",
"run",
"main.py"
],
"env": {
"TRIP_TRACKER_DB": "/path/to/your/database.db"
}
}
}
}Or using Python directly:
{
"mcpServers": {
"trip-tracker": {
"command": "python",
"args": ["/home/user/trip-tracker-mcp/main.py"],
"env": {
"TRIP_TRACKER_DB": "/path/to/your/database.db"
}
}
}
}