list_cities
List supported cities
List the cities with garbage-truck collection data, with their ids and bounding boxes.
Takes no parameters.
dev.yukaiPublished by yukai.devOfficial publisherv0.1.0Updated Oct 25, 2026
Garbage truck stops and arrival times for Taipei, New Taipei, Taichung and Kaohsiung.
Taiwan Garbage Truck Map's hosted MCP server (mcp.garbage.yukai.dev), published by yukai.dev; no sign-in required; Streamable HTTP; 4 tools.
No AI overview yet: these facts come from the registry entry and the server itself.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/dev.yukai%2Ftaipei-trash/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Add this to your client's mcpServers config.
{
"mcpServers": {
"taiwan-garbage-truck-map": {
"type": "http",
"url": "https://mcp.garbage.yukai.dev/mcp"
}
}
}Read-only Model Context Protocol server for the garbage-truck dataset powering garbage.yukai.dev. Built on mcp-handler 2.x and @modelcontextprotocol/server 2.x, exposing a single stateless Streamable HTTP endpoint supporting MCP protocol versions 2025-11-25, 2025-06-18, and 2025-03-26.
The server reuses the web app's city adapters (../src/cities), keeping field mappings identical across the site and MCP responses. Data is fetched from the published JSON files (DATA_BASE_URL, defaulting to https://garbage.yukai.dev) and cached in memory for one hour per warm instance. Cities load lazily on demand (note: Taichung's dataset is ~50 MB, taking ~1 s on cold load and ~400 MB RSS in memory).
All tools are annotated read-only and return structuredContent alongside a plain-text summary. All times are in Asia/Taipei.
For New Taipei and Taichung (whose open data includes weekday schedules), each stop includes a weekly schedule (collectionType → ISO weekdays, 1=Mon … 7=Sun) and a servesToday boolean computed in Taiwan time. Taipei and Kaohsiung do not publish weekday schedules, so those fields are omitted. Unlike the web app's default "today only" view for Taichung, the MCP server loads adapters in allDays mode so agents can answer questions about any day of the week.
Test interactively with MCP Inspector:
Then connect to http://localhost:3939/api/mcp.
This directory is deployed as a standalone Vercel project (taipei-trash-mcp), separate from the GitHub Pages web app. The serverless function is bundled with esbuild at build time (bun run build → api/mcp.js) so that extensionless TypeScript imports in ../src/cities resolve cleanly in Node ESM.
To deploy from the repository root (.vercelignore keeps the upload minimal):
mcp.../src/cities.vercel api /v10/projects/<id>/domains -X POST -F name=mcp.garbage.yukai.dev) and configure the CNAME and _vercel TXT records at your DNS provider.DATA_BASE_URL, MCP_ALLOWED_ORIGINS (comma-separated allowlist for browser clients).mcp-rate-limit: 60 requests/min per IP on /api/mcp and /mcp).Production endpoint: https://mcp.garbage.yukai.dev/mcp (also accessible at /api/mcp; fallback https://taipei-trash-mcp.vercel.app). For stdio-only clients, use npx mcp-remote https://mcp.garbage.yukai.dev/mcp.
/mcp/server-card — MCP Server Card (SEP-2127), served as application/mcp-server-card+json from public/server-card.json./.well-known/ai-catalog.json — AI Catalog entry pointing to the Server Card (also hosted on https://garbage.yukai.dev)./llms.txt — plain-text guide for LLMs.server.json — the official MCP Registry manifest for this remote-only server. It mirrors public/server-card.json (same name, version, title, description, repository and remote URL) so the two never disagree.
Publish it with the official CLI (namespace dev.yukai/* requires DNS or HTTP verification of yukai.dev — GitHub OAuth only grants io.github.*/*):
Step-by-step submission notes for the official registry, Smithery, Glama, PulseMCP, mcp.so and awesome-remote-mcp-servers (including the copy to paste and the manual account/DNS steps) live in docs/mcp-directory-submission.md.
Origin header are rejected with 403 unless the origin is listed in MCP_ALLOWED_ORIGINS, per the MCP transport specification. Native and server-side clients do not send an Origin header.Source: mcp/README.md at commit d11d646
List supported cities
List the cities with garbage-truck collection data, with their ids and bounding boxes.
Takes no parameters.
Find nearby collection points
Find garbage-truck stops near a coordinate in Taipei, New Taipei, Taichung or Kaohsiung, nearest first, with arrival times. Searches every city whose area overlaps the radius unless `city` is given.
latrequiredlngrequiredcitylimitradiusMetersSearch collection points by name
Search one city's stops by district, village, location or route text (Traditional Chinese). All space-separated terms must match, e.g. "大安區 安和路".
cityrequiredlimitqueryrequiredGet a stop and its route schedule
Get one collection point by id (from find_nearby_points or search_points) plus every stop on the same route in arrival order.
pointIdrequired100% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
cd mcpbun installbun test # query logic + adapter schedule testsbun run typecheckbun dev.ts # http://localhost:3939/api/mcpnpx @modelcontextprotocol/inspectormcp-publisher validate server.jsonmcp-publisher login dns --domain yukai.dev --private-key "$PRIVATE_KEY"mcp-publisher publish server.json