trackmcp
Back to directory
alexatnordnet

mcp-google-custom-search-server

View on GitHub

An mcp server for searching against google custom search api

37 stars TypeScriptAI & Machine Learning Updated Oct 23, 2025

Documentation

MCP Google Custom Search Server

A Model Context Protocol (MCP) server that provides web search capabilities through Google's Custom Search API. This server enables Language Learning Models (LLMs) to perform web searches using a standardized interface.

๐ŸŒŸ Features

  • Seamless integration with Google Custom Search API
  • Model Context Protocol (MCP) compliant server implementation
  • Type-safe implementation using TypeScript
  • Environment variable configuration
  • Input validation using Zod
  • Configurable search results (up to 10 per query)
  • Formatted search results including titles, URLs, and descriptions
  • Error handling and validation
  • Compatible with Claude Desktop and other MCP clients

๐Ÿ“‹ Prerequisites

Before you begin, ensure you have:

1. A Google Cloud Project with Custom Search API enabled

    2. A Custom Search Engine ID

      3. Local development requirements:

        ๐Ÿš€ Quick Start

        1. Clone the repository:

        bash
        git clone https://github.com/limklister/mcp-google-custom-search-server.git
           cd mcp-google-custom-search-server

        2. Install dependencies:

        bash
        npm install

        3. Create a .env file:

        bash
        GOOGLE_API_KEY=your-api-key
           GOOGLE_SEARCH_ENGINE_ID=your-search-engine-id

        4. Build the server:

        bash
        npm run build

        5. Start the server:

        bash
        npm start

        ๐Ÿ”ง Configuration

        Environment Variables

        VariableDescriptionRequired
        GOOGLE_API_KEYYour Google Custom Search API keyYes
        GOOGLE_SEARCH_ENGINE_IDYour Custom Search Engine IDYes

        Claude Desktop Integration

        Add this configuration to your Claude Desktop config file (typically located at `~/Library/Application Support/Claude/claude_desktop_config.json`):

        json
        {
          "mcpServers": {
            "google-search": {
              "command": "node",
              "args": [
                "/absolute/path/to/mcp-google-custom-search-server/build/index.js"
              ],
              "env": {
                "GOOGLE_API_KEY": "your-api-key",
                "GOOGLE_SEARCH_ENGINE_ID": "your-search-engine-id"
              }
            }
          }
        }

        ๐Ÿ“– API Reference

        Available Tools

        Performs a web search using Google Custom Search API.

        Parameters:

        • `query` (string, required): The search query to execute
        • `numResults` (number, optional): Number of results to return
          • Default: 5
          • Maximum: 10

        Example Response:

        code
        Result 1:
        Title: Example Search Result
        URL: https://example.com
        Description: This is an example search result description
        ---
        
        Result 2:
        ...

        ๐Ÿ› ๏ธ Development

        Project Structure

        code
        mcp-google-custom-search-server/
        โ”œโ”€โ”€ src/
        โ”‚   โ””โ”€โ”€ index.ts          # Main server implementation
        โ”œโ”€โ”€ build/                # Compiled JavaScript output
        โ”œโ”€โ”€ .env                  # Environment variables
        โ”œโ”€โ”€ package.json          # Project dependencies and scripts
        โ”œโ”€โ”€ tsconfig.json         # TypeScript configuration
        โ””โ”€โ”€ README.md            # Project documentation

        Available Scripts

        • `npm run build`: Compile TypeScript to JavaScript
        • `npm start`: Start the MCP server
        • `npm run dev`: Watch mode for development

        Testing

        1. Using MCP Inspector:

        bash
        npx @modelcontextprotocol/inspector node build/index.js

        2. Manual testing with example queries:

        bash
        # After starting the server
           {"jsonrpc":"2.0","id":1,"method":"callTool","params":{"name":"search","arguments":{"query":"example search"}}}
        MseeP.ai Security Assessment Badge

        ๐Ÿ“ License

        This project is licensed under the MIT License - see the LICENSE file for details.

        ๐Ÿ™ Acknowledgments

        • Built with Model Context Protocol (MCP)
        • Uses Google's Custom Search API
        • Inspired by the need for better search capabilities in LLM applications

        Frequently asked questions

        What is mcp-google-custom-search-server?

        mcp-google-custom-search-server is An mcp server for searching against google custom search api

        How do I install mcp-google-custom-search-server?

        Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

        Is mcp-google-custom-search-server open source?

        Yes โ€” it is hosted on GitHub at https://github.com/alexatnordnet/mcp-google-custom-search-server and has 37 stars.

        Related MCP tools

        Run your own MCP server? See who uses it and what to fix.

        Measure it with TrackMCP