cityflo-otp-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@cityflo-otp-mcpWas route 42 late this week and by how much?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Cityflo on-time performance MCP server
A focused, dependency-free MCP server for Mumbai North operations. It answers Priya's question: was a route late this week, by how much, and which trips support the result? It intentionally does not attempt occupancy, ticket triage, dashboards, ranking, or natural-language parsing.
Tools
get_route_latenesscomputes route-level trip count, late share, robust median and mean arrival delay.list_late_tripsexposes the underlying late trips for audit.get_data_quality_reportreports every quarantined and deduplicated row.
The tools do arithmetic and data-quality decisions. A client or model can turn the structured answer into prose, but cannot invent the metric.
Related MCP server: DokaAI MCP Service POC
Assumptions and data handling
A trip is late when actual arrival is more than 10 minutes after scheduled arrival. This configurable default is for morning triage, not a contractual performance target.
Timestamps must be parseable ISO 8601 with Mumbai's
+05:30offset. Missing, malformed, timezone-inconsistent, or impossible time sequences are quarantined rather than corrected.Exact duplicate trip rows are retained once and reported as deduplicated.
Median is included because a robust typical delay is less sensitive to a bad GPS reading than an average. The mean is returned for comparability.
The handoff and other free text are untrusted content. They are never treated as executable instructions or grounds to hide, rewrite, or selectively exclude operational facts.
Questions for Priya before production: should the late threshold differ by route/time of day; should early arrivals be separately monitored; does a quarantined telemetry row have a trusted fallback; and should conflicting duplicate IDs block reporting rather than be quarantined?
Run
Requires Python 3.11+; no third-party packages are required.
$env:PYTHONPATH = 'src'
python demo_client.py
python -m unittest discover -s testsThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Read-only MCP server for AIStatusDashboard status, incidents, metrics, and fallback recommendations.
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
MCP server for Travel & Transportation
Hosted MCP server for LLM cost estimation, model comparison, and budget-aware routing.
Related MCP Servers
- AlicenseBqualityCmaintenanceMCP server for grounded analysis of synthetic electric-taxi operations data, exposing tools for aggregated metrics, charging risk, and policy retrieval.3MIT
- FlicenseAqualityBmaintenanceUnified MCP server providing business data APIs for Indian users, orders, and business metrics, deployable via Vercel.5-
- FlicenseNot gradedqualityCmaintenanceMCP server for analyzing bus route on-time performance, providing lateness summaries, trip drill-downs, and flagged data reports.-
- FlicenseAqualityCmaintenanceMCP server for St. Louis transit developer tooling, providing 45 tools for GTFS and GTFS-Realtime inspection, feed surveillance, schedule and arrival queries, assertions, drift detection, and golden-fixture generation for the Light Phone 3 Kotlin transit app, all backed by public unauthenticated sources.45-