Google Programmable Search Engine (PSE) MCP Server
A Model Context Protocol (MCP) server for the Google Programmable Search Engine (PSE) API. This server exposes tools for searching the web with Google Custom Search engine, making them accessible to MCP-compatible clients such as VSCode, Copilot, and Claude Desktop.
Installation Steps
You do NOT need to clone this repository manually or run any installation commands yourself. Simply add the configuration below to your respective MCP client—your client will automatically install and launch the server as needed.
VS Code Copilot Configuration
Open Command Palette → Preferences: Open Settings (JSON), then add:
settings.json
{
// Other settings...
"mcp": {
"servers": {
"google-pse-mcp": {
"command": "npx",
"args": [
"-y",
"google-pse-mcp",
"https://www.googleapis.com/customsearch",
"<api_key>",
"<cx>",
"<siteRestricted>" // optional: true/false, defaults to true
]
}
}
}
}
Cline MCP Configuration Example
If you are using Cline, add the following to your cline_mcp_settings.json (usually found in your VSCode global storage or Cline config directory):
- macOS:
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json - Windows:
%APPDATA%\\Code\\User\\globalStorage\\saoudrizwan.claude-dev\\settings\\cline_mcp_settings.json
{
"mcpServers": {
"google-pse-mcp": {
"disabled": false,
"timeout": 60,
"command": "npx",
"args": [
"-y",
"google-pse-mcp",
"https://www.googleapis.com/customsearch",
"<api_key>",
"<cx>",
"<siteRestricted>" // optional flag, true/false, defaults to true
],
"transportType": "stdio"
}
}
}
Important Notes
Don't forget to replace <api_key> and <cx> with your credentials in the configuration above.
You can also provide an optional <siteRestricted> flag (true or false) as the last argument to control which Google Custom Search endpoint is used. If omitted, it defaults to true.
Available Tools
This MCP server provides the following tool:
-
search: Search the web with Google Programmable Search Engine- Parameters:
q(string, required): Search querypage(integer, optional): Page numbersize(integer, optional): Number of search results to return per page (1-10)sort(string, optional): Sort expression (only 'date' is supported)safe(boolean, optional): Enable safe search filteringlr(string, optional): Restrict search to a particular language (e.g., lang_en)siteRestricted(boolean, optional): Use the Site Restricted API endpoint; defaults to true unless overridden via CLI flag
- Parameters:
Example Usage
# Search for "artificial intelligence"
result = await use_mcp_tool(
server_name="google-pse-mcp",
tool_name="search",
arguments={
"q": "artificial intelligence",
"size": 5,
"safe": True
}
)
Useful Links
Recommend MCP Servers 💡
optimade-mcp-server
An MCP tool for querying Optimade-compatible material databases with configurable filter presets and provider endpoints.
postman-mcp-server
A lightweight MCP server by Postman that integrates Postman APIs with AI assistants via STDIO and HTTP streamable transports.
haproxy-mcp-server
A Model Context Protocol (MCP) server for HAProxy, enabling LLMs to interact with HAProxy's runtime API
nazar256/combine-mcp
An MCP aggregator that combines multiple MCP servers into a single stdio interface for clients like Cursor
kagimcp
The Official Model Context Protocol (MCP) server for Kagi search & other tools.
bittush8789/MCP
An MCP server that fetches weather data from the National Weather Service API, providing get_alerts and get_forecast tools via stdio transport.
