Market Intelligence MCP
Stock Exchange of Hong Kong (HKEX) MCP Server
Hong Kong's primary stock market, connecting Chinese and international capital through equities, ETFs, REITs, structured products, and new listings.
MCP Version: 1.0.0 3 MCP Tools Authentication
Base URL
https://mcp.pressmonitor.com/news-xhkg/v1 Authentication
MCP calls also use Bearer tokens over JSON-RPC 2.0 requests.
Authorization: Bearer YOUR_TOKEN Discover Tools
Start by listing the tools exposed by the MCP server.
curl -X POST 'https://mcp.pressmonitor.com/news-xhkg/v1' -H 'Content-Type: application/json' -H 'Authorization: Bearer YOUR_TOKEN' -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' const response = await fetch('https://mcp.pressmonitor.com/news-xhkg/v1', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Authorization': 'Bearer YOUR_TOKEN' }, body: JSON.stringify({ jsonrpc: '2.0', id: 1, method: 'tools/list' }) }); console.log(await response.json()); import requests payload = { 'jsonrpc': '2.0', 'id': 1, 'method': 'tools/list' } response = requests.post( 'https://mcp.pressmonitor.com/news-xhkg/v1', headers={ 'Content-Type': 'application/json', 'Authorization': 'Bearer YOUR_TOKEN' }, json=payload, ) print(response.json()) tool
news_headlines Get news headlines
Get news headlines
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
| code | string | Yes | Entity code (e.g., ticker symbol, industry code) |
| lang_code | string | No | Filter by language code (ISO 639-1) |
| country_code | string | No | Filter by country code (ISO 3166-1 alpha-2) |
| count | string | No | Number of results to return |
| cursor | string | No | Pagination cursor (alternative to search_after) |
Code Examples
curl -X POST 'https://mcp.pressmonitor.com/news-xhkg/v1' -H 'Content-Type: application/json' -H 'Authorization: Bearer YOUR_TOKEN' -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"news_headlines","arguments":{"code":"SOME_STRING_VALUE","lang_code":"SOME_STRING_VALUE","country_code":"SOME_STRING_VALUE","count":20,"cursor":"NEXT_CURSOR"}}}' const payload = { "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "news_headlines", "arguments": { "code": "SOME_STRING_VALUE", "lang_code": "SOME_STRING_VALUE", "country_code": "SOME_STRING_VALUE", "count": 20, "cursor": "NEXT_CURSOR" } } }; const response = await fetch('https://mcp.pressmonitor.com/news-xhkg/v1', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Authorization': 'Bearer YOUR_TOKEN' }, body: JSON.stringify(payload) }); console.log(await response.json()); import requests payload = { "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "news_headlines", "arguments": { "code": "SOME_STRING_VALUE", "lang_code": "SOME_STRING_VALUE", "country_code": "SOME_STRING_VALUE", "count": 20, "cursor": "NEXT_CURSOR" } } } response = requests.post( 'https://mcp.pressmonitor.com/news-xhkg/v1', headers={ 'Content-Type': 'application/json', 'Authorization': 'Bearer YOUR_TOKEN' }, json=payload, ) print(response.json()) tool
news_briefs Get news briefs
Get news briefs
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
| code | string | Yes | Entity code (e.g., ticker symbol, industry code) |
| lang_code | string | No | Filter by language code (ISO 639-1) |
| country_code | string | No | Filter by country code (ISO 3166-1 alpha-2) |
| count | string | No | Number of results to return |
| cursor | string | No | Pagination cursor (alternative to search_after) |
Code Examples
curl -X POST 'https://mcp.pressmonitor.com/news-xhkg/v1' -H 'Content-Type: application/json' -H 'Authorization: Bearer YOUR_TOKEN' -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"news_briefs","arguments":{"code":"SOME_STRING_VALUE","lang_code":"SOME_STRING_VALUE","country_code":"SOME_STRING_VALUE","count":20,"cursor":"NEXT_CURSOR"}}}' const payload = { "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "news_briefs", "arguments": { "code": "SOME_STRING_VALUE", "lang_code": "SOME_STRING_VALUE", "country_code": "SOME_STRING_VALUE", "count": 20, "cursor": "NEXT_CURSOR" } } }; const response = await fetch('https://mcp.pressmonitor.com/news-xhkg/v1', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Authorization': 'Bearer YOUR_TOKEN' }, body: JSON.stringify(payload) }); console.log(await response.json()); import requests payload = { "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "news_briefs", "arguments": { "code": "SOME_STRING_VALUE", "lang_code": "SOME_STRING_VALUE", "country_code": "SOME_STRING_VALUE", "count": 20, "cursor": "NEXT_CURSOR" } } } response = requests.post( 'https://mcp.pressmonitor.com/news-xhkg/v1', headers={ 'Content-Type': 'application/json', 'Authorization': 'Bearer YOUR_TOKEN' }, json=payload, ) print(response.json()) tool
news_fulltext Get full-text news
Get full-text news
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
| code | string | Yes | Entity code (e.g., ticker symbol, industry code) |
| lang_code | string | No | Filter by language code (ISO 639-1) |
| country_code | string | No | Filter by country code (ISO 3166-1 alpha-2) |
| count | string | No | Number of results to return |
| cursor | string | No | Pagination cursor (alternative to search_after) |
Code Examples
curl -X POST 'https://mcp.pressmonitor.com/news-xhkg/v1' -H 'Content-Type: application/json' -H 'Authorization: Bearer YOUR_TOKEN' -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"news_fulltext","arguments":{"code":"SOME_STRING_VALUE","lang_code":"SOME_STRING_VALUE","country_code":"SOME_STRING_VALUE","count":20,"cursor":"NEXT_CURSOR"}}}' const payload = { "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "news_fulltext", "arguments": { "code": "SOME_STRING_VALUE", "lang_code": "SOME_STRING_VALUE", "country_code": "SOME_STRING_VALUE", "count": 20, "cursor": "NEXT_CURSOR" } } }; const response = await fetch('https://mcp.pressmonitor.com/news-xhkg/v1', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Authorization': 'Bearer YOUR_TOKEN' }, body: JSON.stringify(payload) }); console.log(await response.json()); import requests payload = { "jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": { "name": "news_fulltext", "arguments": { "code": "SOME_STRING_VALUE", "lang_code": "SOME_STRING_VALUE", "country_code": "SOME_STRING_VALUE", "count": 20, "cursor": "NEXT_CURSOR" } } } response = requests.post( 'https://mcp.pressmonitor.com/news-xhkg/v1', headers={ 'Content-Type': 'application/json', 'Authorization': 'Bearer YOUR_TOKEN' }, json=payload, ) print(response.json())