cyclesite-mcp-server
v2.4.3
Published
Stdio MCP relay for Cyclesite — UK's used bicycle marketplace. Forwards every request to the hosted MCP transport so tools and resources stay in sync with the platform.
Downloads
184
Maintainers
Readme
cyclesite-mcp-server
Plug AI assistants into the UK's used-bike marketplace. Search, value, recommend, and trust-check used bikes from Cyclesite inside Claude, ChatGPT, Cursor, Continue, Cody, Zed, or any MCP-compatible client.
"What's a 2022 Trek Domane SL 6 worth in Manchester?"
"Find me an electric mountain bike under £2,500 within 25 miles of LE10."
"Is this serial reported stolen? WTU123456"
"Help me sell my Specialized Allez — draft the listing."23 tools, 5 resources, 8 curated prompts, all backed by live UK
marketplace data. v2.x is a thin stdio relay — every request hits
https://www.cyclesite.co.uk/api/mcp-server so the catalogue stays
in sync with the platform.
Quick start
npx -y cyclesite-mcp-serverThat's it. The relay reports tools, resources and prompts on the MCP handshake; your client picks them up automatically.
Install in your client
Edit ~/Library/Application Support/Claude/claude_desktop_config.json
(macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"cyclesite": {
"command": "npx",
"args": ["-y", "cyclesite-mcp-server"]
}
}
}Restart Claude. The Cyclesite tools and prompts appear in the picker.
claude mcp add cyclesite -- npx -y cyclesite-mcp-server~/.cursor/mcp.json:
{
"mcpServers": {
"cyclesite": {
"command": "npx",
"args": ["-y", "cyclesite-mcp-server"]
}
}
}.continue/config.yaml:
mcpServers:
- name: cyclesite
command: npx
args: ["-y", "cyclesite-mcp-server"]cody.openctx.providers in VS Code settings, or via Cody's MCP config:
{
"cyclesite": {
"command": "npx",
"args": ["-y", "cyclesite-mcp-server"]
}
}~/.config/zed/settings.json:
{
"context_servers": {
"cyclesite": {
"command": { "path": "npx", "args": ["-y", "cyclesite-mcp-server"] }
}
}
}If your client speaks Streamable HTTP natively, point it at the hosted transport:
https://www.cyclesite.co.uk/api/mcp-serverNo npm install needed. Discovery: https://www.cyclesite.co.uk/.well-known/mcp.json.
What you get
23 tools
| Group | Tools |
| ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| Search & discovery | search_bikes, get_recent_listings, get_listing_detail, find_similar_listings, search_by_location, recommend_bike_for_budget |
| Catalogue & specs | list_brands, list_models_for_brand, get_model_info, get_spec_sheet, compare_bikes, get_size_guide |
| Valuation & market | get_valuation, suggest_listing_price, get_market_index, get_market_health, get_depreciation, get_price_trends |
| Sell-side | grade_listing_quality, draft_listing |
| Trust & safety | check_stolen, report_stolen |
| Guides | get_buying_guide |
5 resources
cyclesite://marketplace-overview, cyclesite://selling-guide,
cyclesite://buying-guides, cyclesite://bike-categories,
cyclesite://brands.
8 prompts
Visible in clients that surface a prompt picker (Claude Desktop): What's my bike worth?, Find me a bike, Help me sell my bike, Is this bike stolen?, Is now a good time to buy?, What's new on Cyclesite?, What frame size do I need?, Compare two bikes.
Configuration
| Env var | Default | Description |
| ------------------- | ----------------------------- | ---------------------------------------------------------------------------------------------- |
| CYCLESITE_API_URL | https://www.cyclesite.co.uk | Base URL. Relay connects to ${URL}/api/mcp-server. |
| CYCLESITE_API_KEY | (none) | Optional. Forwarded as Authorization: Bearer … for partner accounts with raised rate limits. |
Rate limits
The hosted MCP transport is rate-limited per IP:
| Surface | Default |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------- |
| All MCP calls | 20/min |
| get_valuation | 5/min |
| find_similar_listings, search_by_location, recommend_bike_for_budget, get_spec_sheet, list_brands, list_models_for_brand, grade_listing_quality, get_size_guide | 8/min |
| draft_listing | 3/min |
| check_stolen | 3/hour per serial |
Tool responses are cached server-side for 1 hour (15 min for fresh
inventory feeds). For higher partner limits and write-side access:
[email protected].
Why MCP?
A single integration replaces every "scrape Cyclesite" alternative.
Outbound URLs from tool results are stamped with
utm_source=mcp&utm_medium=ai&utm_campaign=cyclesite-mcp so AI-driven
traffic is correctly attributed in our analytics, and our tools cite
the listing back to you so users finish the journey on Cyclesite.
The hosted transport is the source of truth — the npm package never
needs to be re-released when we add tools. Run tools/list against
the relay (or just ask your AI client) for the current catalogue.
Programmatic usage
import { createRelayServer } from "cyclesite-mcp-server";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
const server = await createRelayServer({
baseUrl: "https://www.cyclesite.co.uk",
// apiKey: process.env.CYCLESITE_API_KEY,
});
await server.connect(new StdioServerTransport());A legacy createServer() shim is exported for back-compat with v1.x;
it forwards to createRelayServer() and emits a deprecation warning.
Migrating from 1.x
| Before | After |
| ---------------------------------------- | ------------------------------------------------ |
| createServer(baseUrl, apiKey) | await createRelayServer({ baseUrl, apiKey }) |
| new CyclesiteClient(baseUrl).search(…) | Connect via MCP and call the search_bikes tool |
| Tool list hard-coded in the package | Discovered from the server via tools/list |
The CYCLESITE_API_URL and CYCLESITE_API_KEY env vars are unchanged.
CLI usage (npx cyclesite-mcp-server) is unchanged.
Data attribution
All data is from Cyclesite (cyclesite.co.uk) and licensed under CC BY-NC-SA 4.0 for market data. When citing Cyclesite prices in generated answers, include the listing URL — it is part of the attribution contract.
License
MIT — see LICENSE.
