Emarket Storage について
Emarket Storageは、eMarket Storageで公開されるイタリアの規制対象企業の開示情報や提出書類を検索するMCPサーバーです。即日更新の一覧を提供し、開示通知と財務報告書・ESEF/XBRLファイルのアーカイブを分けて扱います。
主な機能
- 01発行体と日付で開示情報を検索
- 02IDと日付で開示情報を取得
- 03別個の提出書類アーカイブを検索
- 04ESEF/XBRLダウンロードパッケージを検索
活用シーン
- 01イタリアの発行体の開示を日次で監視
- 02日付範囲を指定して企業発表を検索
- 03開示情報にリンクされた文書を取得
- 04年次報告書やESEF/XBRLファイルを特定
MCP 対応
eMarket Storageの開示一覧と別個の文書アーカイブを検索し、個別の開示情報を取得するMCPツールを提供します。対象はeMarket Storageの発行体で、文書リンクを返しますが、抽出済みのXBRL事実データは提供しません。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://gateway.pipeworx.io/emarket-storage/mcpclaude mcp add --transport http pipeworx-io-emarket-storage https://gateway.pipeworx.io/emarket-storage/mcp{"mcpServers":{"pipeworx-io-emarket-storage":{"type":"http","url":"https://gateway.pipeworx.io/emarket-storage/mcp"}}}Cursor で開く{"servers":{"pipeworx-io-emarket-storage":{"type":"http","url":"https://gateway.pipeworx.io/emarket-storage/mcp"}}}VS Code で開く{"mcpServers":{"pipeworx-io-emarket-storage":{"type":"http","url":"https://gateway.pipeworx.io/emarket-storage/mcp"}}}{"mcpServers":{"pipeworx-io-emarket-storage":{"serverUrl":"https://gateway.pipeworx.io/emarket-storage/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
@pipeworx/emarket-storage
eMarket Storage(Teleborsa)から取得する、イタリアの規制対象企業の開示情報 — タイトル、発行体、タイムスタンプ、PDF リンクを含むドキュメントインデックスです。最新年のイタリアの提出書類を確認する際、コミュニティ版 ESEF インデックスに生じる数か月の遅延を解消するため、同日中に更新されます。
Pipeworx の一部です。AI エージェントを 1881 以上の稼働中データソースに接続する MCP ゲートウェイです。これは独立した非公式の連携であり、上流プロバイダーとは提携関係になく、同プロバイダーの承認を受けておらず、同プロバイダーから公開されたものでもありません。
ツール
emarket_search_disclosures(company?, azienda_id?, category?, market?, cerca?, date_from?, date_to?, limit?, offset?)— 発行体(名前を指定し、eMarket 独自の発行体リストから解決するか、既知の azienda_id を指定)、EU 透明性指令のカテゴリ、市場セグメント、公開日付の範囲のいずれか、または複数の条件で開示情報を検索します。新しい順に返します。emarket_get_disclosure(id, date)— Teleborsa の protocollo id と公開日を指定して、開示情報を 1 件取得します(どちらも事前の検索結果から取得します。このデータソースには ID のみで検索する機能はありません)。emarket_search_documents(company?, azienda_id?, category?, date_from?, date_to?, limit?, offset?)— eMarket Storage の独立したドキュメントアーカイブを検索します。プレスリリースのストリームではなく、年次/半期財務報告書や ESEF/XBRL ZIP パッケージを対象とします。実際の提出書類が必要な場合に使います。has_xbrlは、ダウンロード可能な ESEF/XBRL ZIP を含む行を示します。
上記 3 つの検索パラメーター(すべてのツールの company/azienda_id、および category/market)は任意です。 発行体を指定せずに日付範囲を指定すると、対象となるすべての発行体の行を 1 回の呼び出しで取得できます。複数の発行体を毎日確認する低コストな方法です(下記「1 日 1 回の呼び出し」を参照)。
このパックが作られた理由
esef-filings は filings.xbrl.org を中継するものですが、これはコミュニティ版インデックスであり、イタリアの発行体については最新年の情報が数か月遅れています(フランス向けの amf-filings が解決する問題と同じです)。このパックは、透明性指令に基づく開示情報を扱うイタリアの 2 つの Officially Appointed Mechanisms(OAM)の 1 つである eMarket Storage に直接接続します。2026-09-23 にライブ環境で測定:2026-09-22~09-24 を対象とする category="104"(Informazioni privilegiate)の検索で、2026-09-23T17:13(現地時間)に公開された WEBUILD の開示情報が返されました(検索当日)。PDF にもアクセスできることを確認済みです(HTTP 200)。
発行体ごとではなく、1 日に 1 回呼び出す
毎日約 155 社を確認する設計パートナーは、発行体ごとに 1 回呼び出しており、1 回あたり 50 クレジットの上限を約 35 回で使い切っていました(fleet #3300、2026-10)。その必要はありません。このパックのすべての検索ツールは、発行体フィルターを一切指定せず、日付範囲だけで検索できます。これにより、対象期間の対象発行体すべての行を 1 回の呼び出しで取得できます。
emarket_search_disclosures({date_from: "2026-10-19", date_to: "2026-10-19"})
emarket_search_documents({date_from: "2026-10-19", date_to: "2026-10-19"})
2026-10-19 にライブ環境で検証済みです。どちらも、その日の eMarket 対象発行体すべての行を返します。ページ分割が必要なのは、1 日の市場全体のデータ量が 1 ページを超える場合(page_size 24)だけですが、そのようなケースはまれです。155 社を毎日確認する場合も、パックあたり 1 日 1 回、または少数の上限付きの呼び出しで済み、155 回ではありません。
⚠️ 呼び出し元が把握しておくべき5つのこと
- eMarketが対象とする発行体のみです。イタリア市場全体を網羅しているわけではありません。
イタリアには、別個の第2のOAMである1INFOもあります(およそ314の発行体を対象とする、別のキー不要のJSON APIです。
@pipeworx/oneinfo-storageを参照)。発行体は、必ずどちらか一方を通じて情報を開示します。よく知られた企業の中にも1INFOの発行体があり、ここでは見つかりません。2026-09-23に、eMarket Storage独自の約480社を掲載した発行体選択リストを確認したところ、IRENもSOMECも含まれていないことを確認しました。企業検索で一致するものがない場合は、単なるエラーではなく説明用のnoteを返し、代わりにoneinfo-storageのoneinfo_search_disclosuresを案内します。このパックは1INFOのデータを統合しません。 - これは文書インデックスであり、XBRLファクトAPIではありません。 各行は情報開示イベントであり、タイトル、発行体、公開タイムスタンプ、元のPDFへのリンクが含まれます。ファクトごとの抽出には対応していません。「FY2025の純利益を取得する」といった検索はできません。
- ISINやLEIはありません。
amf-filingsとは異なり、eMarket Storageの一覧と発行体選択リストで公開されているのは企業名とTeleborsaの内部数値ID(azienda_id)のみです。一覧にも企業別ページにもISIN/LEIのフィールドは見つかりませんでした(2026-09-23に確認)。発行体は名前で特定するか(サイト独自のリストに基づいて自動的に照合されます)、以前の検索で取得済みの場合はazienda_idで直接指定してください。 - このツールの
date_toは包含です。一方、元データのdata_toは除外であり、この不一致によって、1日のみの検索だけでなく複数日の検索でも行が通知なく抜け落ちます。 2026-09-24に元データを直接確認しました。data_from=2026-09-21&data_to=2026-09-22では13行が返されましたが、すべて21日のものでした。22日のデータはエラーも、結果が空であることを示す通知も、呼び出し元の「21日から22日まで」というリクエストが誤って処理されたと示すものもなく、完全に抜け落ちていました。emarket_search_disclosuresは、呼び出し元の包含的なdate_toより1暦日後のdata_toを常に元データに送信します(date_toを指定せずdate_fromだけを指定した場合は「その1日だけ」を意味します)。また、レスポンスにはdate_to(指定した包含値)とupstream_date_to_exclusive(実際に送信された元データの境界値)の両方が含まれます。そのため、「21日から22日まで」と指定した呼び出し元には、両日分の行が正しく返されます。ローカルでの確認では、同じ21日から22日までのリクエストに対し、2026-09-21と2026-09-22の日付の行が返されました。 - 同じサイトに2つの別々のアーカイブがあります。
emarket_search_disclosuresはプレスリリースの一覧であり、emarket_search_documentsは実際の規制対象提出文書のアーカイブ(年次報告書、ESEF/XBRL ZIPファイル)です。それぞれで同じcategoryコードを指定しても、同じ行が返されるわけではありません。2026-10-19に実データで確認したところ、emarket_search_disclosuresでInterpumpのcategory="100"を指定すると、決算プレスリリースのみが返されました。一方、同じフィルターをemarket_search_documentsに指定すると、「IP - Annual Financial Report 2025」とそのESEF XBRL ZIPが返されました。必要な情報に応じて、適切なツールを使用してください。
認証
キーは不要です。アカウントもAPIキーも必要ありません。
データソース
- https://www.emarketstorage.it/it/comunicati-finanziari — eMarket
Storageの公開情報開示一覧(Teleborsaが運営する、EU透明性指令に基づくイタリアのOAM)。Pipeworxは呼び出しのたびにライブでクエリを実行します。一括ダウンロードや正式なAPIはありません(このDrupalサイトの
/jsonapiは404を返します。HTMLのみです)。そのため、このパックは一覧のHTMLを直接解析します。
注意点
- 正式な API はありません。掲載情報は、GET でフィルタリング可能な通常の Drupal View です
(
azienda、mercato、categoria、data_from/data_to、cerca)。この パックは、対象を絞った正規表現でレンダリング済みの HTML を解析します。Cloudflare Workers には DOMParser がありません(spain-tendersと同じ方式です)。 - 行の
datetime属性(time要素上)は壊れています — 観測したすべての行に、使用可能なタイムスタンプではなく、34Zのような値(末尾の秒数と「Z」だけ)が含まれています。 これは上流のテンプレートの不具合です。このパックでは人間が読めるテキスト(「DD/MM/YYYY - HH:MM」、イタリア現地時間)を解析し、 明示的なtimezone: "Europe/Rome"フィールドとともにpublished_at_localとして返します。正しく変換するには 夏時間への対応が必要であり、このパックではそれを前提としていないため、UTC には変換しません。 - 掲載情報では行ごとのカテゴリーは公開されません — カテゴリーを指定できるのは
categoriaフィルターパラメーターだけです。そのためemarket_search_disclosuresは、呼び出し元がカテゴリーで絞り込んだ場合、 リクエストされたcategoryを各結果に反映します(これはフィルター済みの結果に関する正確な情報であり、推測ではありません)。 フィルターなしの検索では、categoryは捏造せず、正直にnullとします。 - ページサイズは 24 件で固定されており、実データで確認済みです(最後のページ以外はすべて正確に 24 行でした)。
レスポンス内に合計件数フィールドはありません。次のページがある場合、このパックは
has_more: trueとat_least_totalを返します。これは正確な合計件数を捏造したものではなく、 真の下限値(last_page_index * 24)です。2026-09-23 に計測した例では、SAIPEM を 2 日間の範囲に絞ると開示情報は 1 件でした。同じ発行体を 2025-01-01〜 2026-09-24 の範囲で検索すると、at_least_total: 120が返されました(最終ページまで確認した結果、正確な件数は 122 件でした)。日付フィルターが実際に機能していることがわかります。 - 企業名の解決には
rankMatches(完全一致 > 前方一致 > 単語全体の一致 > 部分一致)を使用し、すべての掲載ページ読み込みに埋め込まれている eMarket 独自の発行体候補リストと照合します。 同じスコアの候補が複数ある曖昧な一致の場合は、推測せずにcandidatesを返します。 emarket_get_disclosureは、ソースに ID で直接取得するエンドポイントがないため、指定日の掲載情報を再取得し (最大 8 ページまでページングするため、その日に市場全体で最大 192 件の開示情報を検索します。実データでの計測では、最も混雑した日でも 3 ページ目まででした)、protocollo ID を照合します。各ページの取得には共通のデフォルト値 25 秒ではなく 10 秒のタイムアウトを設定し、最悪の場合の逐次処理時間を 375 秒ではなく 80 秒に抑えています。ある設計パートナーから、本番環境で約 230 秒の停滞が報告されました(fleet #3300)。これは以前の数値と一致します。emarket_search_documentsは、emarket_search_disclosuresと同じ HTML 行パーサーを再利用します。ESEF/XBRL の行では、タイトルテキストの前に<span class="icon-esef">マーカーがあり、通常の/comunicati/….pdfではなく/sites/default/files/xbrl/….zipパスにリンクします。どちらにも対応しており、どちらに該当するかはhas_xbrlに反映されます。
クイックスタート
MCP クライアント(Claude Desktop、Cursor、Windsurf など)に追加します。
{
"mcpServers": {
"emarket-storage": {
"url": "https://gateway.pipeworx.io/emarket-storage/mcp"
}
}
}
このエンドポイントが実際に提供するもの
https://gateway.pipeworx.io/emarket-storage/mcp の tools/list は、上の表にあるツールに加えて、Pipeworx の共有メタツールである ask_pipeworx、discover_tools、search_within、remember/recall など、ゲートウェイ全体で利用できるツールも返します。そのため、表示されるツール数はこの表の数より多くなります。現在、単一パックのエンドポイントには、パック固有のツールとともに、およそ30個の共有ツールが一覧表示されます。接続の initialize レスポンスには正確な対象範囲が記載されており、その日の状況を確認するための確実な情報源です。
これは意図的な設計であり、誤って多重化しているわけではありません。メタツールを使うと、このパックで扱っていない質問にも、カタログ全体を対象にルーティングする ask_pipeworx 経由で回答できるため、2つ目の MCP サーバーを追加する必要がありません。現在、メタツールを含めずにパックのエンドポイントを接続する方法はありません。追加のスキーマによるコンテキスト消費がルーティングの利点を上回る場合は、複数のパックエンドポイントではなく、フルゲートウェイに一度だけ接続してください。
または、フル Pipeworx ゲートウェイに接続すると、このパックのツールだけでなく、すべてのパックのツールが直接一覧表示されます。
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
どちらの URL でも、同じゲートウェイと同じ1881以上のデータソースにアクセスできます。違いは、どのパックのツールが直接一覧表示されるかだけです。どちらからでも、ask_pipeworx を使ってすべてのツールにアクセスできます。
MCP クライアントをお持ちでない場合は、HTTP 経由で呼び出せます
curl -X POST https://gateway.pipeworx.io/v1/tools/emarket_search_disclosures \
-H 'Content-Type: application/json' \
-d '{"category":"104","date_from":"2026-09-22","date_to":"2026-09-24"}'
最初の呼び出しにアカウントは必要ありません。任意のツールの詳細を確認するには、GET https://gateway.pipeworx.io/v1/tools/emarket_search_disclosures を実行します。ツールを探すには、{"query":"..."} を指定して POST https://gateway.pipeworx.io/v1/tools/search_packs を実行します。
スタンドアロン(ゲートウェイアカウント不要)
このパッケージは、ローカルの stdio MCP サーバーとしても実行できます。Pipeworx アカウントも、ゲートウェイへの往復通信も必要ありません。
{
"mcpServers": {
"emarket-storage": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-emarket-storage"]
}
}
}
または、直接実行して起動を確認できます。
npx -y @pipeworx/mcp-emarket-storage
stdin/stdout 経由で MCP を使用し、このパックのツールのみを対象に initialize/tools/list/tools/call に応答します。上記のゲートウェイ接続で追加される共有メタツールはありません。同じソース、同じツールで、ask_pipeworx によるルーティングはありません。
ask_pipeworx の使用
ツールを直接呼び出す代わりに、平易な英語で質問できます。これは上記のパックエンドポイントでも、フルゲートウェイでも使用できます。
ask_pipeworx({ question: "your question about Emarket Storage data" })
ゲートウェイが適切なツールを選び、引数を自動的に設定します。
詳細情報
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。