Skip to main content
Glama

SerpMCP

PyPI version PyPI downloads Python 3.10+ License: MIT MCP

AceDataCloud APIを通じてSERP APIを利用する、Google検索用のModel Context Protocol (MCP)サーバーです。

Claude、VS Code、またはMCP互換クライアントから直接Google検索を実行し、構造化された結果を取得できます。

機能

  • ウェブ検索 - 構造化された結果を伴う通常のGoogleウェブ検索

  • 画像検索 - URLとサムネイル付きの画像検索

  • ニュース検索 - あらゆるトピックに関する最新のニュース記事を取得

  • 動画検索 - YouTubeやその他のソースから動画を検索

  • 場所検索 - 地元の企業や場所を検索

  • 地図検索 - 場所や地理情報を検索

  • ナレッジグラフ - 構造化されたエンティティ情報を取得

  • ローカライゼーション - 複数の国と言語をサポート

  • 時間フィルタリング - 時間範囲で結果をフィルタリング

ツールリファレンス

ツール

説明

serp_google_search

Googleで検索し、SERP APIを使用して構造化された結果を取得します。

serp_google_images

Google画像検索を行い、画像結果を取得します。

serp_google_news

Googleニュース検索を行い、ニュース記事の結果を取得します。

serp_google_videos

Google動画検索を行い、動画結果を取得します。

serp_google_places

Googleで地元の場所や企業を検索します。

serp_google_maps

Googleマップで場所を検索します。

serp_list_search_types

利用可能なすべてのGoogle検索タイプを一覧表示します。

serp_list_countries

Google検索で一般的に使用される国コードを一覧表示します。

serp_list_languages

Google検索で一般的に使用される言語コードを一覧表示します。

serp_list_time_ranges

Google検索で利用可能な時間範囲フィルターを一覧表示します。

serp_get_usage_guide

Google SERPツールを使用するための包括的なガイドを取得します。

クイックスタート

1. APIトークンの取得

  1. AceDataCloud Platformにサインアップします

  2. APIドキュメントページに移動します

  3. **「Acquire」**をクリックしてAPIトークンを取得します

  4. 以下の使用のためにトークンをコピーします

2. ホスト型サーバーの使用(推奨)

AceDataCloudは管理されたMCPサーバーをホストしており、ローカルインストールは不要です

エンドポイント: https://serp.mcp.acedata.cloud/mcp

すべてのリクエストにはBearerトークンが必要です。ステップ1で取得したAPIトークンを使用してください。

Claude.ai

OAuthを使用してClaude.aiに直接接続します(APIトークンは不要です):

  1. Claude.aiの設定 → 統合 → 追加に移動します

  2. サーバーURLを入力します: https://serp.mcp.acedata.cloud/mcp

  3. OAuthログインフローを完了します

  4. 会話でツールの使用を開始します

Claude Desktop

設定ファイル(macOSの場合は ~/Library/Application Support/Claude/claude_desktop_config.json)に追加します:

{
  "mcpServers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Cursor / Windsurf

MCP設定(.cursor/mcp.json または .windsurf/mcp.json)に追加します:

{
  "mcpServers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

VS Code (Copilot)

VS CodeのMCP設定(.vscode/mcp.json)に追加します:

{
  "servers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

または、VS Code用のAce Data Cloud MCP拡張機能をインストールしてください。これには15個のMCPサーバーすべてがバンドルされており、ワンクリックでセットアップできます。

JetBrains IDE

  1. **設定 → ツール → AI Assistant → Model Context Protocol (MCP)**に移動します

  2. 追加HTTPをクリックします

  3. 以下を貼り付けます:

{
  "mcpServers": {
    "serp": {
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Claude Code

Claude CodeはMCPサーバーをネイティブでサポートしています:

claude mcp add serp --transport http https://serp.mcp.acedata.cloud/mcp \
  -h "Authorization: Bearer YOUR_API_TOKEN"

または、プロジェクトの .mcp.json に追加します:

{
  "mcpServers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Cline

ClineのMCP設定(.cline/mcp_settings.json)に追加します:

{
  "mcpServers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Amazon Q Developer

MCP設定に追加します:

{
  "mcpServers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Roo Code

Roo CodeのMCP設定に追加します:

{
  "mcpServers": {
    "serp": {
      "type": "streamable-http",
      "url": "https://serp.mcp.acedata.cloud/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_TOKEN"
      }
    }
  }
}

Continue.dev

.continue/config.yaml に追加します:

mcpServers:
  - name: serp
    type: streamable-http
    url: https://serp.mcp.acedata.cloud/mcp
    headers:
      Authorization: "Bearer YOUR_API_TOKEN"

Zed

Zedの設定(~/.config/zed/settings.json)に追加します:

{
  "language_models": {
    "mcp_servers": {
      "serp": {
        "url": "https://serp.mcp.acedata.cloud/mcp",
        "headers": {
          "Authorization": "Bearer YOUR_API_TOKEN"
        }
      }
    }
  }
}

cURLテスト

# Health check (no auth required)
curl https://serp.mcp.acedata.cloud/health

# MCP initialize
curl -X POST https://serp.mcp.acedata.cloud/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}'

3. またはローカルで実行(代替手段)

自分のマシンでサーバーを実行したい場合:

# Install from PyPI
pip install mcp-serp
# or
uvx mcp-serp

# Set your API token
export ACEDATACLOUD_API_TOKEN="your_token_here"

# Run (stdio mode for Claude Desktop / local clients)
mcp-serp

# Run (HTTP mode for remote access)
mcp-serp --transport http --port 8000

Claude Desktop (ローカル)

{
  "mcpServers": {
    "serp": {
      "command": "uvx",
      "args": ["mcp-serp"],
      "env": {
        "ACEDATACLOUD_API_TOKEN": "your_token_here"
      }
    }
  }
}

Docker (セルフホスト)

docker pull ghcr.io/acedatacloud/mcp-serp:latest
docker run -p 8000:8000 ghcr.io/acedatacloud/mcp-serp:latest

クライアントは独自のBearerトークンで接続します。サーバーは各リクエストの Authorization ヘッダーからトークンを抽出します。

利用可能なツール

検索ツール

ツール

説明

serp_google_search

すべてのオプションを備えた柔軟なGoogle検索

serp_google_images

画像検索

serp_google_news

ニュース記事の検索

serp_google_videos

動画検索

serp_google_places

地元の場所や企業の検索

serp_google_maps

地図上の場所の検索

情報ツール

ツール

説明

serp_list_search_types

利用可能な検索タイプの一覧

serp_list_countries

ローカライゼーション用の国コードの一覧

serp_list_languages

ローカライゼーション用の言語コードの一覧

serp_list_time_ranges

時間範囲フィルターオプションの一覧

serp_get_usage_guide

包括的な使用ガイドの取得

使用例

基本的なウェブ検索

User: Search for information about artificial intelligence

Claude: I'll search for information about AI.
[Calls serp_google_search with query="artificial intelligence"]

時間フィルター付きニュース検索

User: What's the latest news about technology?

Claude: I'll search for recent tech news.
[Calls serp_google_news with query="technology", time_range="qdr:d"]

ローカライズされた検索

User: Find popular restaurants in Tokyo

Claude: I'll search for restaurants in Tokyo.
[Calls serp_google_places with query="popular restaurants Tokyo", country="jp"]

画像検索

User: Find images of the Northern Lights

Claude: I'll search for aurora borealis images.
[Calls serp_google_images with query="Northern Lights aurora borealis"]

検索パラメータ

検索タイプ

タイプ

説明

search

通常のウェブ検索(デフォルト)

images

画像検索

news

ニュース記事

maps

地図結果

places

地元の企業

videos

動画結果

時間範囲フィルター

コード

時間範囲

qdr:h

過去1時間

qdr:d

過去1日

qdr:w

過去1週間

qdr:m

過去1ヶ月

一般的な国コード

コード

us

アメリカ合衆国

uk

イギリス

cn

中国

jp

日本

de

ドイツ

fr

フランス

一般的な言語コード

コード

言語

en

英語

zh-cn

中国語(簡体字)

ja

日本語

es

スペイン語

fr

フランス語

de

ドイツ語

レスポンス構造

通常の検索結果

  • knowledge_graph: エンティティ情報(企業、人物など)

  • answer_box: 直接的な回答

  • organic: タイトル、リンク、スニペットを含む通常の検索結果

  • people_also_ask: 関連する質問

  • related_searches: 関連するクエリ

画像検索結果

  • images: URLとサムネイルを含む画像結果

ニュース検索結果

  • news: ソースと日付を含むニュース記事

設定

環境変数

変数

説明

デフォルト

ACEDATACLOUD_API_TOKEN

AceDataCloudのAPIトークン

必須

ACEDATACLOUD_API_BASE_URL

APIベースURL

https://api.acedata.cloud

ACEDATACLOUD_OAUTH_CLIENT_ID

OAuthクライアントID(ホストモード)

ACEDATACLOUD_PLATFORM_BASE_URL

プラットフォームベースURL

https://platform.acedata.cloud

SERP_REQUEST_TIMEOUT

リクエストタイムアウト(秒)

30

LOG_LEVEL

ログレベル

INFO

コマンドラインオプション

mcp-serp --help

Options:
  --version          Show version
  --transport        Transport mode: stdio (default) or http
  --port             Port for HTTP transport (default: 8000)

開発

開発環境のセットアップ

# Clone repository
git clone https://github.com/AceDataCloud/SerpMCP.git
cd SerpMCP

# Create virtual environment
python -m venv .venv
source .venv/bin/activate  # or `.venv\Scripts\activate` on Windows

# Install with dev dependencies
pip install -e ".[dev,test]"

テストの実行

# Run unit tests
pytest

# Run with coverage
pytest --cov=core --cov=tools

# Run integration tests (requires API token)
pytest tests/test_integration.py -m integration

コード品質

# Format code
ruff format .

# Lint code
ruff check .

# Type check
mypy core tools

ビルドと公開

# Install build dependencies
pip install -e ".[release]"

# Build package
python -m build

# Upload to PyPI
twine upload dist/*

プロジェクト構造

SerpMCP/
├── core/                   # Core modules
│   ├── __init__.py
│   ├── client.py          # HTTP client for SERP API
│   ├── config.py          # Configuration management
│   ├── exceptions.py      # Custom exceptions
│   └── server.py          # MCP server initialization
├── tools/                  # MCP tool definitions
│   ├── __init__.py
│   ├── search_tools.py    # Search tools
│   └── info_tools.py      # Information tools
├── prompts/                # MCP prompt templates
│   └── __init__.py
├── tests/                  # Test suite
│   ├── conftest.py
│   ├── test_client.py
│   └── test_config.py
├── deploy/                 # Deployment configs
│   └── production/
│       ├── deployment.yaml
│       ├── ingress.yaml
│       └── service.yaml
├── .env.example           # Environment template
├── .gitignore
├── CHANGELOG.md
├── Dockerfile             # Docker image for HTTP mode
├── docker-compose.yaml    # Docker Compose config
├── LICENSE
├── main.py                # Entry point
├── pyproject.toml         # Project configuration
└── README.md

APIリファレンス

このサーバーはAceDataCloud Google SERP APIをラップしています:

貢献

貢献を歓迎します!以下の手順に従ってください:

  1. リポジトリをフォークする

  2. フィーチャーブランチを作成する (git checkout -b feature/amazing)

  3. 変更をコミットする (git commit -m 'Add amazing feature')

  4. ブランチにプッシュする (git push origin feature/amazing)

  5. プルリクエストを開く

ライセンス

MITライセンス - 詳細はLICENSEを参照してください。

リンク


Made with love by AceDataCloud

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
2dRelease cycle
45Releases (12mo)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AceDataCloud/SerpMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server