Skip to main content
Glama
MCP Google Server

MCP Google Server

by pgzhang

mcp-google-server A MCP Server for Google Custom Search and Webpage Reading

A Model Context Protocol server that provides web search capabilities using Google Custom Search API and webpage content extraction functionality.

Setup

Getting Google API Key and Search Engine ID

  1. Create a Google Cloud Project:

    • Go to Google Cloud Console

    • Create a new project or select an existing one

    • Enable billing for your project

  2. Enable Custom Search API:

    • Go to API Library

    • Search for "Custom Search API"

    • Click "Enable"

  3. Get API Key:

    • Go to Credentials

    • Click "Create Credentials" > "API Key"

    • Copy your API key

    • (Optional) Restrict the API key to only Custom Search API

  4. Create Custom Search Engine:

    • Go to Programmable Search Engine

    • Enter the sites you want to search (use www.google.com for general web search)

    • Click "Create"

    • On the next page, click "Customize"

    • In the settings, enable "Search the entire web"

    • Copy your Search Engine ID (cx)

Related MCP server: MCP Server for Google Search

Development

Install dependencies:

npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run watch

Features

Search Tool

Perform web searches using Google Custom Search API:

  • Search the entire web or specific sites

  • Control number of results (1-10)

  • Get structured results with title, link, and snippet

Webpage Reader Tool

Extract content from any webpage:

  • Fetch and parse webpage content

  • Extract page title and main text

  • Clean content by removing scripts and styles

  • Return structured data with title, text, and URL

Installation

Installing via Smithery

To install Google Custom Search Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @adenot/mcp-google-search --client claude

To use with Claude Desktop, add the server config with your Google API credentials:

On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json On Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "google-search": {
      "command": "npx",
      "args": [
        "-y",
        "@adenot/mcp-google-search"
      ],
      "env": {
        "SMARTSEARCH_ENDPOINT": "your-endpoint-here",
        "SMARTSEARCH_AK": "your-ak-here"
      }
    }
  }
}

Usage

Search Tool

{
  "name": "search",
  "arguments": {
    "query": "your search query",
    "num": 5  // optional, default is 5, max is 10
  }
}

Webpage Reader Tool

{
  "name": "read_webpage",
  "arguments": {
    "url": "https://example.com"
  }
}

Example response from webpage reader:

{
  "title": "Example Domain",
  "text": "Extracted and cleaned webpage content...",
  "url": "https://example.com"
}

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:

npm run inspector

The Inspector will provide a URL to access debugging tools in your browser.

Available Tools

2 tools
read_webpageA

Fetch and extract text content from a webpage

Inputs: url (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

    TDQS

    B3.1/5.0

    Scored across 2 tools

    Disambiguation5/5

    The two tools have clearly distinct purposes: read_webpage fetches and extracts text from a specific URL, while search performs a web search query. There is no overlap or ambiguity between these functions, making it easy for an agent to select the appropriate tool.

    Naming Consistency5/5

    Both tools follow a consistent verb-based naming pattern (read_webpage, search) with clear, descriptive names. They use snake_case uniformly, and the verbs accurately reflect their actions without deviation.

    Tool Count2/5

    With only 2 tools, the server feels thin for a 'Google Server' domain, which typically involves broader functionality like email, calendar, or drive operations. While the tools are useful, the count is too low to adequately cover the implied scope, suggesting an incomplete or narrowly focused implementation.

    Completeness2/5

    Given the server name 'MCP Google Server', there are significant gaps in coverage, such as missing tools for Google services like Gmail, Calendar, Drive, or authentication. The current tools only handle web-related tasks, making the surface severely incomplete for the expected domain.

    Related MCP Connectors

    Related MCP Servers