Cycle Tracker
Live UK bike-share availability: nearby bikes and stations, popular stations, 90-day history.
What can you do with Cycle Tracker?
- Live bike and station stats: View availability, utilization, and capacity for each station.
- Interactive map: See station locations and bike distribution.
- Popular-station analytics: Find the most-used and highest-capacity stations.
- Modern UI: Use a responsive interface built with React, Tailwind CSS, and Radix UI.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
claude mcp add --transport http cycle-tracker 'https://cycle.arrakis.house/mcp'
{
"mcpServers": {
"cycle-tracker": {
"type": "http",
"url": "https://cycle.arrakis.house/mcp"
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Starling Bank Bikes Manchester
Starling Bank Bikes Manchester is a dashboard that monitors bike-sharing stations in Manchester in real time and reports analytics about them. The project includes a web frontend and a backend API.
Features
- Live bike and station stats: View availability, utilization, and capacity for each station.
- Interactive map: See station locations and bike distribution.
- Popular-station analytics: Find the most-used and highest-capacity stations.
- Modern UI: Use a responsive interface built with React, Tailwind CSS, and Radix UI.
Project structure
- bike-sharing-dashboard/ # Frontend (React, TypeScript, Vite)
├── src/
│ ├── components/
│ │ ├── dashboard/ # Dashboard features (PopularStationAnalytics, StatsCards, InteractiveMap)
│ │ ├── home/ # Home page
│ │ └── ui/ # UI primitives (Sheet, Tabs, Card, Table)
│ ├── lib/ # Utility functions
│ ├── App.css, index.css # Styles
│ └── main.tsx # App entry point
├── index.html # Root HTML
├── vite.config.ts # Vite config
└── tailwind.config.js # Tailwind config
- worker/ # Backend (Cloudflare Worker, TypeScript, Hono, D1)
├── src/
│ ├── index.ts # Hono app, CORS, static assets, cron entry
│ ├── snapshot.ts # GBFS feed -> D1 snapshot job (10-min cron)
│ └── routes/ # API routes (bikes, stations, analytics)
├── migrations/ # D1 schema migrations
└── wrangler.jsonc # Worker + D1 + cron + custom-domain config
Get started
Prerequisites
- Node.js and npm
- A Cloudflare account with Workers and D1, for deployment
Develop locally
To run the backend (Worker plus local D1), enter the following commands:
cd worker
npm install
npm run migrate:local # first time only
npx wrangler dev # API on http://localhost:8787
To run the frontend, enter the following commands:
cd bike-sharing-dashboard
npm install
npm run dev # UI on http://localhost:5173, calls the local worker
Deploy
The app runs at cycle.arrakis.house. When you push a
change to main that touches worker/ or bike-sharing-dashboard/, the
.github/workflows/deploy.yml workflow builds the frontend, applies the D1 migrations,
and runs wrangler deploy. The Worker serves the static frontend and the /api/v1 API
from the same origin. A 10-minute cron job snapshots the Manchester Beryl General
Bikeshare Feed Specification (GBFS) feed into D1.
Technologies used
- Frontend: React, TypeScript, Tailwind CSS, Vite, Radix UI
- Backend: Cloudflare Workers, Hono, D1 (SQLite), TypeScript
Author
Frequently asked questions
What is Cycle Tracker?
Live UK bike-share availability: nearby bikes and stations, popular stations, 90-day history.
How do I install Cycle Tracker?
It runs as a remote server. In Claude Code: claude mcp add --transport http cycle-tracker 'https://cycle.arrakis.house/mcp'. For other clients, paste the JSON configuration from this page into their MCP settings.
Does Cycle Tracker need an API key?
Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.
Is Cycle Tracker open source?
Its code is public on GitHub, but the repository does not declare a standard license.
Who maintains Cycle Tracker?
It is published by ThisisBankole. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.