mcpField
G
Google Patents Mcp

Google Patents Mcp

ローカル
npmjs.com法務・行政4161 週間前に更新

Google Patents Mcp について

Google Patents MCP Server は、SerpApi の Google Patents API を通じて特許情報を検索する MCP サーバーです。AI アシスタントから特許を調べたい利用者向けで、npx で直接実行できます。

主な機能

  1. 01search_patents ツールの提供
  2. 02SerpApi をバックエンドとして使用
  3. 03ローカルインストールなしで npx 実行
  4. 04環境変数または .env ファイルでの API キー設定
  5. 05LOG_LEVEL によるログレベルの設定

活用シーン

  1. 01AI アシスタントからの特許文献検索
  2. 02高度な検索構文による特許結果の絞り込み

MCP 対応

本プロジェクトは MCP サーバーであり、search_patents ツールを MCP クライアントに公開して、SerpApi の検索結果を JSON で返します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"google-patents": {
"command": "npx",
"args": [
"-y",
"@kunihiros/google-patents-mcp"
],
"env": {
"SERPAPI_API_KEY": "<SERPAPI_API_KEY>"
}
}
}
}
起動コマンドnpx -y @kunihiros/google-patents-mcp
設定が必要な環境変数
SERPAPI_API_KEYシークレット

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@kunihiros/google-patents-mcp

ツール

1

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
afterstringいいえ最小日付のフィルター(例:'publication:20230101'、'filing:20220601')。形式:type:YYYYMMDD。type は 'priority'、'filing'、'publication' のいずれかです。
assigneestringいいえ譲受人名で絞り込みます。複数の名前はカンマ (,) で区切ります。
beforestringいいえ最大日付のフィルター(例:'publication:20231231'、'filing:20220101')。形式:type:YYYYMMDD。type は 'priority'、'filing'、'publication' のいずれかです。
countrystringいいえ国コードで絞り込みます(例:'US'、'WO,JP')。複数のコードはカンマ (,) で区切ります。
inventorstringいいえ発明者名で絞り込みます。複数の名前はカンマ (,) で区切ります。
languagestringいいえ言語で絞り込みます(例:'ENGLISH'、'JAPANESE,GERMAN')。複数の言語はカンマ (,) で区切ります。対応言語:ENGLISH、GERMAN、CHINESE、FRENCH、SPANISH、ARABIC、JAPANESE、KOREAN、PORTUGUESE、RUSSIAN、ITALIAN、DUTCH、SWEDISH、FINNISH、NORWEGIAN、DANISH。
numintegerいいえ1 ページあたりの結果数(デフォルト:10)。**重要:10 以上(最大 100)を指定してください。**
pageintegerいいえページネーションのページ番号(デフォルト:1)。
qstringはい検索クエリ(必須)。SerpApi のドキュメントでは省略可能ですが、実際には空でないクエリが必要です。複数の語句はセミコロン (;) で区切ります。'(Coffee) OR (Tea);(A47J)' のような高度な構文に対応しています。詳しくは 'About Google Patents' を参照してください。
scholarbooleanいいえGoogle Scholar の検索結果を含めます(デフォルト:false)。
sortenumいいえ並べ替え方法。'relevance'(デフォルト)、'new'(出願日/公開日の新しい順)、'old'(出願日/公開日の古い順)。relevance | new | old
statusenumいいえ特許のステータスで絞り込みます:'GRANT' または 'APPLICATION'。GRANT | APPLICATION
typeenumいいえ特許の種類で絞り込みます:'PATENT' または 'DESIGN'。PATENT | DESIGN

詳細

MseeP.ai セキュリティ評価バッジ

Google Patents MCP サーバー(google-patents-mcp)

smithery バッジ npm バージョン

このプロジェクトは、SerpApi Google Patents APIを通じてGoogle Patentsの情報を検索できるModel Context Protocol(MCP)サーバーを提供します。

Smithery経由でのインストール

Smithery経由でClaude Desktop用のGoogle Patents MCP Serverを自動的にインストールするには:

npx -y @smithery/cli install @KunihiroS/google-patents-mcp --client claude

変更履歴

v0.2.0(2025-04-17)
  • 修正: resources/listおよびprompts/list MCPメソッド用の空のハンドラーを実装しました。
  • 修正: サーバーの初期化時にprompts機能を宣言しました。
  • 雑務: 依存関係を更新しました。

これらの変更は、こうした標準エンドポイントを必要とする可能性があるClaude DesktopなどのMCPクライアントとの互換性向上を目的としています。ただし、Claude Desktopでの直接テストはまだ実施されていません。

機能

  • Google Patentsを検索するMCPツールsearch_patentsを提供します。
  • バックエンドとしてSerpApiを使用します。
  • ローカルにインストールせず、npxで直接実行できます。

前提条件

  • Node.js: バージョン18以降を推奨します。
  • npm: npxコマンドの実行に必要です。
  • SerpApi APIキー: Google Patents APIを使用するには、SerpApiの有効なAPIキーが必要です。

クイックスタート(npxを使用)

このサーバーを実行する最も簡単な方法は、npxを使用することです。このコマンドは、必要に応じてサーバーをダウンロードし、直接実行します。

npx @kunihiros/google-patents-mcp

注: パッケージ名が異なる場合は、@kunihiros/google-patents-mcpを実際に公開されているパッケージ名に置き換えてください。

サーバーが起動し、標準入出力でMCPリクエストを待ち受けます。

設定

このサーバーにはSerpApi APIキーが必要です。次のいずれかの方法で指定できます。

  1. 環境変数(MCPホストに推奨): サーバーの実行時にSERPAPI_API_KEY環境変数を設定します。多くの場合、MCPホストの設定でサーバーの環境変数を設定できます。

    MCPホストの設定例(config.jsonなど):

    {
      "mcpServers": {
        "google-patents-mcp": {
          "command": "npx",
          "args": [
            "-y", // Skips confirmation if the package isn't installed locally
            "@kunihiros/google-patents-mcp" // Use the correct package name
          ],
          "env": {
            "SERPAPI_API_KEY": "YOUR_ACTUAL_SERPAPI_KEY"
            // Optional: Set log level
            // "LOG_LEVEL": "debug"
          }
        }
      }
    }
    
  2. .envファイル: npxコマンドを実行するディレクトリ(ローカルテスト用、またはMCPホストを使用しない場合)、あるいはホームディレクトリ(~/.google-patents-mcp.env)に、次の内容で.envファイルを作成します。

    SERPAPI_API_KEY=YOUR_ACTUAL_SERPAPI_KEY
    # Optional: Set log level (e.g., debug, info, warn, error)
    # LOG_LEVEL=debug
    

    注: .envファイルはローカルテストには便利ですが、本番環境やMCPホストとの連携では、ホストの設定から環境変数を直接設定する方法が推奨され、より安全です。主な利用方法として、環境変数は通常、呼び出し元のプロセスまたはMCPホストによって管理されるnpx経由での実行を想定しています。

サーバーは次の順序で.envファイルを検索します。 * ./.env(npxを実行した場所からの相対パス) * ~/.google-patents-mcp.env(ホームディレクトリ内)

提供されるMCPツール

search_patents

SerpApi を介して Google Patents を検索します。

入力スキーマ:

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "description": "Search query (required). Although optional in SerpApi docs, a non-empty query is practically needed. Use semicolon (;) to separate multiple terms. Advanced syntax like '(Coffee) OR (Tea);(A47J)' is supported. See 'About Google Patents' for details."
    },
    "page": {
      "type": "integer",
      "description": "Page number for pagination (default: 1).",
      "default": 1
    },
    "num": {
      "type": "integer",
      "description": "Number of results per page (default: 10). **IMPORTANT: Must be 10 or greater (up to 100).**",
      "default": 10,
      "minimum": 10,
      "maximum": 100
    },
    "sort": {
      "type": "string",
      "enum": ["relevance", "new", "old"],
      "description": "Sorting method. 'relevance' (default), 'new' (newest by filing/publication date), 'old' (oldest by filing/publication date).",
      "default": "relevance"
    },
    "before": {
      "type": "string",
      "description": "Maximum date filter (e.g., 'publication:20231231', 'filing:20220101'). Format: type:YYYYMMDD where type is 'priority', 'filing', or 'publication'."
    },
    "after": {
      "type": "string",
      "description": "Minimum date filter (e.g., 'publication:20230101', 'filing:20220601'). Format: type:YYYYMMDD where type is 'priority', 'filing', or 'publication'."
    },
    "inventor": {
      "type": "string",
      "description": "Filter by inventor names. Separate multiple names with a comma (,)."
    },
    "assignee": {
      "type": "string",
      "description": "Filter by assignee names. Separate multiple names with a comma (,)."
    },
    "country": {
      "type": "string",
      "description": "Filter by country codes (e.g., 'US', 'WO,JP'). Separate multiple codes with a comma (,)."
    },
    "language": {
      "type": "string",
      "description": "Filter by language (e.g., 'ENGLISH', 'JAPANESE,GERMAN'). Separate multiple languages with a comma (,). Supported: ENGLISH, GERMAN, CHINESE, FRENCH, SPANISH, ARABIC, JAPANESE, KOREAN, PORTUGUESE, RUSSIAN, ITALIAN, DUTCH, SWEDISH, FINNISH, NORWEGIAN, DANISH."
    },
    "status": {
      "type": "string",
      "enum": ["GRANT", "APPLICATION"],
      "description": "Filter by patent status: 'GRANT' or 'APPLICATION'."
    },
    "type": {
      "type": "string",
      "enum": ["PATENT", "DESIGN"],
      "description": "Filter by patent type: 'PATENT' or 'DESIGN'."
    },
    "scholar": {
      "type": "boolean",
      "description": "Include Google Scholar results (default: false).",
      "default": false
    }
  },
  "required": ["q"]
}

出力:

SerpApi からの検索結果を含む JSON オブジェクトを返します。構造は SerpApi のレスポンス形式に準拠しています。

使用例(MCP リクエスト):

{
  "mcp_version": "1.0",
  "type": "CallToolRequest",
  "id": "req-123",
  "server_name": "google-patents-mcp",
  "params": {
    "name": "search_patents",
    "arguments": {
      "q": "organic light emitting diode",
      "num": 10,
      "language": "ENGLISH",
      "status": "GRANT",
      "after": "publication:20230101"
    }
  }
}

開発

  1. (開発に必要な場合)リポジトリをクローンします:
    # git clone <repository-url>
    # cd google-patents-mcp
    
  2. 依存関係をインストールします:
    npm install
    
  3. .env ファイルを作成します: .env.example を .env にコピーし、SERPAPI_API_KEY を追加します。
  4. ビルドします:
    npm run build
    
  5. ローカルで実行します:
    npm start
    
    または、自動再ビルドを有効にして開発する場合:
    npm run dev
    

ログ

  • ログは標準エラー出力に出力されます。
  • ログレベルは LOG_LEVEL 環境変数(error、warn、info、http、verbose、debug、silly)で制御できます。デフォルトは info です。
  • プロジェクトのルートディレクトリ(google-patents-server.log)、ユーザーのホームディレクトリ(~/.google-patents-server.log)、または /tmp/google-patents-server.log にログファイルの作成を試みます。

ライセンス

MIT License(LICENSE ファイルを参照)

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。