使用説明

プロジェクト概要

このリポジトリは、特許データの分析と活用を目的としたシステムの一部であり、LLMクライアント(例: Claude)が外部の機能や情報源にアクセスするためのModel Context Protocol (MCP) サーバーの実装を含んでいます。MCPサーバーは、特許データベースへのアクセス機能、データ分析機能、およびGoogle Patents Public Dataとの連携機能を、LLMが利用可能な「ツール」や「リソース」として提供します。

主要機能

このMCPサーバーは、以下の主要な機能(ツールおよびリソース)をLLMに提供します。

  • 特許データアクセス (Inpit SQLite連携):
    • 出願番号による特許検索
    • 出願人名による特許検索
    • SQLクエリによる直接的なデータ取得
  • 特許分析機能:
    • 特定の出願人に関する包括的なサマリー生成
    • 出願人の特許活動に関する視覚的レポート生成(※画像はLLMクライアント側でのレンダリングが必要)
    • 出願人の特許審査状況分析
    • 出願人の技術分野分布分析
    • 指定した出願人と競合他社の比較分析
    • PDF形式での分析レポート生成(※PDFデータがツール実行結果として返される)
  • Google Patents Public Data連携:
    • Google Patentsから日本国特許データを取得してローカルデータベースに格納
    • 自然言語での特許データ検索
    • 特定の出願番号に関連するファミリー特許情報の取得
  • リソースアクセス:
    • Inpit SQLite連携データベースのステータスとスキーマ情報の取得
    • IPC(国際特許分類)コードの説明取得
    • Google Patents連携データベースのステータス情報の取得

インストール手順

  1. リポジトリのクローン:
    git clone https://github.com/shiftrepo/aws.git
    cd aws
  2. 前提条件の準備:
    • Python 3.8以上のインストール
    • DockerおよびDocker Composeのインストール
    • 必要に応じて、各コンポーネントディレクトリの'requirements.txt'に従いPythonパッケージをインストール(例: 'pip install -r inpit-sqlite-mcp/requirements.txt')
    • Google Patents連携機能を使用する場合は、Google Cloud Platformの認証情報(通常JSONファイル)およびAWS認証情報が必要です。
  3. 基盤サービス(Inpit SQLite API)の起動: Inpit SQLiteデータを提供するためのコンテナサービスを起動します。
    cd container/inpit-sqlite/
    docker-compose up -d
    (必要に応じて、データ準備のために'download_data.py'や'schema.py'スクリプトを実行する場合がありますが、docker-compose設定によっては自動で行われます)
  4. MCPサーバーの起動: Inpit SQLite連携およびGoogle Patents連携機能を提供するMCPサーバーを起動します。 プロジェクトルートディレクトリから実行します。MCPサーバーはポート8000で待ち受けます。
    cd inpit-sqlite-mcp/
    ./start_server.sh
    注: このリポジトリには'patent-mcp-server'など、他のMCPサーバー実装も含まれており、デフォルト設定のままではポート衝突が発生する可能性があります。通常、MCPクライアントは単一のMCPサーバーまたはゲートウェイに接続するため、用途に応じて適切なMCPサーバーを選択し、必要であればポート番号を調整してください。上記の例では'inpit-sqlite-mcp'サーバーを起動しています。

サーバー構成

MCPクライアントは、以下の情報を使用してこのMCPサーバーに接続および連携します。MCPクライアントの設定ファイル(通常JSON形式)にこれらの情報を記述します。

[
  {
    "server name": "特許情報MCPサーバー",
    "command": "./inpit-sqlite-mcp/start_server.sh",
    "args": [],
    "description": "LLM向け特許データアクセス・分析・Google Patents連携MCPサーバー",
    "notes": "プロジェクトルートディレクトリから実行することを想定。必要に応じコマンドパスや引数を調整ください。",
    "required_env": [
      {"name": "INPIT_API_URL", "description": "基盤となるInpit SQLite APIのエンドポイント (例: http://localhost:5001)"},
      {"name": "AWS_ACCESS_KEY_ID", "description": "AWS認証情報 (Bedrock利用に必要)"},
      {"name": "AWS_SECRET_ACCESS_KEY", "description": "AWS認証情報 (Bedrock利用に必要)"},
      {"name": "AWS_DEFAULT_REGION", "description": "AWSリージョン (Bedrock利用に必要)"},
      {"name": "GOOGLE_APPLICATION_CREDENTIALS", "description": "GCP認証情報ファイルパス (Google Patents連携に必要、S3からの取得も設定可能)"}
    ]
  }
  // 必要に応じて他のMCPサーバーの設定を追加 (例: patent-mcp-server)
  // {
  //   "server name": "特許分析レポートMCPサーバー",
  //   "command": "./patent-mcp-server/start_server.sh",
  //   "args": [],
  //   "description": "特許分析レポート機能を提供するMCPサーバー (異なるポートで起動してください)"
  //   // 他の必要な設定...
  // }
]

注: 上記のJSONはMCPクライアントがサーバーを起動・接続するために必要な設定例です。この設定を直接実行するのではなく、お使いのMCPクライアントのドキュメントを参照して、適切な形式で記述してください。

基本使用方法

  1. 上記「インストール手順」に従い、必要なサービスとMCPサーバーを起動します。
  2. お使いのMCPクライアントに、上記「サーバー構成」の情報を設定します。
  3. MCPクライアントを通じて、サーバーによって公開されたツールやリソースを検出・利用します。例えば、LLMに対して「〇〇株式会社の特許を検索して」や「IPC分類G06Fについて説明して」といったプロンプトを与えると、LLMは適切なツールやリソースを呼び出して応答を生成します。
  4. 特定のツール(例: 'generate_visual_report', 'generate_pdf_report')は、実行結果として画像データやPDFデータを含むことがあります。これらのデータの取り扱いは、お使いのLLMクライアントの実装に依存します。

信息

分类

AI与计算