Skip to main content
Glama
OctHex2016

HongKongAddressMCP

by OctHex2016

Address MCP Server

A Model Context Protocol (MCP) server for Hong Kong address lookup and correction using the Address Lookup Service (ALS) open data from the HKSAR Government.

Features

  • Fuzzy address matching — Corrects typos in building names, street names, estate names (Chinese & English)

  • Structured input parsing — Parses the standard HK address form format (室/層/樓/大廈名稱/街名及街號/地區)

  • Free-text search — Search by any combination of address fields

  • Bilingual — Full support for Traditional Chinese and English addresses

  • LLM-powered correction — Uses Dify LLM API to compose the final corrected full address

  • Offline fallback — Falls back to local-only matching if LLM is unavailable

  • GeoAddress & Coordinates — Returns GeoAddress identifiers and WGS84 coordinates

Related MCP server: Hong Kong Open Data MCP Server

Data Source

Uses the ALS GeoJSON files (18 district files) from DATA.GOV.HK:

  • als_addresses_(district_name).geojson — One file per District Council district

Tools

check_address

Look up and correct a Hong Kong address using structured fields.

Parameters:

Field

Description

Example

buildingName

Building name (大廈名稱)

其士商業中心

streetName

Street name (街名)

宏開道

buildingNo

Street number (街號)

8

estateName

Estate name (屋邨/屋苑)

德福花園

villageName

Village name (村)

三家村

district

District (地區)

九龍灣

region

Region (地區選項)

九龍 / KLN

floor

Floor (層)

8

unit

Unit/Room (室)

215

parse_and_check_address

Parse a structured Chinese address form and look up/correct it.

Input example:

室:215
層:8
樓:(未填寫)
大廈名稱:科士商業中心
屋邨/屋苑/村:(未填寫)
街名及街號:宏開道 8號
地區:九龍灣
地區選項:已勾選 九龍

Output: Identifies that "科士商業中心" should be "其士商業中心" (CHEVALIER COMMERCIAL CENTRE).

correct_address ⭐ (Recommended)

The main tool — parses, looks up, and corrects an address using ALS open data + Dify LLM. Returns the final corrected full address.

Parameters:

Field

Description

address

Any address text — structured form or free text (Chinese/English)

Example output:

CHINESE: 九龍觀塘區宏開道8號其士商業中心8樓215室
ENGLISH: Unit 215, 8/F, CHEVALIER COMMERCIAL CENTRE, 8 WANG HOI ROAD, KWUN TONG DISTRICT, KLN
GEOADDRESS: 3981120257T20050430
CORRECTIONS: 大廈名稱: "科士商業中心" → "其士商業中心" (CHEVALIER COMMERCIAL CENTRE)

search_address_by_text

Free-text search for addresses.

Parameters:

Field

Description

query

Free-text query (Chinese or English)

maxResults

Max results (default: 5)

Setup

Install dependencies

npm install

Configure Environment Variables

Copy the example environment file and update with your credentials:

cp .env.example .env

Edit .env to set your Dify API credentials:

DIFY_API_KEY=your-api-key-here
DIFY_API_ENDPOINT=https://your-dify-endpoint.com/v1

Note: The .env file is gitignored to protect your credentials.

Run as MCP server

node index.js

Configure in your MCP client

Add to your MCP settings (e.g. ~/.cursor/mcp.json or Windsurf MCP config):

{
  "mcpServers": {
    "address-mcp": {
      "command": "node",
      "args": ["/Users/hillmantam/AddressMCP/index.js"]
    }
  }
}

Environment Variables Reference

Variable

Required

Description

DIFY_API_KEY

Yes

Your Dify API key

DIFY_API_ENDPOINT

Yes

Your Dify API base URL (e.g., https://your-endpoint.com/v1)

Run tests

npm test

Example Correction

Input: 科士商業中心 at 宏開道 8號, 九龍灣

Output:

  • ⚠️ 大廈名稱: "科士商業中心" → "其士商業中心" (CHEVALIER COMMERCIAL CENTRE)

  • Correct address: 九龍觀塘區宏開道8號其士商業中心

  • GeoAddress: 3981120257T20050430

  • Coordinates: 22.32133, 114.21127

Architecture

User Input → Parse structured fields → Fuse.js fuzzy search (local GeoJSON)
                                          ↓
                                    Top 5 candidates
                                          ↓
                                    Dify LLM API → Final corrected address
                                          ↓
                              (Fallback: local-only if LLM fails)
  • Fuse.js — Fuzzy string matching for Chinese and English text

  • Dify LLM — AI-powered address correction and formatting

  • MCP SDK — Standard Model Context Protocol server over stdio

  • GeoJSON — All 18 district files loaded into memory with indexed search

F
license - not found
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/OctHex2016/HongKongAddressMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server