DragonMCP is a Model Context Protocol (MCP) server designed for AI Agents, with the goal of providing interfaces for local life services in Mainland China, Hong Kong, China, and the Asian region.
Purpose and Positioning It enables AI Agents to obtain real, verifiable public data from Hong Kong and the border areas of Mainland China. The project team emphasizes that every tool in the server calls a live online API, with no simulated data; if an upstream data source is unavailable, the tool will clearly report it as unavailable rather than fabricating a plausible-sounding answer. Users can use the built-in system_run_selftest tool at any time to check whether each upstream is reachable.
Main Capabilities
- Hong Kong MTR real-time arrivals: no API Key required, covering all 10 lines—Island Line, Tsuen Wan Line, Kwun Tong Line, Tseung Kwan O Line, East Rail Line (extending to Lo Wu and Lok Ma Chau), Tuen Ma Line, South Island Line, Tung Chung Line, Airport Express, and Disneyland Resort Line; station names support English or Chinese input.
- Hong Kong Observatory weather: no API Key required, including active weather warnings.
- AMap-related tools: require the user to provide their own AMAP_API_KEY, and cover only Mainland China.
How to Use Prerequisite is Node.js >= 18. Hong Kong-related tools do not require a .env file; when using AMap tools, copy the template and fill in your own key. When connecting to Claude Desktop, add the configuration in claude_desktop_config.json; if Mainland China tools are needed, also add "env": { "AMAP_API_KEY": "your_key" }. It can also be run in stdio mode, with stdin/stdout carrying MCP JSON-RPC and diagnostic information going to stderr to keep the protocol stream clean. The project plans to publish to npm so that npx dragon-mcp can be used without cloning and without a key.
Limitations (officially and explicitly listed)
- Route planning aims at the fewest transfers rather than the shortest time; because there is no public inter-station travel time, what is optimized is the measurable number of transfers, so there will occasionally be exceptions where a two-transfer route is faster than a one-transfer route.
- Real-time arrivals cover only the boarding segment; lacking travel time, it is impossible to estimate the time of arrival at transfer stations, so arrival information is not provided for subsequent segments.
- Two stations have no real-time data source: Tin Hau and Prince Edward. Route planning passing through them is available, but arrival information will be reported as unavailable,rather than fabricated.
- AMap tools require your own key and cover only Mainland China.
- Cross-border trip planning has not yet been implemented; the East Rail Line can reach border stations, but fully stitching together a Hong Kong→Shenzhen trip is still in Phase 2 of the roadmap.
Architecture and Roadmap Phase 1: Traceable sources and zero configuration—each tool response carries source, fetched_at, freshness; publish to npm; daily CI self-check and provide a status badge. Phase 2: Cross-border—MTR transfer planning, border crossings, Guangzhou-Shenzhen-Hong Kong Express Rail Link, Airport Express integration, and a single call to plan_cross_border_trip spanning both sides of the border. Phase 3: Cover more data.gov.hk sources (bus/ferry ETA, typhoon signals, air quality).
Project Principles Do not accept simulated tools: a tool that returns fabricated data is worse than a missing tool, because the Agent cannot tell the difference. If an upstream API is unavailable, the correct approach is not to register that tool.
License and Acknowledgments The project uses the MIT license; see LICENSE for details. Acknowledgments to Anthropic (Model Context Protocol), MTR Corporation and data.gov.hk (open real-time transportation API), Hong Kong Observatory (open weather API), and AMap (maps and routing).