MCP ExplorerExplorer

Google Custom Search

@adenoton 12 days ago
23 MIT
FreeCommunity
Web Services
#Google#Custom Search#Webpage Reading
Provides Google Search results via the Google Custom Search API

Overview

What is Google Custom Search

MCP Google Server is a server that utilizes the Google Custom Search API to provide web search capabilities and extract content from webpages. It offers structured search results and allows users to retrieve and clean webpage content.

Use cases

You can use this server to perform extensive web searches, gather information from specific sites, and extract readable content from any webpage. It is useful for developers building applications that require web scraping or search functionalities.

How to use

To use the server, you need to set up a Google Cloud Project, enable the Custom Search API, and create a Custom Search Engine to obtain an API key and Search Engine ID. Follow the installation instructions via Smithery, configure your client with API credentials, and then you can perform searches or read webpages using the specified JSON format.

Key features

The server features a search tool that allows users to perform web searches with configurable result counts and a webpage reader tool that retrieves and cleans webpage content while providing structured data such as title and main text.

Where to use

This server can be integrated into applications requiring web search or content extraction functionalities, making it suitable for projects related to web development, data analysis, and automated information retrieval.

Content

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

smithery badge

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)

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": {
        "GOOGLE_API_KEY": "your-api-key-here",
        "GOOGLE_SEARCH_ENGINE_ID": "your-search-engine-id-here"
      }
    }
  }
}

Usage

Search Tool

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.

Tools

search
Perform a web search query

Comments