accueil / serveurs / Recherche & Web / io.github.taux-io/twse-mcp
io.github.taux-io/twse-mcp
serveur MCP (Model Context Protocol) · taiwan-market-open-data 0.15.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que io.github.taux-io/twse-mcp est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.taux-io/twse-mcp » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 10 outils
- dataset.describe≈ 352 tokens
Show one dataset's definition: id, source (TWSE or TAIFEX), summary, tags, and every field key with its Chinese description. The where, sort_by, fields and match parameters of dataset.get take these field keys. Reads the local catalog only, so it has no row counts or dates. 查看某個資料集的定義:代號、來源(證交所或期交所)、中文說明、分類標籤,以及每個欄位的鍵名與中文說明。dataset.get 的 where、sort_by、fields、match 都要用這裡的鍵名(例如 PEratio),不是中文說明。只讀本機目錄、不抓上游,所以不含資料筆數或最新日期。代號不存在時回 error,請先用 dataset.search 找。
Paramètres, retour & exemple (1)
Paramètresdataset_id· string · requis
來自 dataset.search 的資料集代號,例如 "exchangeReport/STOCK_DAY_ALL"。
Exemple d'appel{"name": "dataset.describe", "arguments": {"dataset_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"id": "texte", "tags": [], "fields": {}, "source": "twse", "summary": "texte"}} - dataset.get≈ 883 tokens
Fetch rows from a TWSE OpenAPI or TAIFEX OAS dataset. Find the dataset_id with dataset.search first; do not guess it, since each metric lives in its own table. Supports server-side filtering (code is an exact match; match and where), sorting, field selection and paging: 30 rows by default, 200 at most. For rankings and screens (top 10 by dividend yield, P/E below 10) use where and sort_by instead of paging through rows. Most daily tables hold the previous trading day's after-close data, not live prices; the response note states the period. Data is republished under Taiwan's Open Government Data License. 取得證交所或期交所資料集內容,支援伺服器端過濾、欄位投影與分頁。上游每個資料集都是整份回傳(可能上萬筆),這支工具預設只回前 30 筆(上限 200);用 code/match/where/fields 縮小到需要的範圍。排名與篩選(殖利率最高的前 20 檔、本益比低於 10 的股票)用 where + sort_by,不要自己翻頁比大小。漲幅榜、跌幅榜與漲停家數用 snapshot.movers:日成交資訊沒有漲跌幅%,依漲跌額排會讓高價股永遠排前面。
Paramètres, retour & exemple (9)
Paramètrescode· string · optionnel
證券/基金/契約代號,例如 "0050"、"TX"。一律精確比對(不分大小寫),實際用了哪個欄位會回在 code_field_used。找不到完全相符的代號時回 0 筆,並在 code_candidates 給出拼法相近的代號——**那些是候選不是答案**,可能是不同商品(MXF 與 MXFFX 是不同契約),請確認後改用該代號重查,不要直接引用它們的數字。limit· integer · optionnel
回傳筆數上限(硬上限 200)。match· object · optionnel
其他欄位的子字串過濾,例如 {"基金類型": "ETF"}。最多 20 個欄位。order· string · optionnel · desc | asc
"desc"(大到小,預設)或 "asc"。where· array · optionnel
數值條件,全部都要成立。例如本益比低於 10、殖利率至少 5%:[{"field":"PEratio","op":"lt","value":10},{"field":"DividendYield","op":"gte","value":5}]。欄位值會去逗號轉數字;空值或非數字(例如虧損公司的本益比)無法比較,會被排除並回報筆數。fields· array · optionnel
只回傳這些欄位。offset· integer · optionnel
分頁位移。sort_by· string · optionnel
依這個欄位排序,在分頁之前做——要「前 N 名」就用它配 limit。多數值是數字就依數值排,否則依字串排;空值與非數字一律排最後。dataset_id· string · requis
資料集代號,例如 "exchangeReport/STOCK_DAY_ALL"。
Exemple d'appel{"name": "dataset.get", "arguments": {"dataset_id": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"data": [], "note": "texte", "offset": 1, "source": "texte", "summary": "texte", "returned": 1, "dataset_id": "texte", "rows_matched": 1, "rows_in_source": 1}} - dataset.search≈ 406 tokens
Search the catalog of Taiwan Stock Exchange (TWSE) OpenAPI and Taiwan Futures Exchange (TAIFEX) OAS datasets and get the dataset_id to fetch. Reads a local catalog (no upstream call). Keywords may be Chinese or English, separated by spaces; every keyword must match. 搜尋臺灣證交所與期交所 OpenAPI 有哪些資料集可用。取資料前先用這個找 dataset_id。範圍比股票廣:還有公司治理、ESG、財報、權證、券商、期貨與選擇權,以及期交所的每日外幣參考匯率——覺得「交易所大概沒有這種資料」時,先搜再下結論。會比對資料集代號、中文說明與欄位名稱;多個關鍵字用空白分隔(每個都要命中),結果依相關度排序。期交所的資料集代號一律以 taifex/ 開頭,搜期貨與選擇權可用 tag="期貨與選擇權"。
Paramètres, retour & exemple (3)
Paramètrestag· string · optionnel
依分類過濾,例如 "證券交易"、"公司治理"、"財務報表"。limit· integer · optionnel
最多回傳幾筆(預設 25)。query· string · optionnel
關鍵字,例如 "ETF"、"融資"、"三大法人 期貨"。留空列出全部。
Exemple d'appel{"name": "dataset.search", "arguments": {"tag": "texte", "limit": 1, "query": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"results": [], "total_matched": 1}} - quote.lookup≈ 390 tokens
Find the code of a TWSE-listed company or fund (including ETFs) from its name or code, e.g. 台積電 → 2330. Use it first when the user gives only a name. English matching covers the exchange's English short names (TSMC, UMC, MediaTek) and fund English names, not full company names; if an English name finds nothing, try its short form or the Chinese name. Listed (TWSE) securities only. Source: TWSE OpenAPI. 用名稱或代號找上市公司與上市基金(含 ETF)的代號。使用者只講名稱(「台積電」「元大高股息」)時先用這個取得代號,不要憑印象猜代號。比對公司簡稱、全名、英文簡稱與代號,不分全半形與台/臺。只收上市標的;上櫃公司的名稱對照取不到。
Paramètres, retour & exemple (2)
Paramètreslimit· integer · optionnel
最多回傳幾筆(預設 10,上限 50)。query· string · requis
名稱或代號,例如 "台積電"、"TSMC"、"高股息"、"2330"。
Exemple d'appel{"name": "quote.lookup", "arguments": {"query": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"query": "texte", "source": "texte", "caveats": [], "results": [], "total_matched": 1}} - quote.realtime≈ 371 tokens
Intraday quotes, refreshed about every 5 seconds, for up to 50 TWSE-listed (market="tse") or OTC (market="otc") codes; each quote carries the trading date it belongs to. Source: the TWSE Market Information System (mis.twse.com.tw), which is not covered by the Open Government Data License. 取得盤中即時報價(約 5 秒更新一次),每筆帶 date(報價所屬交易日)。OpenAPI 只有前一交易日資料,要當下的價格得走基本市況報導站。ETF 與上市股票用 market="tse",上櫃用 "otc"。
Paramètres, retour & exemple (2)
Paramètrescodes· array · requis
代號清單,例如 ["0050", "0056", "2330"]。market· string · optionnel · tse | otc
"tse"(上市)或 "otc"(上櫃)。
Exemple d'appel{"name": "quote.realtime", "arguments": {"codes": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"count": 1, "units": "texte", "quotes": [], "source": "texte", "caveats": []}} - snapshot.etf≈ 502 tokens
One TWSE-listed ETF in a single call: fund profile, the previous trading day's price and volume, and regular-savings (定期定額) popularity. Source: TWSE OpenAPI, updated after each trading day; not live. A section that cannot be fetched comes back null with a caveat. 一次取得單一上市 ETF 的完整概況:基本資料 + 前一交易日價量 + 定期定額熱度。價量為前一交易日,不是盤中即時;要當下價格請用 quote.realtime。合併三個證交所資料集並行查詢。任何一段查不到都會標成 null 並記在 caveats,不會整個失敗。
Paramètres, retour & exemple (2)
Paramètrescode· string · requis
ETF 代號,例如 "0056"、"0050"、"00878"。include_realtime· boolean · optionnel
是否附上盤中即時報價。預設 false,需要當下價格時才帶 true(多一次外呼)。
Exemple d'appel{"name": "snapshot.etf", "arguments": {"code": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"code": "texte", "name": "texte", "quote": "texte", "is_etf": true, "source": "texte", "caveats": [], "derived": "texte", "profile": "texte", "realtime": "texte", "regular_savings": "texte"}} - snapshot.futures≈ 580 tokens
One TAIFEX futures contract for the latest trading day: open, high, low, close, change, volume, settlement and open interest for each contract month (regular and after-hours sessions), a near-month summary, institutional and large-trader positions, and final settlement prices. Accepts codes ("TX", "MTX") or Chinese names; an ambiguous name returns candidates only. Source: TAIFEX OAS; futures only; not live. 一個期貨契約(最新一個交易日)的完整概況:各月份的開高低收、漲跌、成交量、結算價、未平倉(一般與盤後時段)、近月摘要、三大法人部位(指數類期貨)、大額交易人部位與最後結算價。可用代號("TX"、"MTX"、"TMF"、"CDF")或名稱("台指期"、"小台"、"台積電期貨");名稱對到多個契約時只回 candidates,請向使用者確認再用代號重查。只含期貨;選擇權與整體期貨籌碼請用 dataset.search 或 snapshot.market。
Paramètres, retour & exemple (1)
Paramètrescontract· string · requis
期貨契約代號或名稱,例如 "TX"、"小台"、"台積電期貨"。
Exemple d'appel{"name": "snapshot.futures", "arguments": {"contract": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"date": "texte", "name": "texte", "query": "texte", "quotes": [], "source": "texte", "caveats": [], "contract": "texte", "candidates": [], "near_month": "texte", "institutional": "texte", "large_traders": "texte", "final_settlement": "texte"}} - snapshot.market≈ 496 tokens
Whole-market overview for the previous trading day: TAIEX and its change, turnover, advancers and decliners, top 10 by volume, plus futures positioning (institutional net open interest, TAIEX futures positions, put/call ratio, large traders). scope="events" lists ex-dividend dates and shareholder meetings in the next two weeks and attention/disposition stocks. Every scope also includes a trading calendar: whether the market is open today and the next trading day (TWSE holiday schedule). Sources: TWSE OpenAPI and TAIFEX OAS; not live. 一次看完整體市場(前一交易日):加權指數與漲跌、成交金額、上市股票漲跌家數、成交量前十名;以及期貨籌碼:三大法人期貨未平倉淨部位、台指期各法人部位、Put/Call 比、台指期大額交易人淨部位。只要其中一邊時用 scope="stock" 或 "futures"。scope="events" 另外列出全市場的近期事件:兩週內的除權除息與股東會、今天公布的注意股、處置中與即將處置的股票(皆為上市);每個 scope 都附交易日曆:今天有沒有開盤、下一個交易日(證交所休市日表)。只問某一檔股票的除息、注意或處置狀態時,用 snapshot.stock。不含個別契約的行情價格;要查台指期、小台、個股期貨等單一期貨契約的收盤價與部位,用 snapshot.futures。
Paramètres, retour & exemple (1)
Paramètresscope· string · optionnel · all | stock | futures | events
"all"(預設,證券市場加期貨籌碼)、"stock"、"futures",或 "events"(近期事件行事曆)。
Exemple d'appel{"name": "snapshot.market", "arguments": {"scope": "all"}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"note": "texte", "source": "texte", "caveats": [], "交易日曆": {}, "期貨籌碼": {}, "證券市場": {}, "事件行事曆": {}}} - snapshot.movers≈ 514 tokens
Top gainers and losers by percentage change among TWSE-listed stocks for the previous trading day, plus how many closed limit-up and limit-down. Each row has the code, name, close, change, percentage change and volume. Use it for "top gainers / top losers / which stocks hit the daily limit" instead of sorting dataset.get by price change, which ranks by absolute points and puts high-priced stocks first. Limit-up and limit-down are derived from the previous close and the tick size (the data carries no flag). Listed stocks only (4-digit codes, no ETFs or warrants); OTC (TPEx) is not covered. Source: TWSE OpenAPI; not live. 上市股票前一交易日的漲幅與跌幅排行(依漲跌幅%,不是依漲跌額),以及漲停、跌停家數。問「漲幅榜」「跌幅榜」「今天漲停幾檔」時用這個,不要用 dataset.get 依漲跌排序——那會依點數排,股價高的永遠排前面。漲停與跌停是依前收盤與升降單位推算(資料本身沒有標記)。範圍是上市股票(四碼代號,不含 ETF 與權證),不含上櫃。資料為前一交易日,不是盤中即時;要當下價格請用 quote.realtime。
Paramètres, retour & exemple (1)
Paramètreslimit· integer · optionnel
漲幅與跌幅各取前幾名,預設 10,最多 30。漲停與跌停家數不受這個數字影響,數的是全部個股。
Exemple d'appel{"name": "snapshot.movers", "arguments": {"limit": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"note": "texte", "source": "texte", "日期": "texte", "範圍": "texte", "caveats": [], "漲停家數": 1, "漲幅排行": "texte", "跌停家數": 1, "跌幅排行": "texte"}} - snapshot.stock≈ 1285 tokens
One TWSE-listed company in a single call: profile, the previous trading day's price and volume, P/E, dividend yield, P/B, latest monthly revenue, dividends and upcoming ex-dividend dates, attention/disposition status, and market cap. Optional sections: financial statements (include_financials; year-to-date cumulative figures), corporate governance (include_governance), margin trading and securities lending (include_margin), ESG disclosures (esg_topics). To compare 2–5 companies side by side (price, P/E, dividend yield, P/B, market cap), pass codes instead of code. For recent price history (daily closes and the period change, archived by this service since 2026-09-29), pass history_days. Source: TWSE OpenAPI; daily tables are previous-trading-day, revenue monthly, financials quarterly; not live. 一次取得單一上市公司的完整概況:基本資料、前一交易日價量、本益比/殖利率/股價淨值比、最新月營收(含月增率與年增率)、近一年各期股利與近期除權除息預告、是否為注意股或處置股,以及市值。合併八個證交所資料集。價量為前一交易日,不是盤中即時;要當下價格請用 quote.realtime。要財報(損益、資產負債、毛利率等,會自動找對業別的表)帶 include_financials;要公司治理(董事長兼任總經理、董監質押、裁罰、董監持股不足)帶 include_governance。要融資融券餘額、券資比與可借券賣出股數帶 include_margin。要 ESG 帶 esg_topics(主題名稱陣列,最多 6 個);只說「ESG」時用溫室氣體排放、能源管理、董事會、人力發展。要並排比較 2–5 家(價量、本益比、殖利率、股價淨值比、市值)時,改帶 codes 而不是 code。要最近幾個交易日的走勢(每日收盤價量與期間漲跌幅,本服務自 2026-09-29 起存檔)帶 history_days。ETF 請用 snapshot.etf。任何一段查不到都會標成 null 並記在 caveats,不會整個失敗。
Paramètres, retour & exemple (7)
Paramètrescode· string · optionnel
上市公司股票代號,例如 "2330"、"2317"。只知道名稱時先用 quote.lookup。與 codes 擇一。codes· array · optionnel
要並排比較的 2–5 檔代號,例如 ["2330", "2303", "2454"]。回傳 compared:每檔的價量、本益比、殖利率、股價淨值比與市值。與 code 擇一;比較模式不支援 include_financials、include_governance、include_margin、esg_topics。esg_topics· array · optionnel
附上這些 ESG 主題的最新年度申報資料(每個主題多一次外呼)。不帶就不查。例如資訊安全含資訊外洩事件數與受影響顧客數,職業安全衛生含職災人數,董事會含女性董事比率。約一半的主題只有特定產業須揭露;公司不在某主題的表中會標明,不代表數值為 0。氣候相關議題管理是長篇文字,只在問到氣候風險時才帶。history_days· integer · optionnel
附上最近 N 個交易日的收盤價量與整段期間的漲跌幅(本服務自己存的日成交資訊,存檔自 2026-09-29 開始;不足 N 日會說明)。問「最近走勢」「這個月漲多少」時才帶。不支援比較模式(codes)。include_margin· boolean · optionnel
附上融資融券(買賣、餘額、增減、使用率、券資比、停止或分配註記)與當日可借券賣出股數(多兩次外呼)。預設 false。include_financials· boolean · optionnel
附上最新一季財報摘要:營收、毛利率、營業利益率、淨利率、每股盈餘、每股參考淨值、資產負債與負債比率(多一到兩次外呼)。預設 false。include_governance· boolean · optionnel
附上公司治理摘要(多五次外呼)。預設 false。
Exemple d'appel{"name": "snapshot.stock", "arguments": {"code": "texte", "codes": [], "esg_topics": [], "history_days": 1, "include_margin": true, "include_financials": true}}Exemple de retour{"content": [{"type": "text", "text": "…"}], "structuredContent": {"esg": "texte", "code": "texte", "name": "texte", "note": "texte", "quote": "texte", "alerts": {}, "margin": "texte", "source": "texte", "caveats": [], "derived": "texte", "history": "texte", "profile": "texte"}}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».