Skip to main content
Glama
agentladle

mcp-hkexnews

by agentladle

AgentLadle MCP HKEXnews

Englisch | 中文

🇨🇳/🇭🇰 Cloud-gehosteter MCP für A-Aktien- und HK-notierte Unternehmen (letzte 3 Jahre Jahres- und neueste Zwischenberichte). Mehr erfahren | API-Schlüssel erhalten

Ein MCP (Model Context Protocol)-Server, der Werkzeuge zum Entdecken, Herunterladen, Parsen und Durchsuchen von Ankündigungen Hongkong-notierter Unternehmen von HKEXnews bereitstellt.

Er ermöglicht KI-Assistenten (Claude, Cursor usw.) den Zugriff auf HKEXnews-Ankündigungsdaten über 6 strukturierte Werkzeuge – vom Entdecken verfügbarer Ankündigungen bis zur Stichwortsuche in deren Seiten.

Umfang (v0.1): Ankündigungen und Offenlegungen außer vollständigen periodischen Berichts-PDFs (Jahres-/Zwischen-/Quartalsbericht und ESG-Bericht unter t1=40000). Leistungsankündigungen (Final-/Zwischen-/Quartalsergebnisse) sind enthalten.

Funktionen

  • 6 MCP-Werkzeuge für HKEXnews-Ankündigungsdaten: zustandsgesteuerter Abruf (direkt suchen, nur bei Bedarf auf Download/Parse zurückgreifen)

  • PDF-Dokumentanalyse mit PyMuPDF – physische Seitenextraktion in seitenaufgeteiltes JSON

  • Lokale Stichwortsuche mit TF- und Positions-Boost-Bewertung, keine externen Suchabhängigkeiten

  • Idempotent – bereits heruntergeladene/geparste Dateien werden automatisch übersprungen

  • Null-Konfigurationsinstallation – eine Zeile zum Hinzufügen zum MCP-Client, kein Klonen oder manuelles Setup erforderlich

  • Reines Python, plattformübergreifend (Windows / macOS / Linux)

Related MCP server: sfc-data-mcp

Voraussetzungen

Hinweis: Starten Sie nach der Installation von uv Ihr Terminal und den MCP-Client (z. B. Cherry Studio) neu, um sicherzustellen, dass der Befehl uv erkannt wird.

Schnellstart

Fügen Sie Folgendes zu Ihrer MCP-Client-Konfiguration hinzu (Claude Desktop, Cursor usw.):

{
  "mcpServers": {
    "mcp-hkexnews": {
      "command": "uvx",
      "args": ["agentladle-mcp-hkexnews"]
    }
  }
}

Das war's. uvx lädt das Paket und seine Abhängigkeiten automatisch von PyPI herunter – kein Klonen, keine manuelle Installation, keine Pfadkonfiguration.

Alternative: pip install

Wenn Sie die Umgebung lieber selbst verwalten:

pip install agentladle-mcp-hkexnews

Dann konfigurieren:

{
  "mcpServers": {
    "mcp-hkexnews": {
      "command": "agentladle-mcp-hkexnews"
    }
  }
}

Alternative: Aus dem Quellcode ausführen (lokale Entwicklung)

Repository klonen und direkt ausführen:

git clone https://github.com/agentladle/mcp-hkexnews.git

Dann konfigurieren Sie Ihren MCP-Client:

{
  "mcpServers": {
    "mcp-hkexnews": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/mcp-hkexnews", "agentladle-mcp-hkexnews"]
    }
  }
}

Ersetzen Sie /path/to/mcp-hkexnews durch den tatsächlichen Pfad zum geklonten Repository.

Datenfluss

HKEXnews API                      Local Files (~/.agentladle/mcp-hkexnews/data/)
──────────────                    ──────────────────────────────
activestock_sehk_e.json  ──→     companies.json               (stock_code→stockId mapping)
ListOfSecurities.xlsx      ──→         │
tierone/tiertwo JSON       ──→     tiers.json                   (headline category mapping)
                                     │
titleSearchServlet.do    ──→        pdf/{LOCAL_KEY}/            (Tool 2: primary PDF/HTML + manifest)
                                     │
PyMuPDF parsing          ──→        json/*.json                 (Tool 3: parse, page-split)
                                     │
Local TF search          ──→        search results              (Tool 4: keyword search)
Page range read          ──→        page content                (Tool 5: read pages)

Werkzeuge

#

Werkzeug

Beschreibung

1

list_hkexnews_announcements

Verfügbare HKEXnews-Ankündigungen für ein Unternehmen entdecken

2

download_hkexnews_announcement

Ankündigungs-PDF herunterladen (HTML-Fallback); idempotent

3

parse_hkexnews_announcement

PDF/HTML in seitenaufgeteiltes JSON mit PyMuPDF parsen

4

keyword_search

Volltext-Stichwortsuche mit TF-Relevanzbewertung

5

get_announcement_pages

Ankündigungsinhalt nach Seitennummernbereich lesen

6

lookup_stock_code

Diagnose: stock_code→stockId-Zuordnung nachschlagen, wenn die Auflösung fehlschlägt

Werkzeug 1: list_hkexnews_announcements

Verfügbare HKEXnews-Ankündigungen für ein Unternehmen auflisten. Verwenden Sie dieses Werkzeug NUR, wenn das genaue Datum/der genaue Titel vom Benutzer nicht angegeben ist oder wenn ein Downloadversuch aufgrund einer mehrdeutigen Übereinstimmung fehlschlägt. Schließt vollständige periodische Berichts-PDFs aus (Jahres-/Zwischen-/Quartalsbericht und ESG-Bericht unter t1=40000).

Parameter

Typ

Erforderlich

Beschreibung

stock_code

string

5-stelliger HK-Aktiencode, z. B. "00700"

category

string

HKEX-t1/t2-Code oder Ebenenname, z. B. "Inside Information", "13500", "20000". Weglassen, um alle relevanten Kategorien aufzulisten

start_date

string

Startdatum YYYY-MM-DD

end_date

string

Enddatum YYYY-MM-DD

title_keyword

string

Titel-Stichwortfilter

limit

int

Maximale Anzahl zurückzugebender Ankündigungen, Standard 10, max. 50

Werkzeug 2: download_hkexnews_announcement

Eine bestimmte HKEXnews-Ankündigung von www1.hkexnews.hk herunterladen. Bevorzugen Sie local_key aus list_hkexnews_announcements, wenn verfügbar. Idempotent.

Parameter

Typ

Erforderlich

Beschreibung

stock_code

string

5-stelliger HK-Aktiencode, z. B. "00700"

release_date

string

Veröffentlichungsdatum YYYY-MM-DD (optional, wenn local_key angegeben)

title_keyword

string

Titel-Teilstring zur Disambiguierung gleichnamiger Ankündigungen

category

string

Optionaler Kategoriefilter

news_id

string

HKEXnews NEWS_ID, falls bekannt

local_key

string

Exakter lokaler Bundle-Schlüssel aus Listenergebnissen

Werkzeug 3: parse_hkexnews_announcement

Eine heruntergeladene Ankündigungs-PDF/HTML in seitenaufgeteiltes JSON parsen. Verwendet PyMuPDF für die physische Seitentextextraktion von PDFs.

Parameter

Typ

Erforderlich

Beschreibung

local_key

string

Bundle-Schlüssel, der von Liste/Download zurückgegeben wird, z. B. "00700_13500_2026-03-15_a1b2c3d4"

Werkzeug 4: keyword_search

Volltext-Stichwortsuche über alle Seiten. Ergebnisse nach TF- und Positions-Boost-Bewertung sortiert.

Parameter

Typ

Erforderlich

Beschreibung

local_key

string

Bundle-Schlüssel

keywords

string[]

1–5 Suchstichwörter

match_mode

string

"ANY" (Standard, jedes Stichwort passt) / "ALL" (alle müssen passen)

max_results

int

Maximale Anzahl zurückzugebender Ergebnisse, Standard 5, max. 50

Werkzeug 5: get_announcement_pages

Vollständigen Seiteninhalt nach Seitennummernbereich lesen.

Parameter

Typ

Erforderlich

Beschreibung

local_key

string

Bundle-Schlüssel

start_page

int

Startseitennummer (1-basiert)

page_count

int

Anzahl der zurückzugebenden Seiten, Standard 3, max. 5

Werkzeug 6: lookup_stock_code

Diagnosewerkzeug: stock_code→stockId-Zuordnung nachschlagen. Nur verwenden, wenn download_hkexnews_announcement / list_hkexnews_announcements Stock code not found zurückgibt. Umgeht den Cache für fehlgeschlagene Codes der Sitzung.

Parameter

Typ

Erforderlich

Beschreibung

stock_code

string

5-stelliger HK-Aktiencode, z. B. "00700"

refresh

bool

Erneutes Herunterladen der HK-Unternehmenszuordnungen erzwingen (Standard: false)

Konfiguration

Beim ersten Start wird eine Standardkonfigurationsdatei unter ~/.agentladle/mcp-hkexnews/config.yaml erstellt:

paths:
  data_dir: "~/.agentladle/mcp-hkexnews/data"
  pdf_dir: "~/.agentladle/mcp-hkexnews/data/pdf"
  json_dir: "~/.agentladle/mcp-hkexnews/data/json"

download:
  delay_between_requests: 0.3
  min_file_size: 500
  list_row_range: 100
  list_max_pages: 5

company:
  cache_ttl_days: 7

tiers:
  cache_ttl_days: 7

Datenverzeichnisstruktur

~/.agentladle/mcp-hkexnews/
├── config.yaml                        # Configuration (auto-created)
└── data/
    ├── companies.json                 # stock_code→stockId mapping (auto-downloaded & cached)
    ├── tiers.json                     # HKEX headline category mapping (auto-downloaded & cached)
    ├── pdf/                           # Downloaded announcement bundles
    │   ├── 00700_13500_2026-03-15_a1b2c3d4/
    │   │   ├── primary.pdf
    │   │   └── manifest.json
    │   └── ...
    └── json/                          # Parsed page-split JSON
        ├── 00700_13500_2026-03-15_a1b2c3d4.json
        └── ...

Dateibenennungskonvention: {STOCK_CODE}_{T2_CODE}_{RELEASE_DATE}_{ID_HASH}

Beispielverwendung

Die Werkzeuge sind mit einem EAFP (Easier to Ask for Forgiveness than Permission)-Ansatz konzipiert. KI-Assistenten sollten versuchen, Daten direkt abzurufen und sich auf Fehler verlassen, um Downloads auszulösen.

Szenario A: Datei bereits lokal vorhanden (kürzester Weg)

User: "Search 00700 inside information for buyback"

1. keyword_search(local_key="00700_50100_2026-07-09_a1b2c3d4", keywords=["buyback", "repurchase"])
   → Returns page snippets matching the keywords immediately.

Szenario B: Datei fehlt (Fallback ausgelöst)

User: "What did Tencent announce in its latest inside information?"

1. list_hkexnews_announcements(stock_code="00700", category="Inside Information", limit=3)
   → Returns local_key / release_date / title.

2. keyword_search(local_key="...", keywords=["inside information"])
   → Error: File not found.

3. download_hkexnews_announcement(stock_code="00700", local_key="...")
   → Downloads PDF to ~/.agentladle/mcp-hkexnews/data/pdf/

4. parse_hkexnews_announcement(local_key="...")
   → Parses into JSON.

5. keyword_search(local_key="...", keywords=["inside information"])
   → Retries search and returns data.

Technologie-Stack

Komponente

Wahl

Zweck

MCP-Framework

mcp (FastMCP)

MCP-Server mit stdio-Transport

HTTP-Client

httpx

HKEXnews-API-Anfragen & Dateidownloads

PDF-Analyse

pymupdf + beautifulsoup4

PDF-Seitentextextraktion; HTML-Fallback

Suche

Python-eingebaut

TF- und Positions-Boost-Bewertung

Konfiguration

pyyaml

YAML-Konfigurationsdatei

Wertpapierliste

openpyxl

HKEX ListOfSecurities.xlsx parsen

Projektstruktur

src/mcp_hkexnews/
├── __init__.py
├── server.py                 # MCP Server entry point
├── config.py                 # Config loading (~/.agentladle/mcp-hkexnews/config.yaml, singleton cached)
├── models.py                 # Data models
├── categories.py             # Announcement category blacklist
├── response.py               # Unified JSON responses
├── instances.py              # Service singletons
├── tools/
│   ├── list_announcements.py # Tool 1: list_hkexnews_announcements
│   ├── download.py           # Tool 2: download_hkexnews_announcement
│   ├── parse.py              # Tool 3: parse_hkexnews_announcement
│   ├── search.py             # Tool 4: keyword_search
│   ├── page.py               # Tool 5: get_announcement_pages
│   └── lookup.py             # Tool 6: lookup_stock_code
└── services/
    ├── company.py            # HKEX activestock + ListOfSecurities + stock_code→stockId
    ├── tiers.py              # HKEX tierone/tiertwo category cache
    ├── downloader.py         # HKEXnews titleSearch + PDF download
    ├── parser.py             # PDF/HTML→JSON parsing (PyMuPDF)
    ├── searcher.py           # Local JSON search + TF scoring
    └── keys.py               # local_key helpers

Lizenz

MIT

Install Server
A
license - permissive license
A
quality
C
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.

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP server for Japan's TDnet (Timely Disclosure network). Search and retrieve timely disclosure documents from listed companies on Japanese stock exchanges.
    5
    Apache 2.0
  • F
    license
    Not graded
    quality
    D
    maintenance
    MCP server that wraps SFC financial data API into 32 tools for comprehensive A-share market data, including real-time quotes, rankings, limit-up statistics, news, themes, financials, charts, research reports, and watchlists.
  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP server for analyzing SEC filings (10-K, 10-Q, 8-K) with industry-aware financial extraction and BERT-based NLP.
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • Official Octoparse MCP server for template discovery, cloud tasks, and structured data export.

  • Markdown-first MCP server for Notion API with 8 composite tools and 39 actions.

  • All HasData scraping tools in one MCP server: Google, TikTok, Instagram, maps, e-commerce and more.

View all MCP Connectors

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/agentladle/mcp-hkexnews'

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