@mseep/serper-search-scrape-mcp-server
Version:
Serper MCP Server supporting search and webpage scraping
44 lines (43 loc) • 1.25 kB
JavaScript
/**
* Search tool implementation for MCP server.
*/
export class SerperSearchTools {
serperClient;
/**
* Initialize search tool with Serper client.
* @param client - Serper API client instance
*/
constructor(client) {
this.serperClient = client;
}
/**
* Execute a web search query.
* @param query - Search query string
* @param location - Optional region code for search results
* @param language - Optional language code for search results
* @returns Promise resolving to search results
*/
async search(params) {
try {
const result = await this.serperClient.search(params);
return result;
}
catch (error) {
throw new Error(`SearchTool: failed to search for "${params.q}". ${error}`);
}
}
/**
* Execute a web scrape operation.
* @param params - Scrape parameters
* @returns Promise resolving to scrape result
*/
async scrape(params) {
try {
const result = await this.serperClient.scrape(params);
return result;
}
catch (error) {
throw new Error(`SearchTool: failed to scrape. ${error}`);
}
}
}