mcpField
D
data-research

data-research

github.com/garrytanデータ・データベース31.3k270 回インストール今日更新
リポジトリ

data-research について

data-researchは、メール、Web、APIの情報を構造化された調査トラッカーにまとめる設定可能なスキルです。定期的なデータ収集向けで、7段階の処理で情報源を保存し、重複を除き、記録から原資料へリンクします。

主な機能

  1. 017段階の調査パイプライン
  2. 02YAMLレシピによる情報源設定
  3. 03正規表現を優先した分類と抽出
  4. 04原資料の保存と相互リンク
  5. 05トラッカー更新前の重複排除

活用シーン

  1. 01投資家向け更新の指標追跡
  2. 02経費や領収書データの整理
  3. 03メールから企業情報を収集
  4. 04定期的なデータ収集の設定

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/garrytan/gbrain --skill data-research

インストール後、Claude Code で/data-researchを入力して読み込まれたか確認します。

詳細

データリサーチ

構造化されたリサーチパイプライン:ソースを検索し、構造化データを抽出し、 生データをアーカイブし、重複を排除し、正規トラッカーを更新して、エンティティにバックリンクします。

契約

メールから構造化データを抽出するあらゆるパイプラインに対応する単一のスキルです。投資家アップデート、経費、企業指標の追跡で異なるのは、検索クエリ、抽出スキーマ、トラッカーページの形式のみです。 3つすべてで、パラメーター化されたレシピを使う同一の7フェーズパイプラインを使用します。

使用するタイミング

  • メール、ウェブ、API ソースから構造化データを追跡したい場合
  • 「リサーチ」「追跡」「メールから抽出」「トラッカーを作成」と依頼された場合
  • 投資家アップデート、寄付、企業指標、届出について言及された場合
  • 定期的なデータ収集を設定したい場合(cron レシピを使用)

フェーズ

フェーズ 1:リサーチレシピを定義する

会話のコンテキスト、最近の brain アクティビティ、進行中のタスク(ops/tasks.md)、メモリファイルからリサーチ対象を推測します。依頼が曖昧な場合は、ユーザーがこれまで取り組んでいた内容に基づいて、最も可能性の高い解釈を提示します。コンテキストが本当に不十分な場合に限り、確認を求めます。選択肢:

  • 組み込みレシピを選ぶ:investor-updates、expense-tracker、company-updates
  • カスタムレシピを定義する:ソースクエリ、分類ルール、抽出スキーマ、 トラッカーページのパス、トラッカーの形式

レシピは ~/.gbrain/recipes/{name}.yaml にある YAML ファイルです。組み込みレシピファイルをコピーして各フィールドを編集し、新しいレシピを作成します。

フェーズ 2:ソースを検索する

まず Brain を検索します(すでにデータがあるかもしれません)。次に:

  • メール:認証情報ゲートウェイ経由で検索します。期間を区切ったクエリを使います(四半期単位、切り詰められた場合は月単位)
  • ウェブ:検索を通じて公開届出、プレスリリース、規制データを調べます
  • API:レシピで定義された構造化データソースを使用します
  • 添付ファイル:PDF の抽出、HTML の除去を行います
フェーズ 3:分類する

まず決定論的な方法(レシピの正規表現パターン)を使い、次に LLM にフォールバックします。 今後の正規表現の改善に備え、LLM へのフォールバックをすべて記録します(失敗から改善するループ)。 レシピの分類ルールに基づき、マーケティング、ニュースレター、ノイズは除外します。

フェーズ 4:構造化データを抽出する

抽出の完全性に関するルール:

  1. 抽出を行う前に、生のソースをすぐに保存する
  2. まず決定論的な正規表現を使ってフィールドを抽出し、次に LLM にフォールバックする
  3. バッチ結果を要約するときは、保存済みファイルを読み直す
  4. バッチ処理後の LLM の作業メモリを決して信頼しない

これにより、既知のハルシネーションの不具合を防ぎます。この不具合では、バッチ処理された金額は、保存済みファイルでは正しかったにもかかわらず、LLM の作業メモリに基づくと13件中13件すべてが誤っていました。

フェーズ 5:生のソースをアーカイブする
  • メール本文や API レスポンスには put_raw_data を使用します
  • PDF の添付ファイルや文書には file_upload を使用します
  • ストレージ内の大きなファイルには .redirect.yaml ポインターを作成します
  • トラッカーの各エントリーから、生のソースに必ずリンクします
フェーズ 6:重複を排除する

トラッカーに追加する前に:

  • 完全一致(キーとなるフィールドが同じ)→ スキップ
  • あいまい一致(同じエンティティ+日付+許容範囲内の類似した金額)→ 要確認としてフラグを付ける
  • 同じエンティティ+日付で金額が異なる → メモを添えて追加する(訂正の可能性があります)
フェーズ 7:正規トラッカーを更新し、バックリンクする
  • 既存のトラッカーページ(Markdown テーブル)を解析します
  • 適切なセクション(年/四半期/エンティティ別)に新しいエントリーを追加します
  • 累計を計算します
  • 言及されたすべてのエンティティにバックリンクします(人物 → people/ ページ、会社 → companies/ ページ)
  • エンティティページにはエンリッチメントサービスを使用します

組み込みレシピ

GBrain には3つのレシピ例が付属します(~/.gbrain/recipes/ を参照):

  1. investor-updates — 投資家アップデートメールから MRR、ARR、成長率、バーンレート、ランウェイ、従業員数を抽出します
  2. expense-tracker — 領収書メールから金額、受取人、プラットフォームを抽出します(サブスクリプション、サービス、継続的な請求)
  3. company-updates — ポートフォリオ企業のアップデートメールから売上、ユーザー数、主要指標を抽出します

失敗した場合

gbrain のエラー code、終了コード、[AGENT] ブロック、通知ブロックについては、エージェントオペレータープロトコルに従ってください。このスキル固有の対応は次のとおりです。

  • file_upload は許可されたルート外のパスでは拒否されます(リモートからの呼び出しは範囲が制限されます)。脳のホストからアップロードするか、内容をインラインで渡すようユーザーに依頼してください。
  • put_page / add_timeline_entry が revision_conflict または write_pending を返した場合、前者では再読み込みして変更を統合し、後者では gbrain write-request <request_id> をポーリングしてください。
  • 抽出元でレート制限(rate_limited)が発生した場合は、指定された時間だけ待ってから再試行し、カーソルは保持してください。欠落した行を推測せず、欠落があったことを記録してください。

アンチパターン

  • バッチ処理後の金額について、LLM の作業記憶を信頼する(抽出の完全性ルールを使用してください)
  • 生の情報源へのリンクなしでトラッカー項目を作成する
  • 重複排除せずに実行する(項目が二重にカウントされます)
  • パイプラインコードに情報源固有のパターンをハードコーディングする(レシピを使用してください)

出力形式

レシピの tracker_page パスにある脳のページに、Markdown の表を記載します。

### 2026

| Date | Company | MRR | ARR | Growth | Status |
|------|---------|-----|-----|--------|--------|
| 2026-04-01 | Example Co | $188K | $2.3M | +14.7% MoM | [Source](link) |

各項目から生の情報源にリンクします。各セクションの末尾に累計を記載します。

規約

引用とバックリンクのルールについては、skills/conventions/quality.md を参照してください。

コメント