Skip to main content

チュートリアル 07: MCP Integrations for Legal Workflows

Connect Claude, ChatGPT or Codex to case law databases, document management systems, and court records for seamless legal research workflows using the Model Context Protocol.

対応Claude: 検証済みChatGPT / Codex: 下書きGrok Bot: 検証済み

執筆後の変更点最終確認: 2026年5月20日 · 2
  1. Codex 0.132.0 と Secure MCP Tunnel の管理

    OpenAI の Codex 0.132.0 changelog は Python SDK 認証、より簡単な text-only turn API、再開した exec session の structured output、remote executor の標準 Codex 認証、app-server の image fidelity 保持を追加し、OpenAI API changelog は private MCP server への account-led enterprise アクセス向け Secure MCP Tunnel も導入しました。

    推奨アクション: 法務自動化では、権限の高いリポジトリや client-data system を接続する前に、SDK auth storage、再開 session schema、remote executor identity、private MCP tunnel ownership、人間の review を再確認してください。

    出典: OpenAI Codex changelog · OpenAI API changelog · OpenAI Secure MCP Tunnel guide

  2. OpenAI モデル、プラン、Responses API ドキュメント更新

    OpenAI ドキュメントは現在、GPT-5.5/GPT-5.4 世代のモデル、更新された ChatGPT プラン名、新規 API ワークフロー向け Responses API と組み込みツールを強調しています。

    推奨アクション: 法務ワークフローでは古い GPT-4 や固定価格前提を避け、顧客向け試験運用前に現在のモデル、プラン、ツール、保持設定、レビュー統制を確認してください。

    出典: OpenAI models · ChatGPT pricing · GPT-5.5 in ChatGPT · Responses API migration · OpenAI tools guide · Code Interpreter tool

このチュートリアルでは、AIアシスタントを判例、文書管理、裁判所記録などの法務データソースに接続し、Claudeを離れることなく調査や引用確認を行う方法を紹介します。

学習目標

このチュートリアルを終えると、次のことができるようになります。

  • Model Context Protocol (MCP) とその法務分野での応用を理解する
  • 判例調査ソース(Midpage または CourtListener)をアシスタントに接続する
  • 文書管理システム(iManage、Google Drive、Box、SharePoint)に接続する
  • MCP を使ってカスタムの法務調査ワークフローを構築する
  • バージョントラッキング付きの法令調査ワークフローを実行する
  • 自動化された引用確認プロセスを実装する
  • 裁判所記録のアラートとドケット監視を設定する
  • エージェント的な多段階調査パターンを適用する
  • 戦略的な示唆のために判例分析を解釈する

上級レベル | 一部技術的な慣れが必要 | 時間: 105分


Part 1: 法務向け MCP を理解する

MCP とは?

Model Context Protocol (MCP) は、AI を外部ツールやデータソースに接続するための Anthropic のオープン標準です。AI にとっての USB、つまりユニバーサルコネクタのようなものだと考えてください。

なぜ法務で MCP が重要なのか

Traditional ApproachMCP Approach
リサーチプラットフォームからチャットへコピー&ペーストするアシスタントがプラットフォームへ直接クエリする
iManage からダウンロードしてチャットへアップロードするアシスタントが iManage に直接アクセスする
5つの異なるツールを切り替えるすべてのツールを単一のインターフェースで扱う
手動でデータ入力する自動化されたデータフロー

検証済みコネクタと MCP サーバー

2026-09-02 時点で確認できたソースのみを掲載しています。自動確認を妨げるベンダーのセットアップページは、以下の各部で draft と記載しています。

Connector or serverWhat it gives youWhere it is documented
CourtListener連邦ドケットと判決; 公開、API キーは任意Claude for Legal plugins に事前設定済みで同梱
Midpage判例検索、判決分析、ドケットレポート(要サブスクリプション)Midpage 独自の Codex plugin。Midpage MCP 上に構築
CoCounsel Legal (Thomson Reuters)cited reports 付きの Westlaw Deep Research(要サブスクリプション、OAuth)Claude for Legal external plugin
Trellis, Descrybe, Solve Intelligence州ドケット、判例調査、特許ドラフティング(要サブスクリプション)Claude for Legal connector table
iManage, Ironclad, DocuSign, EverlawDMS、契約台帳、電子署名、電子証拠開示(要サブスクリプション)Claude for Legal connector table
Slack, Google Drive, BoxチャットおよびファイルアクセスClaude for Legal connector table; Slack と Google Workspace は Claude の pricing page にも記載
Dropbox, Gmail, Google Drive, Microsoft Teams, Outlook, SharePointOpenAI 管理のコネクタ。データ共有前に承認を要求OpenAI remote MCP guide
Any remote MCP serverHTTP 経由の独自サーバーまたはベンダー提供サーバーClaude Code claude mcp add、Claude API MCP connector、OpenAI の remote MCP tool、Codex config.toml

Part 2: 判例調査コネクタの設定 (Midpage)

Midpage が提供するもの

Midpage は法務調査プラットフォームです。その MCP では、Midpage 独自の Codex plugin ドキュメントで searchanalyzeOpinionfindInOpinionanalyzeDocketReportanalyzeDocketFiling という判例ツールが公開されています(2026-09-02 確認)。Midpage のサブスクリプションが必要です。

統合のメリット

調査コネクタを接続すると、次のことができます。

  • アシスタントを離れずに判例調査を行う
  • 引用がなお有効な判例かどうかを確認する
  • 事実関係に関連する先例を見つける
  • 法的根拠を統合しながらドラフトする

Requirements

  • Midpage subscription
  • Claude Code, or the Cowork desktop app on Pro, Max or Team (connectors with remote MCP are listed on the pricing page)

Setup

  1. Midpage アカウントから Midpage MCP endpoint または credentials を取得します。Draft: Midpage のセットアップページは検証のために取得できませんでした。このチュートリアルの以前の版に記載されていた @midpage/mcp-server command は未検証です。
  2. サーバーを追加します。Claude Code では(MCP docs):
claude mcp add --transport http midpage <midpage-mcp-url>
# or, for a local process:
claude mcp add --transport stdio midpage -- <command from Midpage's docs>
  1. Claude Code で /mcp を実行し、OAuth フローがあれば完了してステータスを確認します。claude mcp list で設定済みサーバーを表示できます。
  2. Cowork または Claude Desktop では、Connectors の下に同じサーバーを追加します。Claude Desktop で設定したサーバーは claude mcp add-from-claude-desktop でインポートできます。

接続をテストする

Search for Delaware cases on limitation of liability clauses in
software agreements from the last 3 years.

アシスタントは、調査ソースのタグ付きで判例引用を返すはずです。何もタグ付けされない場合、コネクタは有効ではありません。


Part 3: CourtListener の設定(無料の代替)

CourtListener が提供するもの

CourtListener は Free Law Project による無料のオープンソース法務調査データベースです。

  • 連邦判例
  • 州裁判所の判決
  • 口頭弁論
  • RECAP を通じた PACER 連携
  • サブスクリプション不要。API キーがあるとレート制限が緩和される

CourtListener は、訴訟、知財、クリニック、ロースクール業務を扱うすべての Claude for Legal plugin に connector として事前設定されています(README、2026-09-02 確認)。plugin をインストールし、一度 connector を認可すると、そこを通じた引用にはソースタグが付きます。モデル知識のみに基づく引用には [verify] が付けられます。

スタンドアロン構成では、claude mcp add を使って CourtListener MCP server を追加します。Draft: Free Law Project が保守する MCP server は確認できませんでした。GitHub には community server が存在し、このチュートリアルの以前の版で言及した @open-legal-tools/courtlistener-mcp package も未検証です。community server を client matters に向ける前に、そのコードとデータ処理を確認してください。

接続をテストする

Search CourtListener for Ninth Circuit cases discussing
software license enforceability.

CourtListener vs. Midpage

FeatureCourtListenerMidpage
Price無料サブスクリプション
Coverage連邦は良好、州はばらつきあり商用法務調査のカバレッジ
Citator基本的AI 駆動
Update speedソースにより異なるベンダーのパイプラインにより異なる
Best forコスト重視、連邦中心フルの法務調査

Part 4: 文書管理の統合

MCP TypeScript Stack (Updated Feb 2026)

カスタムのローカル MCP server には、次のいずれかの経路を使用します。

  • 現在本番安定: @modelcontextprotocol/sdk (v1.x branch)
  • Migration watch: split-package rollout docs(@modelcontextprotocol/server + @modelcontextprotocol/client)を監視し、切り替え前に npm で利用可能か確認する

このチュートリアルの custom server snippets は、本番の法務ワークフローでの信頼性のため、v1.x stable import pattern を使用しています。

Install baseline:

npm install @modelcontextprotocol/sdk zod

As-of validation (2026-02-10):

  • @modelcontextprotocol/sdk@1.26.0 でローカル動作を確認
  • StdioClientTransport による stdio handshake を検証(tool listing + successful tool call)
  • このチュートリアルで使用する local server/client pattern が current stable package で実行可能であることを確認

split-package imports を採用する前に、npm での利用可能性を確認し、自分の環境でテストしてください。

Option A: すでに存在するコネクタ

Claude for Legal connector table(2026-09-02 確認)には、iManage (commercial-legal, corporate-legal)、Box (corporate-legal)、Google Drive と Slack(すべての plugins)、さらに Ironclad、DocuSign、Everlaw が含まれます。各 plugin の .mcp.json または Claude Code の claude mcp で設定してください。「customer subscription」と記載された connectors には、独自の account と API key が必要です。

Usage:

Retrieve the Smith v. Jones complaint from our matter workspace
in iManage and summarize the key allegations.

Draft: Cowork 向けの SharePoint connector と Clio connector("LegalContext")は、このチュートリアルの以前の版に登場しましたが、いずれも 2026-09-02 時点で公式ソースに基づく確認ができませんでした。

Option C: custom MCP server を介した iManage

iManage integration には custom setup が必要です。

Step 1: iManage API Application を作成する

  1. iManage Control Center にログインする
  2. OAuth2 application を作成する
  3. redirect URI を設定する
  4. Client ID と Secret を控える

Step 2: Custom MCP Server を構築する

// imanage-mcp.js
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";
import iManageClient from "imanage-api-client";
 
const server = new McpServer({ name: "imanage", version: "1.0.0" });
 
server.registerTool(
  "search_documents",
  {
    description: "Search iManage for documents",
    inputSchema: {
      query: z.string().describe("Search query"),
      workspace: z.string().describe("Workspace ID"),
    },
  },
  async ({ query, workspace }) => {
    const client = new iManageClient(process.env.IMANAGE_CREDENTIALS);
    const results = await client.search({ query, workspace });
    return { content: [{ type: "text", text: JSON.stringify(results) }] };
  },
);
 
server.registerTool(
  "get_document",
  {
    description: "Retrieve document content",
    inputSchema: {
      documentId: z.string().describe("Document ID"),
    },
  },
  async ({ documentId }) => {
    const client = new iManageClient(process.env.IMANAGE_CREDENTIALS);
    const document = await client.getDocument(documentId);
    return { content: [{ type: "text", text: JSON.stringify(document) }] };
  },
);
 
const transport = new StdioServerTransport();
await server.connect(transport);

Step 3: server を登録する

claude mcp add --scope project --transport stdio imanage \
  --env IMANAGE_CREDENTIALS=path/to/credentials.json -- node path/to/imanage-mcp.js

これにより、team でコミットできる project-scoped の .mcp.json が書き込まれます。--scope user を使うと自分だけの非公開設定になります。


Part 5: 法務調査ワークフローの構築

Workflow 1: 包括的な法務調査

複数の MCP ソースを組み合わせて、徹底した調査を行います。

I need to research the enforceability of liquidated damages
clauses in software agreements under Delaware law.

Workflow:
1. Search Midpage for Delaware cases on liquidated damages
2. Search CourtListener for federal cases applying Delaware law
3. Pull our firm's memo on liquidated damages from SharePoint
4. Synthesize into a research summary

Assistant response pattern:

Let me research this across multiple sources...

## Midpage Results (Delaware State Cases)
[Assistant queries Midpage, returns cases]

## CourtListener Results (Federal/Delaware Law)
[Assistant queries CourtListener, returns additional cases]

## Firm Precedent (SharePoint)
[Assistant retrieves firm memo]

## Synthesis
Based on my research across these sources:

The leading Delaware case is [X], which established...
Federal courts applying Delaware law have held...
Our firm's prior analysis in the [Client] matter noted...

**Key Takeaways**:
1. Delaware generally enforces liquidated damages if...
2. The "reasonableness" test requires...
3. Our recommended approach is...

**Citations** (verified via Midpage citator):
- [Citation 1] - Still good law
- [Citation 2] - Still good law

Workflow 2: 契約 + 調査の統合

/review-contract
[Upload software agreement]

[Assistant identifies concerning liability provision under CA law]

"I've flagged the liability limitation as potentially problematic.
Let me research California's position on liability caps in
software agreements..."

[Assistant queries Midpage for CA cases]

"Based on my research, California courts have held that [X].
The clause as drafted may be enforceable because [Y], but
you should consider [Z] modification."

Workflow 3: デューデリジェンス調査

We're acquiring a company in the healthcare space.
Research the regulatory landscape:

1. Search our SharePoint for prior healthcare M&A memos
2. Search Midpage for recent HIPAA enforcement actions
3. Search for FTC healthcare antitrust cases
4. Generate a due diligence issue checklist

Part 6: 高度な MCP 設定

複数サーバーの実行とスコープ設定

Claude Code には 3 つのスコープがあります(MCP docs、2026-09-02 確認)。local(デフォルト。この project で自分専用)、project(repository root の .mcp.json。version control を通じて共有)、user(すべての project で有効)です。claude mcp add --scope <scope> ... でサーバーを追加し、claude mcp list で一覧表示し、claude mcp remove <name> で削除し、session 内の /mcp でステータス確認または OAuth 完了ができます。調査コネクタは共有の project scope に、案件固有の DMS credentials は user scope に置くとよいでしょう。

接続のデバッグ

ステータスを確認する:

What MCP servers do you have access to right now?
List each server and its available tools.

特定の tool をテストする:

Test the Midpage search tool by searching for "contract breach"
and report any errors.

Part 7: セキュリティ上の考慮事項

データフロー

Your Query

Your assistant (vendor servers)

MCP Server (Your Control)

External Service (Midpage/iManage/etc.)

セキュリティのベストプラクティス

Credential Management:

  • API keys を version control にコミットしない
  • environment variables を使う
  • keys を定期的にローテーションする
  • 用途ごとに別の keys を使う

Access Control:

  • MCP server アクセスは必要なデータに限定する
  • 可能であれば read-only access を使う
  • MCP server logs を監査する
  • 未使用の integrations は無効化する

Client Data:

  • 各 service のデータ処理を理解する
  • SOC 2、ISO 27001 認証の有無を確認する
  • service の DPA を確認する
  • どの案件でどの integrations を使えるか検討する

コンプライアンス確認

  • すべての MCP services をセキュリティ面で確認済み
  • API keys を安全に保管
  • access logs を有効化
  • データ処理 契約を整備
  • 必要な場合は client consent を取得
  • 事務所 IT が configuration を承認

Part 8: 法令調査ワークフロー

Legislative Tracking Integration

リアルタイムの立法モニタリングのために Congress API に接続します。

Setup:

{
  "mcpServers": {
    "congress": {
      "command": "npx",
      "args": ["-y", "@open-legal-tools/congress-mcp"],
      "env": {
        "CONGRESS_API_KEY": "optional-api-key"
      }
    }
  }
}

Statute Version Comparison

立法会期をまたいで法令バージョンを比較するワークフロー:

Research task:
Track amendments to the California CCPA across its
legislative history and identify key changes by session.

Assistant multi-step workflow:
1. Query Congress API for CCPA bill history
2. Retrieve full text for versions from 2018, 2020, 2023
3. Compare key sections (scope, penalties, exemptions)
4. Generate side-by-side amendment analysis
5. Flag enforcement implications of changes

MCP Configuration for Statute Tracking:

{
  "mcpServers": {
    "congress": {
      "command": "npx",
      "args": ["-y", "@open-legal-tools/congress-mcp"],
      "tools": [
        "search_bills",
        "get_bill_versions",
        "track_amendments",
        "retrieve_sponsor_info"
      ]
    },
    "regulationtracker": {
      "command": "npx",
      "args": ["-y", "regulation-tracker-mcp"],
      "env": {
        "FEDERAL_REGISTER_API": "api-key"
      }
    }
  }
}

規制コード検索

包括的な規制調査のためのパターン:

Query: "Search all HIPAA regulations (45 CFR 160-164)
related to breach notification requirements and identify
which sections were modified in the last 3 years."

Assistant workflow:
1. Query regulatory database for HIPAA sections
2. Cross-reference Federal Register for amendments
3. Pull relevant case law on HIPAA enforcement
4. Compile regulatory timeline
5. Provide implementation checklist for compliance

Bill Tracking Workflows

自分の業務分野に影響する立法の自動トラッキングを設定します。

// bill-tracking-mcp.js - Custom MCP for monitoring bills
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { z } from "zod";
 
const server = new McpServer({ name: "bill-tracker", version: "1.0.0" });
 
server.registerTool(
  "monitor_bills",
  {
    description: "Set up alerts for bills matching criteria",
    inputSchema: {
      keywords: z.array(z.string()).describe("Bill topic keywords"),
      jurisdictions: z.array(z.string()).describe("States/federal"),
      stages: z.array(z.string()).describe("Introduced, hearing, floor, etc."),
    },
  },
  async ({ keywords, jurisdictions, stages }) => {
    const bills = await monitorLegislation(keywords, jurisdictions, stages);
    return { content: [{ type: "text", text: JSON.stringify(bills) }] };
  },
);
 
server.registerTool(
  "compare_versions",
  {
    description: "Compare bill versions across sessions",
    inputSchema: {
      billId: z.string(),
      versions: z.array(z.string()).describe("Version numbers to compare"),
    },
  },
  async ({ billId, versions }) => {
    const diff = await compareLegislativeVersions(billId, versions);
    return { content: [{ type: "text", text: JSON.stringify(diff) }] };
  },
);

Part 9: 引用確認プロセス

自動 Cite-Checking

法的文書作成の中で、引用確認を直接実装します。

Upload the legal brief to your assistant with instruction:
"Verify every case citation in this brief is still good law
and identify any corrections needed."

Assistant workflow:
1. Extract all citations (Midpage tool)
2. Check each citation status (Midpage citator)
3. Identify overruled/reversed cases
4. Generate citation correction report
5. Flag negative law that contradicts arguments

Good Law Verification System

Configuration for Automated Citation Checking:

{
  "mcpServers": {
    "midpage": {
      "command": "npx",
      "args": ["-y", "@midpage/mcp-server"],
      "tools": [
        "search_cases",
        "verify_citation_status",
        "find_citing_cases",
        "check_negative_law"
      ],
      "env": {
        "MIDPAGE_API_KEY": "your-api-key"
      }
    },
    "google-scholar": {
      "command": "npx",
      "args": ["-y", "google-scholar-mcp"],
      "tools": ["search_scholar", "verify_citations"]
    }
  }
}

Shepardizing/KeyCiting に相当するもの

引用の権威性の強さを確認するプロセス:

Citation verification prompt:
"For the following cases, provide Shepard's analysis:
- Smith v. Jones, 234 F.3d 567 (5th Cir. 2020)
- Brown v. Green Corp., 890 P.2d 123 (Cal. 2019)

For each case:
1. Current status (good law/overruled/limited)
2. Citing cases (positive/negative treatment)
3. Strength of authority for this proposition
4. Alternative authorities if weakened"

Citation Format Validation

引用形式を標準化するためのワークフロー:

// citation-validator-mcp.js
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { z } from "zod";
 
const server = new McpServer({ name: "citation-validator", version: "1.0.0" });
 
server.registerTool(
  "validate_citation_format",
  {
    description: "Validate and standardize citation format",
    inputSchema: {
      citation: z.string().describe("Citation to validate"),
      jurisdiction: z.string().describe("State/federal"),
      citationStyle: z.enum(["bluebook", "alwd", "local"]),
    },
  },
  async ({ citation, jurisdiction, citationStyle }) => {
    const normalized = normalizeCitation(citation, jurisdiction);
    const formatted = applyCitationStyle(normalized, citationStyle);
    const result = { original: citation, normalized, formatted, isValid: true, corrections: [] };
    return { content: [{ type: "text", text: JSON.stringify(result) }] };
  },
);
 
server.registerTool(
  "batch_validate_brief",
  {
    description: "Validate all citations in document",
    inputSchema: {
      documentText: z.string(),
      citationStyle: z.string(),
    },
  },
  async ({ documentText, citationStyle }) => {
    const citations = extractCitations(documentText);
    const validated = await Promise.all(citations.map((c) => validateCitationFormat(c, citationStyle)));
    const summary = {
      totalCitations: citations.length,
      validCitations: validated.filter((v) => v.isValid).length,
      issues: validated.filter((v) => !v.isValid),
      correctedDocument: reconstructDocumentWithCorrections(documentText, validated),
    };
    return { content: [{ type: "text", text: JSON.stringify(summary) }] };
  },
);

Part 10: 裁判所記録アラートの設定

リアルタイムの事件提出書面アラート

ドケット監視のために PACER integration を設定します。

Setup PACER MCP Server:

{
  "mcpServers": {
    "pacer": {
      "command": "npx",
      "args": ["-y", "@open-legal-tools/pacer-mcp"],
      "env": {
        "PACER_USERNAME": "your-pacer-login",
        "PACER_PASSWORD": "your-pacer-password",
        "PACER_CLIENT_CODE": "your-client-code"
      }
    },
    "recap": {
      "command": "npx",
      "args": ["-y", "@free-law-project/recap-mcp"],
      "tools": [
        "search_pacer_documents",
        "get_docket",
        "set_filing_alerts",
        "get_document"
      ]
    }
  }
}

850M+ Record Search Patterns

包括的な裁判所記録検索のためのクエリパターン:

Workflow: Competitive intelligence monitoring

Setup alert for:
- All cases involving Company X in federal courts
- Parties: Company X (plaintiff or defendant)
- Date range: Last 2 years
- Alert frequency: Real-time

Assistant multi-source search:
1. Query PACER for Company X docket entries
2. Search RECAP for public documents
3. Cross-reference state court records
4. Extract defendants/plaintiffs for analysis
5. Generate competitive threat assessment

Large-Scale Search Configuration:

# Search patterns for 850M+ document database
# Example: Patent litigation involving software
 
curl -X POST https://api.recap.org/search \
  -H "Content-Type: application/json" \
  -d '{
    "query": "software patent infringement",
    "courts": ["all_federal"],
    "date_filed_after": "2023-01-01",
    "document_types": ["complaint", "judgment"],
    "limit": 1000
  }'

ドケット監視

自動化されたドケット追跡ワークフロー:

Monitor docket: Smith v. Jones, Case No. 2023-CV-12345

Daily workflow:
1. Check for new filings (PACER alert)
2. Extract filing metadata (date, filer, document type)
3. Download documents if Rule 34 request received
4. Flag critical events (depositions, trial dates)
5. Summarize for team

Configuration:
{
  "monitored_dockets": [
    {
      "case_id": "2023-CV-12345",
      "court": "Northern District of California",
      "check_frequency": "daily",
      "alerts": {
        "critical_events": true,
        "discovery_deadlines": true,
        "expert_disclosures": true,
        "all_filings": false
      }
    }
  ]
}

当事者ベースの追跡

特定の当事者が関与するすべての案件を監視します。

// party-tracker-mcp.js
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { z } from "zod";
 
const server = new McpServer({ name: "party-tracker", version: "1.0.0" });
 
server.registerTool(
  "track_party",
  {
    description: "Monitor all cases involving a party",
    inputSchema: {
      partyName: z.string().describe("Individual or company name"),
      role: z.enum(["plaintiff", "defendant", "all"]),
      courts: z.array(z.string()).describe("Courts to monitor"),
    },
  },
  async ({ partyName, role, courts }) => {
    const cases = await searchAllCourts(partyName, role, courts);
    const dockets = await Promise.all(cases.map((c) => getDocket(c.caseId)));
    const report = {
      totalCases: cases.length,
      activeCases: cases.filter((c) => c.status === "open"),
      dockets,
      competitiveAnalysis: analyzePartyHistory(cases),
    };
    return { content: [{ type: "text", text: JSON.stringify(report) }] };
  },
);

Part 11: エージェント的な多段階調査パターン

深度の高い法務調査ワークフロー

エージェントのような振る舞いで複雑な調査タスクを実行します。

Research request:
"My client is negotiating a software licensing agreement
with a major tech company. Research the landscape of:
1. Recent software licensing disputes
2. Key contract provisions courts scrutinize
3. Best practices from firm precedents
4. Relevant patent litigation affecting licensing
5. Synthesize into deal negotiation memo"

Assistant agent workflow:
Step 1: Research Phase
  - Query Midpage for software licensing cases (last 5 years)
  - Extract critical issues from leading cases

Step 2: Precedent Phase
  - Search SharePoint for firm's prior licensing agreements
  - Extract successful clause language
  - Identify deal-breaker provisions by client type

Step 3: Patent Phase
  - Search Google Patents for relevant technology patents
  - Identify software licensing implications
  - Flag cross-license requirements

Step 4: Synthesis Phase
  - Organize findings by provision (IP ownership, liability, etc.)
  - Cross-reference case law to deal terms
  - Generate risk assessment matrix

Step 5: Deliverable Phase
  - Create negotiation memo with:
    * Market landscape summary
    * Key case takeaways
    * Recommended provisions
    * Risk mitigation strategies

複数ソースの統合

ソース横断で連携調査を行うための設定:

{
  "mcpServers": {
    "midpage": { },
    "sharepoint": { },
    "google-patents": {
      "command": "npx",
      "args": ["-y", "google-patents-mcp"]
    },
    "courtlistener": { }
  },
  "research_workflows": {
    "licensing_negotiation": {
      "sources": ["midpage", "sharepoint", "google-patents"],
      "steps": [
        "search_cases",
        "extract_precedents",
        "patent_analysis",
        "synthesize_findings"
      ],
      "output_format": "negotiation_memo"
    }
  }
}

調査計画の生成

自動で調査計画を立てるワークフロー:

User: "I need to understand California's position on
non-compete agreements in employment contracts.
What should I research?"

Assistant research planner:
"I'll develop a research plan covering:

Phase 1: Controlling Authority
  - California Supreme Court cases on non-competes
  - Test: Is non-compete reasonable? (Blue Pencil doctrine)
  - Key cases: Silguero, Edwards, Morbi

Phase 2: Legislature Response
  - California Business & Professions Code § 16600
  - Legislative amendments (2024 updates)
  - Statutory interpretation

Phase 3: Modern Applications
  - Recent Court of Appeal decisions (2023-2025)
  - Non-compete vs. non-solicitation distinction
  - Remote work implications

Phase 4: Practical Synthesis
  - Enforceable provisions despite § 16600
  - Trade secret protection alternatives
  - Employment agreement drafting best practices

Estimated research time: 2-3 hours
Key sources: Midpage, Clio firm memos, Bar Association guidance"

反復的な改善

反復ごとに改善される調査ワークフローを構築します。

# research_refinement_pattern.py
research_iteration = {
    "initial_query": "California non-compete enforceability",
 
    "iteration_1": {
        "findings": "Initial results show non-competes generally unenforceable",
        "questions_raised": [
            "What about legitimate business interests exception?",
            "How does this apply to C-suite executives?",
            "Recent trends in remote work?"
        ]
    },
 
    "iteration_2": {
        "refined_searches": [
            "California non-compete exceptions legitimate business interests",
            "Non-compete enforcement executive employment contracts",
            "Non-compete non-solicitation remote work 2024"
        ],
        "new_findings": "Narrow exceptions for limited legitimate interests",
        "additional_questions": [
            "What qualifies as legitimate business interest?",
            "How do courts balance employee freedom with employer protection?"
        ]
    },
 
    "iteration_3": {
        "targeted_research": [
            "California Business Code § 16600 case law interpretation",
            "Blue pencil doctrine in non-compete context",
            "Employer strategic alternatives to non-competes"
        ],
        "synthesis": "Actionable guidance for client"
    }
}

Part 12: 判例分析の解釈

裁判官の行動分析

訴訟戦略のために司法分析を統合します。

Query: "Judge Smith handles patent licensing disputes
in the Northern District of California. What patterns
can I identify in her decisions?"

Analytics workflow:
1. Search RECAP for all Judge Smith cases
2. Extract relevant patent licensing decisions
3. Analyze patterns:
   - Grant rate on summary judgment motions
   - Treatment of injunction requests
   - Damages awards (high/low/reasonable)
   - Attitude toward expert witnesses
4. Compare to district averages
5. Generate litigation strategy recommendations

Configuration for Judicial Analytics:

{
  "mcpServers": {
    "judicial-analytics": {
      "command": "npx",
      "args": ["-y", "judicial-analytics-mcp"],
      "tools": [
        "judge_profile",
        "decision_patterns",
        "motion_grant_rates",
        "remedy_analysis",
        "compare_judges"
      ],
      "env": {
        "RECAP_API": "api-key",
        "COURTLISTENER_API": "api-key"
      }
    }
  }
}

弁護士パフォーマンスデータ

相手方代理人の傾向を追跡します。

Workflow: Opposing Counsel Analysis

For: Attorney Jane Doe (plaintiff's counsel)

Metrics extracted:
- Settlement rate: 45% (vs. district average 52%)
- Trial win rate: 62% (favorable)
- Average verdict: $1.2M (high-value cases)
- Expert witness preferences: Specific firms used repeatedly
- Motion practice: Aggressive discovery requests
- Deposition style: Confrontational

Strategic implications:
- Prepare for aggressive discovery
- Expect push to trial
- May be open to structured settlements
- Anticipated expert witnesses based on historical patterns

結果予測パターン

機械学習支援による結果予測:

Query: "Predict the likely outcome of our employment
discrimination case with Judge Smith in NDCA."

Analysis:
1. Historical data: Judge Smith's discrimination cases
2. Factors: Strength of evidence, damages, settlement history
3. Prediction: 65% chance of plaintiff success in trial
4. Outcome distribution:
   - Summary judgment win (defendant): 20%
   - Trial win (defendant): 15%
   - Trial win (plaintiff): 45%
   - Settlement: 20%
5. Median award if plaintiff prevails: $850,000
6. Confidence interval: +/- $300,000

和解レンジ分析

データ駆動型の和解評価:

// settlement-analytics-mcp.js
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { z } from "zod";
 
const server = new McpServer({ name: "settlement-analytics", version: "1.0.0" });
 
server.registerTool(
  "predict_settlement_range",
  {
    description: "Analyze historical settlements for range prediction",
    inputSchema: {
      caseType: z.string().describe("Employment, IP, contract, etc."),
      jurisdiction: z.string(),
      judge: z.string(),
      damages: z.number().describe("Claimed damages"),
    },
  },
  async ({ caseType, jurisdiction, judge, damages }) => {
    const historicalCases = await searchSimilarCases(caseType, jurisdiction, judge);
    const settlementRates = analyzeSettlements(historicalCases);
    const predictedRange = calculateRange(damages, settlementRates, judge);
    const output = {
      predictedLowRange: predictedRange.low,
      predictedMidRange: predictedRange.mid,
      predictedHighRange: predictedRange.high,
      confidence: predictedRange.confidence,
      comparableCases: historicalCases.slice(0, 5),
    };
    return { content: [{ type: "text", text: JSON.stringify(output) }] };
  },
);

Part 13: エンタープライズ向けソリューションとの比較

General Assistant + MCP vs. Harvey Integration

AspectGeneral assistant + MCPHarvey
Setup自力構築または簡単な設定ベンダー管理
Customization完全に制御可能限定的
Research sources自分で選択Harvey が選定したソース
Document management任意のシステムを接続可能Harvey Vault のみ
Pricing modelツール/サービスごとの組み合わせ一体型のエンタープライズ契約
Maintenance自分で管理Harvey が管理

どちらを選ぶべきか

Choose a general assistant + MCP when:

  • integrations を自分で制御したい
  • コストが重要な要素である
  • セットアップのための IT リソースがある
  • 標準的でないツールを使っている

Choose Harvey/Legora when:

  • すぐに使える turnkey solution を求めている
  • enterprise support が必要である
  • premium pricing を許容できる予算がある
  • ベンダーの説明責任が必要である

今すぐやること

  • Midpage または CourtListener をアシスタントに接続する(Part 2 または 3)
  • 判例検索を実行し、引用に調査ソースタグが付いていることを確認する
  • 1つの引用について citator を使って今も有効な判例か確認する
  • 複数ソースの調査タスクを試す(例: 判例 + 事務所文書)
  • team 向けにセットアップ内容を記録する

関連


Quick Reference: ソース別の調査プロンプト

これらのプロンプトは、名前のあるソース用の connector が接続されていることを前提としています。接続されていない場合、アシスタントは推測するのではなく、その旨を伝えるべきです。

Midpage

Search for [topic] cases in [jurisdiction]
Verify citation [citation] is still good law
Find cases that cite [case name]
Check if [case] has been overruled or limited

CourtListener

Search CourtListener for [query]
Get full text of [case citation]
Find oral arguments in [case]
Search by judge: [judge name] in [court]

Legislative & Regulatory

Search Congress for bills matching [criteria]
Track amendments to [statute] by year
Compare versions of [bill] across sessions
Search Federal Register for [regulation changes]
Monitor bills in [state legislature] related to [topic]

Court Records

Search PACER for cases involving [party name]
Get docket for [case number] in [court]
Set alert for filings in [case number]
Search RECAP for [party] across all federal courts
Find all cases by Judge [judge name]

Citation Verification

Verify citation [citation] is still good law
Check Shepard's for [case]: positive/negative treatment
Find alternative authorities for [proposition]
Validate citation format for [citation] (Bluebook/ALWD)

Document Management

Search [system] for documents matching [criteria]
Retrieve document [name/ID] from [location]
List recent documents in [workspace/folder]

Analytics & Insights

Analyze Judge [judge name] decision patterns for [case type]
Predict settlement range for [case type] before Judge [judge]
Compare outcome patterns for opposing counsel [attorney name]
Calculate motion grant rates for [judge] on [motion type]

Sources

Claude

OpenAI

Protocol and research sources

Additional Reading


← Previous: Legal Plugin | Next: Cowork Automation →

On this page

1 学習目標2 Part 1: 法務向け MCP を理解する2.1 MCP とは?2.2 なぜ法務で MCP が重要なのか2.3 検証済みコネクタと MCP サーバー3 Part 2: 判例調査コネクタの設定 (Midpage)3.1 Midpage が提供するもの3.2 統合のメリット4 Part 3: CourtListener の設定(無料の代替)4.1 CourtListener が提供するもの4.2 CourtListener vs. Midpage5 Part 4: 文書管理の統合5.1 MCP TypeScript Stack (Updated Feb 2026)5.2 Option A: すでに存在するコネクタ5.3 Option C: custom MCP server を介した iManage6 Part 5: 法務調査ワークフローの構築6.1 Workflow 1: 包括的な法務調査6.2 Workflow 2: 契約 + 調査の統合6.3 Workflow 3: デューデリジェンス調査7 Part 6: 高度な MCP 設定7.1 複数サーバーの実行とスコープ設定7.2 接続のデバッグ8 Part 7: セキュリティ上の考慮事項8.1 データフロー8.2 セキュリティのベストプラクティス9 Part 8: 法令調査ワークフロー9.1 Legislative Tracking Integration9.2 Statute Version Comparison9.3 規制コード検索9.4 Bill Tracking Workflows10 Part 9: 引用確認プロセス10.1 自動 Cite-Checking10.2 Good Law Verification System10.3 Shepardizing/KeyCiting に相当するもの10.4 Citation Format Validation11 Part 10: 裁判所記録アラートの設定11.1 リアルタイムの事件提出書面アラート11.2 850M+ Record Search Patterns11.3 ドケット監視11.4 当事者ベースの追跡12 Part 11: エージェント的な多段階調査パターン12.1 深度の高い法務調査ワークフロー12.2 複数ソースの統合12.3 調査計画の生成12.4 反復的な改善13 Part 12: 判例分析の解釈13.1 裁判官の行動分析13.2 弁護士パフォーマンスデータ13.3 結果予測パターン13.4 和解レンジ分析14 Part 13: エンタープライズ向けソリューションとの比較14.1 General Assistant + MCP vs. Harvey Integration14.2 どちらを選ぶべきか15 今すぐやること16 関連17 Quick Reference: ソース別の調査プロンプト17.1 Midpage17.2 CourtListener17.3 Legislative & Regulatory17.4 Court Records17.5 Citation Verification17.6 Document Management17.7 Analytics & Insights18 Sources19 Additional Reading