
🚀 Open Source Project 🛠️ Built with Node.js & TypeScript (Node.js v18+ required)
user_data/ directory.startIndex/endIndex for safe chunking when needed.list_tools):browser_network_requests)browser_console_messages)multi_search: Run multiple Google searches at once (only exposed search tool).research: Decompose a question into sub-queries, run them in parallel, dedupe, and synthesize a markdown report with numbered citations.agent: Collect structured data across pages using a field schema (CSS selectors and/or JSON-LD paths).extract: CSS-selector fields, tables, meta tags, JSON-LD blocks, Readability main content, and schema-type detection.crawl: BFS/DFS traversal, sitemap parsing (incl. index files), or one-page link map, with include/exclude regex, same-domain restriction, and politeness delay.logs/error-log.txt is rotated when it exceeds ~1MB (renamed to error-log.txt.bak) to prevent unbounded growth.logs/ directory are cleaned up at startup.startIndex/maxLength/chunkSize slicing when requested.blockResources is now always forced to false, meaning resources are never blocked for faster page loads.download_file):destinationFolder accepts relative paths (resolved against the project root) or absolute paths.destinationFolder if it does not exist.pipeline to minimize memory use and ensure robust writes.https://.../path/file.jpg -> file.jpg). If no filename is present, the fallback name is downloaded_file.fetch_api returns JSON/text when appropriate and base64 for binary responses.APIKEY_GOOGLE_SEARCH and CX_GOOGLE_SEARCH.translate import).src/index.ts Implements both the CLI entry point and the MCP server.src/rest-client.ts Provides a flexible HTTP client for API requests.mcp_settings.json:YOUR_GOOGLE_API_KEY and YOUR_CX_ID in the config above.npm install.--timeout <ms>: Set navigation timeout (default: 60000)-o <file>: Output result to specified filelist_tools to reduce tool-chaining in agent clients.user_data/).limit).src/index.ts.browser_flow with result: { type: "snapshot", mode: "html" } when you need raw HTML but want to keep the response small.multi_search).destinationFolder can be either a relative path (resolved against the project root) or an absolute path. The server will create the destination folder if it does not exist.user_data/ directory.timeout parameter if requests are timing out.APIKEY_GOOGLE_SEARCH and CX_GOOGLE_SEARCH are set in your environment.logs/error-log.txt file for detailed error messages.maxLength and startIndex to fetch content in slices.src/index.ts for all available options.Saleh, R. Z., & Lubis, M. (2026). Design and Implementation of MCP-Web-Curl: A Model Context Protocol Server for Web and API Access in Agentic Coding Assistants. JURNAL TEKNIK INFORMATIKA, 19(1), 122–134.
Note: Google Search API is free with usage limits. For details, see: Google Custom Search API Overview
Posted Sep 22, 2026
Built an open-source Node.js/TypeScript MCP server for web research, browser automation, structured extraction, crawling, APIs, and reliable downloads.
0
0