Content
# mcp-hko (Hong Kong Observatory MCP Server)
This MCP server provides access to Hong Kong Observatory weather data APIs.
It implements various tools that allow clients to retrieve weather forecasts, earthquake information, tide data, and other meteorological information through the Model Context Protocol.
## Available Weather Data Tools
- 9-day Weather Forecast (**fnd**)
- Current Weather Report (**rhrread**)
- Local Weather Forecast (**flw**)
- Weather Warning Information (**warningInfo**)
- Weather Warning Summary (**warnsum**)
- Special Weather Tips (**swt**)
- Quick Earthquake Messages (**qem**)
- Locally Felt Earth Tremor Report (**feltearthquake**)
- Tide Information (**HHOT, HLT**)
- Astronomical Data (**SRS, lunardate**)
- Lightning and Visibility Data (**LHL, LTMV**)
- Temperature Records (**CLMTEMP, CLMMAXT, CLMMINT**)
- Radiation Level Reports (**RYES**)
- Rainfall Data (**hourlyrainfall**)
## Usage Examples
### Get 9-day weather forecast
> **prompt:**
>
> what is the weather in next Wed ?
### Get current weather report
> **prompt:**
>
> what is the weather now ?
## Development Setup
1. Install dependencies:
```bash
npm install
```
2. Start the MCP development server:
```bash
npm run inspect
```
3. Build the MCP server:
```bash
npm run build
```
4. Run tests:
```bash
npm test
```
5. Run tests in watch mode:
```bash
npm run test:watch
```
Comprehensive tests have been created for all API functions. See [docs/TESTING.md](docs/TESTING.md) for details.
## Configuration (Claude Desktop)
```json
{
"mcpServers": {
"mcp-hko": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"github:louiscklaw/mcp-hko"
]
}
}
}
```
## Configuration (docker)
```json
{
"mcpServers": {
"mcp-hko-docker": {
"command": "docker",
"args": ["run", "-i", "--rm", "mcp-hko:latest"],
"name": "mcp-hko (Docker)",
}
}
}
```
## Project Structure
- `src/` - Server source code
- `src/lib/` - API implementation modules
- `documentation/` - API documentation and test cases
- `scripts/` - Development utilities
- `src/tests/` - Test files
## Server Architecture
The MCP server is built on the FastMCP framework and implements various tools that correspond to Hong Kong Observatory APIs.
The architecture is shown in two diagrams for better readability:
### Server Overview
### Detailed Tool Structure
#### REQ01xx: Weather Forecasts & Warnings
```mermaid
flowchart TD
subgraph REQ01xx[Weather Forecasts & Warnings]
direction BT
B1[9-day Forecast]
B2[Current Weather]
B3[Local Forecast]
B4[Warning Info]
B5[Warning Summary]
B6[Special Weather Tips]
end
```
#### REQ02xx: Earthquake Information
```mermaid
flowchart TD
subgraph REQ02xx[Earthquake Information]
C1[Quick Earthquake]
C2[Felt Earthquake]
end
```
#### REQ03xx: Tides, Astronomy & Climate
```mermaid
flowchart TD
subgraph REQ03xx[Tides, Astronomy & Climate]
D1[Tide: HHOT]
D2[Tide: HLT]
D3[Sunrise/Sunset: SRS]
D4[Lightning: LHL]
D5[Visibility: LTMV]
D6[Temperature: CLMTEMP]
D7[Max Temperature: CLMMAXT]
D8[Min Temperature: CLMMINT]
D9[Radiation: RYES]
end
```
#### REQ04xx: Lunar Calendar
```mermaid
flowchart TD
subgraph REQ04xx[Lunar Calendar]
E1[Lunar Date]
end
```
#### REQ05xx: Rainfall
```mermaid
flowchart TD
subgraph REQ05xx[Rainfall]
F1[Hourly Rainfall]
end
```
## Credits:
- [mcp-hk-transport-eta](https://github.com/kennyfong19931/mcp-hk-transport-eta)
Connection Info
You Might Also Like
everything-claude-code
Complete Claude Code configuration collection - agents, skills, hooks,...
markitdown
MarkItDown-MCP is a lightweight server for converting URIs to Markdown.
servers
Model Context Protocol Servers
servers
Model Context Protocol Servers
Time
A Model Context Protocol server for time and timezone conversions.
Filesystem
Node.js MCP Server for filesystem operations with dynamic access control.