gbfs-mcp
Click on "Deploy 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., "@gbfs-mcp find nearby Citi Bike stations with available e-bikes"
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.
gbfs-mcp 🚲
General Bikeshare Feed Specification (GBFS v3.0 / v2.3) Model Context Protocol (MCP) server & interactive CLI.
Connect AI assistants (Antigravity, Claude Desktop, Cursor, Claude Code) and developers to real-time bikeshare and micromobility availability worldwide across 1,000+ public systems (Citi Bike, Bay Wheels, Vélib', Santander Cycles, Biki, Lime, and more).
🌟 Features
🌐 1,000+ Worldwide Systems: Built-in integration with MobilityData’s official
systems.csvcatalog.⚡ Dynamic Auto-Discovery: Seamlessly parses
gbfs.jsonfor both GBFS v3.0 (flat feed manifests) and GBFS v2.x (multi-language feed manifests).📍 Geographic Proximity Sorting: Rank stations and free-floating e-bikes/scooters by distance (
lat,lon,radius_meters).🔋 Fleet & Battery Telemetry: Real-time visibility into vehicle types, electric vs. mechanical bikes, battery ranges, and dock availability.
🤖 Built-in Agent Skill (
SKILL.md): Complete agent guide included for querying and reasoning about shared micromobility feeds.
Related MCP server: mcp-citybikes
🛠️ MCP Tools
Tool | Parameters | Description |
|
| Search 1,000+ public bikeshare systems by city, country, or system ID. |
|
| Resolves |
|
| Fetches live station capacity, available bikes, e-bikes, and empty docks with proximity ranking. |
|
| Fetches dockless/floating bikes and scooters with battery range. |
|
| Active operational notices, weather closures, or maintenance. |
|
| Vehicle specifications (form factors, propulsion, battery range). |
🚀 Quick Start (CLI)
cd E:\development\gbfs-mcp
npm install
npm run build
# Search systems
node dist/index.js systems Minneapolis
# Get live station availability
node dist/index.js stations bay_wheels --limit 10⚙️ MCP Configuration
Add to your mcp_config.json:
{
"mcpServers": {
"gbfs-mcp": {
"command": "node",
"args": ["E:/development/gbfs-mcp/dist/index.js", "serve"]
}
}
}📄 License
MIT © Amin
Available Tools
6 toolsgbfs_get_alertsB
Fetch active system alerts, disruption notices, and weather closures from system_alerts.json.
Inputs: system_id_or_url (required).
gbfs_get_free_bikesB
Fetch real-time dockless/free-floating bikes and scooters (free_bike_status.json) with battery levels and coordinates.
Inputs: system_id_or_url (required), limit, latitude, longitude, +1 more.
gbfs_get_stationsB
Fetch real-time station status (available bikes, e-bikes, and docks) for a bikeshare system. Optionally sort and filter by geographic proximity.
Inputs: system_id_or_url (required), limit, latitude, longitude, +1 more.
gbfs_get_systemA
Fetch system metadata, operator information, and resolved feed endpoints from gbfs.json for a given system_id or auto-discovery URL.
Inputs: system_id_or_url (required).
gbfs_get_vehicle_typesB
Fetch vehicle fleet specifications (form factors, mechanical vs electric assist, maximum battery range) from vehicle_types.json.
Inputs: system_id_or_url (required).
gbfs_list_systemsA
Search the MobilityData systems.csv catalog of 1,000+ public bikeshare and micromobility systems worldwide by city name, country, operator, or system_id.
Inputs: limit, query.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 6 tools
Each tool targets a distinct GBFS resource and action: system discovery, system metadata, stations, free bikes, alerts, and vehicle types. There is no meaningful overlap that would cause an agent to select the wrong tool.
All tools follow a consistent gbfs_<verb>_<noun> pattern, using list_ for catalog discovery and get_ for fetching specific data. The only minor irregularity is singular 'system' vs plural others, but it is intuitive as it returns a single system.
With 6 tools, the server is well-scoped for a GBFS domain, covering the most commonly needed data feeds without bloat. Each tool serves a distinct, high-value purpose.
Core GBFS feeds such as station status, free bikes, alerts, and vehicle types are covered, and system metadata provides feed endpoints for raw access. The absence of a dedicated station_information tool for static station names/coordinates is a minor gap that agents can work around by consulting feed endpoints.
Maintenance
Related MCP Connectors
Mobility, geocoding and nearby urban services for AI agents.
Routing, geocoding, places, matrix and map tools for location-aware AI workflows.
MobilityData's open catalogue of public-transport feeds — ~4,500 GTFS schedule feeds and ~1,900…
Read-only public transit departures, stop search, and city coverage for bus and train users.
Related MCP Servers
- FlicenseAqualityDmaintenanceProvides access to Bay Wheels realtime bikeshare data, enabling users to find nearest available bikes (standard or ebike) and docking stations with available spaces in the San Francisco Bay Area.2-
- AlicenseNot gradedqualityBmaintenanceProvides access to bike sharing station data from CityBik.es API, enabling queries for station availability and locations without authentication.303 npmMIT
- AlicenseNot gradedqualityDmaintenanceProvides real-time access to Montreal's Bixi bike-sharing data through the GBFS API. Enables querying station information, availability, nearby stations, and system alerts.MIT
- FlicenseNot gradedqualityCmaintenanceEnables querying real-time bike-share feed data, including station availability, nearby bikes and docks, route checks, alerts, and system information across many cities.-