### Run Kindly Web Search MCP Server Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Installs and runs the Kindly Web Search MCP server using the 'uvx' package manager. The first run may take longer due to environment setup. ```bash uvx --from git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server \ kindly-web-search-mcp-server start-mcp-server ``` -------------------------------- ### Start Kindly Web Search MCP Server (Bash) Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt Provides commands to start the Kindly Web Search MCP Server using uvx or directly. Supports different transport modes including stdio (default), HTTP, and SSE, with options for host and port configuration. ```bash # Install and run via uvx (recommended) uvx --from git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server \ kindly-web-search-mcp-server start-mcp-server # Run with stdio transport (default, for MCP clients) kindly-web-search-mcp-server start-mcp-server --stdio # Run with HTTP transport (for remote/Docker deployments) kindly-web-search-mcp-server start-mcp-server --http --host 0.0.0.0 --port 8000 # Run with SSE transport kindly-web-search-mcp-server start-mcp-server --sse --port 8000 ``` -------------------------------- ### Codex CLI MCP Client Configuration Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt Adds the Kindly Web Search MCP server to the Codex CLI. This command-line instruction configures the server with necessary environment variables and specifies the command to start the MCP server process. ```bash # Codex CLI codex mcp add kindly-web-search \ --env SERPER_API_KEY="$SERPER_API_KEY" \ --env GITHUB_TOKEN="$GITHUB_TOKEN" \ -- uvx --from git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server \ kindly-web-search-mcp-server start-mcp-server ``` -------------------------------- ### Install Chromium Browser on Linux (Ubuntu/Debian) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Installs the Chromium browser on Ubuntu/Debian-based Linux systems using apt-get. This is required for universal HTML page content extraction. ```bash sudo apt-get update sudo apt-get install -y chromium which chromium ``` -------------------------------- ### Install uvx Package Manager Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Installs the 'uvx' package manager using a script. This is a prerequisite for installing and running the MCP server. It provides commands for macOS, Linux, and Windows. ```bash curl -LsSf https://astral.sh/uv/install.sh | sh ``` ```powershell irm https://astral.sh/uv/install.ps1 | iex ``` -------------------------------- ### Verify uvx Installation Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Verifies the successful installation of the 'uvx' package manager by checking its version. This command should be run after installation in a new terminal session. ```bash uvx --version ``` -------------------------------- ### Get Chrome Path on Windows Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Retrieves the installation path of the Chrome browser on Windows using PowerShell. This is useful if browser auto-detection fails. It also lists common alternative paths. ```powershell Get-Command chrome | Select-Object -ExpandProperty Source # Common path: # C:\Program Files\Google\Chrome\Application\chrome.exe # If `Get-Command chrome` fails, try one of these: # C:\Program Files (x86)\Google\Chrome\Application\chrome.exe # C:\Program Files\Microsoft\Edge\Application\msedge.exe ``` -------------------------------- ### Install Chromium Browser on macOS Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Installs the Chromium browser on macOS using Homebrew. A Chromium-based browser is required for universal HTML page content extraction. ```bash brew install --cask chromium ``` -------------------------------- ### Set KINDLY_BROWSER_EXECUTABLE_PATH for Windows (PowerShell) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md This PowerShell command sets the KINDLY_BROWSER_EXECUTABLE_PATH environment variable on Windows. It specifies the default installation path for Google Chrome. This is used when auto-detection of the browser fails. ```powershell $env:KINDLY_BROWSER_EXECUTABLE_PATH="C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe" ``` -------------------------------- ### Set KINDLY_BROWSER_EXECUTABLE_PATH for macOS Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md This bash command sets the KINDLY_BROWSER_EXECUTABLE_PATH environment variable on macOS for clients that require it, specifically for the Homebrew Chromium installation. This is used when auto-detection of the browser fails. ```bash export KINDLY_BROWSER_EXECUTABLE_PATH="/Applications/Chromium.app/Contents/MacOS/Chromium" ``` -------------------------------- ### Get Webpage Content Function Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Defines a tool to retrieve the full content of a given URL. It uses a headless browser for real-time parsing and returns the content in Markdown format. This function is essential for obtaining detailed information from webpages. ```python def get_content(url: str) -> str: """Get webpage content. Args: url: The URL of the webpage. Returns: The page content in Markdown format (best-effort). """ # Implementation details for fetching and parsing webpage content pass ``` -------------------------------- ### Direct Tool Invocation with Kindly Web Search (Python) Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt Demonstrates how to directly invoke the 'web_search' and 'get_content' tools from the Kindly Web Search MCP Server using Python. This is useful for testing or custom integrations, showing how to pass arguments and handle results asynchronously. ```python import asyncio from kindly_web_search_mcp_server.server import mcp async def main(): # Call web_search tool directly result = await mcp.call_tool( "web_search", arguments={ "query": "OpenCV affine image transformation Python", "num_results": 3, }, ) print(result) # Call get_content tool directly content = await mcp.call_tool( "get_content", arguments={ "url": "https://stackoverflow.com/questions/12345/opencv-question", }, ) print(content) if __name__ == "__main__": asyncio.run(main()) ``` -------------------------------- ### Fetch Content from URL using Python Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt This Python code snippet illustrates how to use the 'get_content' MCP tool to fetch and retrieve the full content of a specific URL in LLM-ready Markdown format. This is useful when you already have a URL and need to access its complete content, such as from search results or user input. The tool returns the URL and its corresponding Markdown content. ```python # MCP tool call # Tool: get_content # Arguments: { "url": "https://github.com/anthropics/claude-code/issues/123" } # Response structure: { "url": "https://github.com/anthropics/claude-code/issues/123", "page_content": "# Question\nQuestion: Feature request: Add support for custom MCP servers\nLink: https://github.com/anthropics/claude-code/issues/123 Author: @developer1 Date: 2024-01-15T09:00:00Z State: open Likes: 25\n\nIt would be great if Claude Code could support custom MCP servers for...\n\n# Answers\n## Answer 1\nAuthor: @maintainer | Date: 2024-01-16T10:30:00Z | Likes: 15 | Permalink: https://github.com/ப்புகளை...\n\nThanks for the suggestion! We're planning to add this in the next release..." } ``` -------------------------------- ### Configure Kindly Web Search MCP Server for VS Code (Copilot) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md This JSON configuration is for GitHub Copilot / Microsoft Copilot in VS Code to set up the Kindly Web Search MCP server. It uses interactive prompts for sensitive information like API keys and browser paths, enhancing security. The 'inputs' section defines the prompts shown to the user. ```json { "servers": { "kindly-web-search": { "type": "stdio", "command": "uvx", "args": [ "--from", "git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server", "kindly-web-search-mcp-server", "start-mcp-server" ], "env": { "SERPER_API_KEY": "${input:serper-api-key}", "TAVILY_API_KEY": "${input:tavily-api-key}", "SEARXNG_BASE_URL": "${input:searxng-base-url}", "GITHUB_TOKEN": "${input:github-token}", "KINDLY_BROWSER_EXECUTABLE_PATH": "${input:browser-path}" } } }, "inputs": [ { "id": "serper-api-key", "type": "promptString", "description": "Serper API key (optional if using Tavily or SearXNG)" }, { "id": "tavily-api-key", "type": "promptString", "description": "Tavily API key (optional if using Serper or SearXNG)" }, { "id": "searxng-base-url", "type": "promptString", "description": "SearXNG base URL (optional if using Serper or Tavily)" }, { "id": "github-token", "type": "promptString", "description": "GitHub token (recommended)" }, { "id": "browser-path", "type": "promptString", "description": "Browser binary path (only if needed)" } ] } ``` -------------------------------- ### Environment Variables for Kindly Web Search Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt Sets up essential environment variables for the Kindly Web Search MCP Server. This includes API keys for search providers (Serper, Tavily, SearXNG) and an optional GitHub token for enhanced issue extraction. Other optional variables control browser path, timeouts, and browser pool configuration. ```bash # Required: At least one search provider export SERPER_API_KEY="sk-..." # Primary search provider export TAVILY_API_KEY="tvly-..." # Alternative search provider export SEARXNG_BASE_URL="https://..." # Self-hosted option # Recommended: GitHub token for better Issue/Discussion extraction export GITHUB_TOKEN="ghp_..." # Read-only token for public repos # Optional: Browser configuration export KINDLY_BROWSER_EXECUTABLE_PATH="/usr/bin/chromium" # Optional: Timeout configuration export KINDLY_TOOL_TOTAL_TIMEOUT_SECONDS="120" # Total tool timeout (default: 120) export KINDLY_TOOL_TOTAL_TIMEOUT_MAX_SECONDS="600" # Max timeout cap (default: 600) export KINDLY_WEB_SEARCH_MAX_CONCURRENCY="3" # Parallel content fetches (default: 3) # Optional: Browser pool configuration export KINDLY_NODRIVER_REUSE_BROWSER="1" # Enable browser reuse (default: 1) export KINDLY_NODRIVER_BROWSER_POOL_SIZE="2" # Pool size (default: 2) # Optional: Diagnostics export KINDLY_DIAGNOSTICS="1" # Enable detailed diagnostics in responses ``` -------------------------------- ### Build Docker Image for Kindly Web Search MCP Server Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Builds the Docker image for the Kindly Web Search MCP Server. This command should be run in the directory containing the Dockerfile. ```bash docker build -t kindly-web-search-mcp-server . ``` -------------------------------- ### Configure Kindly Web Search MCP Server via .mcp.json Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Sets up the Kindly Web Search MCP server using a project-level `.mcp.json` configuration file. This method is recommended for teams and allows specifying the command, arguments, and environment variables, including API keys. ```json { "mcpServers": { "kindly-web-search": { "command": "uvx", "args": [ "--from", "git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server", "kindly-web-search-mcp-server", "start-mcp-server" ], "env": { "SERPER_API_KEY": "${SERPER_API_KEY}", "TAVILY_API_KEY": "${TAVILY_API_KEY}", "SEARXNG_BASE_URL": "${SEARXNG_BASE_URL}", "GITHUB_TOKEN": "${GITHUB_TOKEN}", "KINDLY_BROWSER_EXECUTABLE_PATH": "${KINDLY_BROWSER_EXECUTABLE_PATH}" } } } } ``` -------------------------------- ### Configure Kindly Web Search MCP Server in Antigravity (Google IDE) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Provides the JSON configuration snippet to be added to the `mcpServers` object in Antigravity's `mcp_config.json` file. This allows integrating the Kindly Web Search MCP server into the Google IDE, with placeholders for API keys and paths. ```json { "kindly-web-search": { "command": "uvx", "args": [ "--from", "git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server", "kindly-web-search-mcp-server", "start-mcp-server" ], "env": { "SERPER_API_KEY": "PASTE_SERPER_KEY_OR_LEAVE_EMPTY", "TAVILY_API_KEY": "PASTE_TAVILY_KEY_OR_LEAVE_EMPTY", "SEARXNG_BASE_URL": "PASTE_SEARXNG_URL_OR_LEAVE_EMPTY", "GITHUB_TOKEN": "PASTE_GITHUB_TOKEN_OR_LEAVE_EMPTY", "KINDLY_BROWSER_EXECUTABLE_PATH": "PASTE_IF_NEEDED" } } } ``` -------------------------------- ### Configure Kindly Web Search MCP Server for Claude Desktop Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md This JSON configuration is for Claude Desktop to set up the Kindly Web Search MCP server. It details the command, arguments, and environment variables, including placeholders for API keys and browser path. Values are literal strings and should not be committed. ```json { "mcpServers": { "kindly-web-search": { "command": "uvx", "args": [ "--from", "git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server", "kindly-web-search-mcp-server", "start-mcp-server" ], "env": { "SERPER_API_KEY": "PASTE_SERPER_KEY_OR_LEAVE_EMPTY", "TAVILY_API_KEY": "PASTE_TAVILY_KEY_OR_LEAVE_EMPTY", "SEARXNG_BASE_URL": "PASTE_SEARXNG_URL_OR_LEAVE_EMPTY", "GITHUB_TOKEN": "PASTE_GITHUB_TOKEN_OR_LEAVE_EMPTY", "KINDLY_BROWSER_EXECUTABLE_PATH": "PASTE_IF_NEEDED" } } } } ``` -------------------------------- ### Cursor MCP Client Configuration Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt Sets up the Kindly Web Search MCP server for the Cursor IDE. This configuration uses the 'stdio' transport and specifies the command and environment variables, including placeholders for API keys that will be resolved from the environment. ```json // Cursor (.cursor/mcp.json) { "mcpServers": { "kindly-web-search": { "type": "stdio", "command": "uvx", "args": [ "--from", "git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server", "kindly-web-search-mcp-server", "start-mcp-server" ], "env": { "SERPER_API_KEY": "${env:SERPER_API_KEY}", "GITHUB_TOKEN": "${env:GITHUB_TOKEN}" } } } } ``` -------------------------------- ### Serper Search Provider Integration (Python) Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt Integrates with the Serper API to perform Google searches. Requires the SERPER_API_KEY environment variable to be set. Returns a list of WebSearchResult objects, each containing title, link, and snippet. ```bash # Environment setup export SERPER_API_KEY="your-serper-api-key" ``` ```python # Internal usage from kindly_web_search_mcp_server.search.serper import search_serper results = await search_serper( "python async best practices", num_results=5, ) ``` -------------------------------- ### get_content - Fetch content from a specific URL Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt Fetches a single URL and returns its content as LLM-ready Markdown. Use this when you already have a URL from search results, user input, or documentation references and want to read its full content. ```APIDOC ## POST /get_content ### Description Fetches a single URL and returns its content as LLM-ready Markdown. Use this when you already have a URL from search results, user input, or documentation references and want to read its full content. ### Method POST ### Endpoint /get_content ### Parameters #### Request Body - **url** (string) - Required - The URL to fetch content from. ### Request Example ```json { "url": "https://github.com/anthropics/claude-code/issues/123" } ``` ### Response #### Success Response (200) - **url** (string) - The URL that was fetched. - **page_content** (string) - The content of the page, converted to Markdown. #### Response Example ```json { "url": "https://github.com/anthropics/claude-code/issues/123", "page_content": "# Question\nQuestion: Feature request: Add support for custom MCP servers\nLink: https://github.com/anthropics/claude-code/issues/123 Author: @developer1 Date: 2024-01-15T09:00:00Z State: open Likes: 25\n\nIt would be great if Claude Code could support custom MCP servers for...\n\n# Answers\n## Answer 1\nAuthor: @maintainer | Date: 2024-01-16T10:30:00Z | Likes: 15 | Permalink: https://github.com/ப்பின...\n\nThanks for the suggestion! We're planning to add this in the next release..." } ``` ``` -------------------------------- ### SearXNG Search Provider Integration (Python) Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt Integrates with a self-hosted SearXNG instance for privacy-focused meta-searching. Requires the SEARXNG_BASE_URL environment variable. Optional headers and user agent can also be configured. ```bash # Environment setup export SEARXNG_BASE_URL="https://searx.example.org" export SEARXNG_HEADERS_JSON='{"Authorization":"Bearer token"}' # Optional export SEARXNG_USER_AGENT="Custom User Agent" # Optional ``` ```python # Internal usage from kindly_web_search_mcp_server.search.searxng import search_searxng results = await search_searxng( "kubernetes deployment strategies", num_results=5, ) ``` -------------------------------- ### Configure Kindly Web Search MCP Server via Gemini Settings Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Configures the Kindly Web Search MCP server within the Gemini IDE's settings file (`~/.gemini/settings.json` or project-specific). This JSON configuration includes the command, arguments, environment variables, and a startup timeout. ```json { "mcpServers": { "kindly-web-search": { "command": "uvx", "args": [ "--from", "git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server", "kindly-web-search-mcp-server", "start-mcp-server" ], "env": { "SERPER_API_KEY": "$SERPER_API_KEY", "TAVILY_API_KEY": "$TAVILY_API_KEY", "SEARXNG_BASE_URL": "$SEARXNG_BASE_URL", "GITHUB_TOKEN": "$GITHUB_TOKEN", "KINDLY_BROWSER_EXECUTABLE_PATH": "$KINDLY_BROWSER_EXECUTABLE_PATH" }, "timeout": 120000 } } } ``` -------------------------------- ### Configure Kindly Web Search MCP Server (File-based) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Configures the kindly-web-search MCP server by editing the `~/.codex/config.toml` file. This method allows for specifying the command, arguments, environment variables, and startup timeout. ```toml [mcp_servers.kindly-web-search] command = "uvx" args = [ "--from", "git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server", "kindly-web-search-mcp-server", "start-mcp-server", ] # Forward variables from your shell/OS environment: env_vars = ["SERPER_API_KEY", "TAVILY_API_KEY", "SEARXNG_BASE_URL", "GITHUB_TOKEN", "KINDLY_BROWSER_EXECUTABLE_PATH"] startup_timeout_sec = 120.0 ``` -------------------------------- ### Configure Kindly Web Search MCP Server for Cursor Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md This JSON configuration is used by Cursor to set up the Kindly Web Search MCP server. It specifies the command to run, arguments, and environment variables including API keys and browser paths. Ensure that one of SERPER_API_KEY, TAVILY_API_KEY, or SEARXNG_BASE_URL is set. ```json { "mcpServers": { "kindly-web-search": { "type": "stdio", "command": "uvx", "args": [ "--from", "git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server", "kindly-web-search-mcp-server", "start-mcp-server" ], "env": { "SERPER_API_KEY": "${env:SERPER_API_KEY}", "TAVILY_API_KEY": "${env:TAVILY_API_KEY}", "SEARXNG_BASE_URL": "${env:SEARXNG_BASE_URL}", "GITHUB_TOKEN": "${env:GITHUB_TOKEN}", "KINDLY_BROWSER_EXECUTABLE_PATH": "${env:KINDLY_BROWSER_EXECUTABLE_PATH}" } } } } ``` -------------------------------- ### Load URL as Markdown (Python) Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt Loads any webpage, renders JavaScript using headless Chromium, extracts the main content, and converts it to Markdown. It supports optional configuration for user agent, wait times, timeouts, and maximum Markdown characters. Returns None for PDFs or unsupported content. ```python from kindly_web_search_mcp_server.scrape.universal_html import ( load_url_as_markdown, UniversalHtmlLoaderConfig, ) # Configure loader (optional) config = UniversalHtmlLoaderConfig( user_agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) ...", wait_seconds=2.0, # Wait for JS rendering total_timeout_seconds=60.0, # Max time for page load max_markdown_chars=50000, # Truncate large pages ) # Fetch and convert page to Markdown markdown = await load_url_as_markdown( "https://docs.example.com/api/reference", config=config, ) ``` -------------------------------- ### Add Kindly Web Search MCP Server (macOS/Linux - SearXNG) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Adds the kindly-web-search MCP server using the Codex CLI on macOS or Linux with the SearXNG API. Requires SEARXNG_BASE_URL, GITHUB_TOKEN, and KINDLY_BROWSER_EXECUTABLE_PATH environment variables. ```bash codex mcp add kindly-web-search \ --env SEARXNG_BASE_URL="$SEARXNG_BASE_URL" \ --env GITHUB_TOKEN="$GITHUB_TOKEN" \ --env KINDLY_BROWSER_EXECUTABLE_PATH="$KINDLY_BROWSER_EXECUTABLE_PATH" \ -- uvx --from git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server \ kindly-web-search-mcp-server start-mcp-server ``` -------------------------------- ### Run Kindly Web Search MCP Server with Serper API Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Runs the Kindly Web Search MCP Server using Docker, configured with Serper API key and GitHub token. It exposes the server on port 8000 and enables HTTP access. ```bash docker run --rm -p 8000:8000 \ -e SERPER_API_KEY="..." \ -e GITHUB_TOKEN="..." \ kindly-web-search-mcp-server \ --http --host 0.0.0.0 --port 8000 ``` -------------------------------- ### Web Search and Retrieve Page Content using Python Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt This Python code snippet demonstrates how to use the 'web_search' MCP tool to search the web and retrieve full page content in Markdown format. It's useful for debugging, finding documentation, and discovering relevant online discussions. The tool supports multiple search providers and returns structured results including page content. ```python # MCP tool call via Claude Code / Codex # Tool: web_search # Arguments: { "query": "GCP Cloud Batch GPU instance fails error", "num_results": 3 } # Response structure: { "results": [ { "title": "GCP Cloud Batch fails with the GPU instance template", "link": "https://stackoverflow.com/questions/76546453/", "snippet": "I am trying to run a GCP Cloud Batch job with K80 GPU...", "page_content": "# Question\nQuestion: GCP Cloud Batch fails with the GPU instance template\nLink: https://stackoverflow.com/questions/76546453/... Author: (...) Date: 2023-06-21T10:30:00Z Score: 5\n\nI am trying to run a GCP Cloud Batch job with K80 GPU. The job runs for ~30 min. and then fails with the following error...\n\n# Answers\n## Answer 1 (Accepted Solution)\nScore: 12 | Marked as Correct Author: user123 Date: 2023-06-22T14:20:00Z\n\nThe issue is related to the GPU driver installation. You need to add the following to your instance template..." }, { "title": "GPU support in Cloud Batch | Google Cloud", "link": "https://cloud.google.com/batch/docs/create-run-job-gpus", "snippet": "This page describes how to create and run a Batch job that uses GPUs...", "page_content": "# GPU support in Cloud Batch\n\nThis page describes how to create and run a Batch job that uses GPUs. Before you begin, make sure you have the necessary quotas..." } ] } ``` -------------------------------- ### web_search - Search the web and retrieve page content Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt Searches the web using configured providers (Serper, Tavily, or SearXNG) and returns top results with full page content converted to Markdown. Ideal for debugging, checking documentation, and finding relevant threads. ```APIDOC ## POST /web_search ### Description Searches the web using the configured provider (Serper, Tavily, or SearXNG) and returns top results with full page content converted to Markdown. Ideal for debugging errors, checking API documentation, finding package versions, and discovering relevant StackOverflow/GitHub threads. ### Method POST ### Endpoint /web_search ### Parameters #### Query Parameters - **query** (string) - Required - The search query. - **num_results** (integer) - Optional - The number of results to return. Defaults to a reasonable number. ### Request Body ```json { "query": "GCP Cloud Batch GPU instance fails error", "num_results": 3 } ``` ### Response #### Success Response (200) - **results** (array) - An array of search results. - **title** (string) - The title of the search result. - **link** (string) - The URL of the search result. - **snippet** (string) - A brief snippet of the search result. - **page_content** (string) - The full content of the page, converted to Markdown. #### Response Example ```json { "results": [ { "title": "GCP Cloud Batch fails with the GPU instance template", "link": "https://stackoverflow.com/questions/76546453/", "snippet": "I am trying to run a GCP Cloud Batch job with K80 GPU...", "page_content": "# Question\nQuestion: GCP Cloud Batch fails with the GPU instance template\nLink: https://stackoverflow.com/questions/76546453/... Author: (...) Date: 2023-06-21T10:30:00Z Score: 5\n\nI am trying to run a GCP Cloud Batch job with K80 GPU. The job runs for ~30 min. and then fails with the following error...\n\n# Answers\n## Answer 1 (Accepted Solution)\nScore: 12 | Marked as Correct Author: user123 Date: 2023-06-22T14:20:00Z\n\nThe issue is related to the GPU driver installation. You need to add the following to your instance template..." }, { "title": "GPU support in Cloud Batch | Google Cloud", "link": "https://cloud.google.com/batch/docs/create-run-job-gpus", "snippet": "This page describes how to create and run a Batch job that uses GPUs...", "page_content": "# GPU support in Cloud Batch\n\nThis page describes how to create and run a Batch job that uses GPUs. Before you begin, make sure you have the necessary quotas..." } ] } ``` ``` -------------------------------- ### Add Kindly Web Search MCP Server (Windows - Serper) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Adds the kindly-web-search MCP server using the Codex CLI on Windows (PowerShell) with the Serper API. Requires SERPER_API_KEY, GITHUB_TOKEN, and KINDLY_BROWSER_EXECUTABLE_PATH environment variables. ```powershell codex mcp add kindly-web-search ` --env SERPER_API_KEY="$env:SERPER_API_KEY" ` --env GITHUB_TOKEN="$env:GITHUB_TOKEN" ` --env KINDLY_BROWSER_EXECUTABLE_PATH="$env:KINDLY_BROWSER_EXECUTABLE_PATH" ` -- uvx --from git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server ` kindly-web-search-mcp-server start-mcp-server ``` -------------------------------- ### Add Kindly Web Search MCP Server via CLI (macOS/Linux) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Adds the Kindly Web Search MCP server using the 'claude mcp add' command for macOS and Linux. Requires setting API keys (SERPER, TAVILY, or SEARXNG) and optionally GITHUB_TOKEN and KINDLY_BROWSER_EXECUTABLE_PATH. This method is for command-line users who prefer not to edit configuration files. ```bash claude mcp add --transport stdio \ --env SERPER_API_KEY="$SERPER_API_KEY" \ --env GITHUB_TOKEN="$GITHUB_TOKEN" \ --env KINDLY_BROWSER_EXECUTABLE_PATH="$KINDLY_BROWSER_EXECUTABLE_PATH" \ kindly-web-search \ -- uvx --from git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server \ kindly-web-search-mcp-server start-mcp-server ``` ```bash claude mcp add --transport stdio \ --env TAVILY_API_KEY="$TAVILY_API_KEY" \ --env GITHUB_TOKEN="$GITHUB_TOKEN" \ --env KINDLY_BROWSER_EXECUTABLE_PATH="$KINDLY_BROWSER_EXECUTABLE_PATH" \ kindly-web-search \ -- uvx --from git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server \ kindly-web-search-mcp-server start-mcp-server ``` ```bash --env SEARXNG_BASE_URL="$SEARXNG_BASE_URL" ``` -------------------------------- ### Configure Browser Reuse and Pooling Environment Variables Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Configures environment variables to control browser reuse and pooling behavior for the Kindly Web Search MCP Server. These settings affect how Chromium instances are managed, impacting performance and resource usage. ```bash # Disable browser reuse (fresh Chromium per request) export KINDLY_NODRIVER_REUSE_BROWSER=0 # Control the number of warm Chromium instances in the pool export KINDLY_NODRIVER_BROWSER_POOL_SIZE=2 # Timeout for acquiring a pooled slot export KINDLY_NODRIVER_ACQUIRE_TIMEOUT_SECONDS=30 # Restrict remote debugging ports for pooled slots export KINDLY_NODRIVER_PORT_RANGE=45000-45100 ``` -------------------------------- ### Claude Code / Claude Desktop MCP Client Configuration Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt Configures the Kindly Web Search MCP server for use with Claude Code or Claude Desktop. It specifies the command to execute and environment variables required for the server to function, including search provider API keys. ```json // Claude Code / Claude Desktop (.mcp.json or claude_desktop_config.json) { "mcpServers": { "kindly-web-search": { "command": "uvx", "args": [ "--from", "git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server", "kindly-web-search-mcp-server", "start-mcp-server" ], "env": { "SERPER_API_KEY": "${SERPER_API_KEY}", "GITHUB_TOKEN": "${GITHUB_TOKEN}" } } } } ``` -------------------------------- ### Add Kindly Web Search MCP Server (macOS/Linux - Serper) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Adds the kindly-web-search MCP server using the Codex CLI on macOS or Linux with the Serper API. Requires SERPER_API_KEY, GITHUB_TOKEN, and KINDLY_BROWSER_EXECUTABLE_PATH environment variables. ```bash codex mcp add kindly-web-search \ --env SERPER_API_KEY="$SERPER_API_KEY" \ --env GITHUB_TOKEN="$GITHUB_TOKEN" \ --env KINDLY_BROWSER_EXECUTABLE_PATH="$KINDLY_BROWSER_EXECUTABLE_PATH" \ -- uvx --from git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server \ kindly-web-search-mcp-server start-mcp-server ``` -------------------------------- ### Run Kindly Web Search MCP Server with Tavily API Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Runs the Kindly Web Search MCP Server using Docker, configured with Tavily API key and GitHub token. It exposes the server on port 8000 and enables HTTP access. ```bash docker run --rm -p 8000:8000 \ -e TAVILY_API_KEY="..." \ -e GITHUB_TOKEN="..." \ kindly-web-search-mcp-server \ --http --host 0.0.0.0 --port 8000 ``` -------------------------------- ### StackExchange Content Resolver using Python Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt This Python code demonstrates the usage of the StackExchange Content Resolver, which fetches questions and answers from StackExchange sites using their API. It includes functions to parse StackExchange URLs and fetch thread content as Markdown. This resolver is automatically triggered for StackExchange URLs and provides structured data with metadata. ```python # Internal resolver usage (automatically triggered for StackExchange URLs) from kindly_web_search_mcp_server.content.stackexchange import ( fetch_stackexchange_thread_markdown, parse_stackexchange_url, ) # Parse and validate StackExchange URL target = parse_stackexchange_url("https://stackoverflow.com/questions/12345/how-to-fix-error") # Returns: StackExchangeTarget(site='stackoverflow', question_id=12345, answer_id=None) # Fetch thread as Markdown (called internally by resolver) markdown = await fetch_stackexchange_thread_markdown( "https://stackoverflow.com/questions/12345/how-to-fix-error", max_chars=20000 # Optional, defaults to 20000 ) # Output format: """ ``` -------------------------------- ### Add Kindly Web Search MCP Server via CLI (Windows PowerShell) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Adds the Kindly Web Search MCP server using the 'claude mcp add' command for Windows PowerShell. Requires setting API keys (SERPER, TAVILY, or SEARXNG) and optionally GITHUB_TOKEN and KINDLY_BROWSER_EXECUTABLE_PATH. This method is for command-line users on Windows. ```powershell claude mcp add --transport stdio ` --env SERPER_API_KEY="$env:SERPER_API_KEY" ` --env GITHUB_TOKEN="$env:GITHUB_TOKEN" ` --env KINDLY_BROWSER_EXECUTABLE_PATH="$env:KINDLY_BROWSER_EXECUTABLE_PATH" ` kindly-web-search ` -- uvx --from git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server ` kindly-web-search-mcp-server start-mcp-server ``` ```powershell claude mcp add --transport stdio ` --env TAVILY_API_KEY="$env:TAVILY_API_KEY" ` --env GITHUB_TOKEN="$env:GITHUB_TOKEN" ` --env KINDLY_BROWSER_EXECUTABLE_PATH="$env:KINDLY_BROWSER_EXECUTABLE_PATH" ` kindly-web-search ` -- uvx --from git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server ` kindly-web-search-mcp-server start-mcp-server ``` ```powershell --env SEARXNG_BASE_URL="$env:SEARXNG_BASE_URL" ``` -------------------------------- ### Set Search API Key (macOS/Linux) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Sets environment variables for search API keys on macOS and Linux. The server prioritizes SERPER_API_KEY, then TAVILY_API_KEY, then SEARXNG_BASE_URL. ```bash export SERPER_API_KEY="..." # or: export TAVILY_API_KEY="..." # or (self-hosted SearXNG): export SEARXNG_BASE_URL="https://searx.example.org" ``` -------------------------------- ### Set GitHub Token (Optional) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Sets the GITHUB_TOKEN environment variable, recommended for improved GitHub Issue and Discussion extraction. A read-only token for public repositories is sufficient. ```bash export GITHUB_TOKEN="..." ``` -------------------------------- ### Add Kindly Web Search MCP Server (macOS/Linux - Tavily) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Adds the kindly-web-search MCP server using the Codex CLI on macOS or Linux with the Tavily API. Requires TAVILY_API_KEY, GITHUB_TOKEN, and KINDLY_BROWSER_EXECUTABLE_PATH environment variables. ```bash codex mcp add kindly-web-search \ --env TAVILY_API_KEY="$TAVILY_API_KEY" \ --env GITHUB_TOKEN="$GITHUB_TOKEN" \ --env KINDLY_BROWSER_EXECUTABLE_PATH="$KINDLY_BROWSER_EXECUTABLE_PATH" \ -- uvx --from git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server \ kindly-web-search-mcp-server start-mcp-server ``` -------------------------------- ### Configure Browser Troubleshooting Environment Variables (PowerShell) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Sets environment variables in PowerShell to adjust browser-related timeouts and concurrency for troubleshooting the Kindly Web Search MCP Server. This can help resolve 'TimeoutError' during page content retrieval. ```powershell $env:KINDLY_TOOL_TOTAL_TIMEOUT_SECONDS="180" $env:KINDLY_TOOL_TOTAL_TIMEOUT_MAX_SECONDS="600" $env:KINDLY_WEB_SEARCH_MAX_CONCURRENCY="1" ``` -------------------------------- ### Set Optional SearXNG Headers (Windows PowerShell) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Sets optional environment variables for SearXNG headers on Windows using PowerShell, used for authentication or to bypass bot detection. ```powershell $env:SEARXNG_HEADERS_JSON='{"Authorization":"Bearer ..."}' $env:SEARXNG_USER_AGENT="Mozilla/5.0 ..." ``` -------------------------------- ### Add Kindly Web Search MCP Server (Windows - Tavily) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Adds the kindly-web-search MCP server using the Codex CLI on Windows (PowerShell) with the Tavily API. Requires TAVILY_API_KEY, GITHUB_TOKEN, and KINDLY_BROWSER_EXECUTABLE_PATH environment variables. ```powershell codex mcp add kindly-web-search ` --env TAVILY_API_KEY="$env:TAVILY_API_KEY" ` --env GITHUB_TOKEN="$env:GITHUB_TOKEN" ` --env KINDLY_BROWSER_EXECUTABLE_PATH="$env:KINDLY_BROWSER_EXECUTABLE_PATH" ` -- uvx --from git+https://github.com/Shelpuk-AI-Technology-Consulting/kindly-web-search-mcp-server ` kindly-web-search-mcp-server start-mcp-server ``` -------------------------------- ### Enable Diagnostics for Deeper Debugging Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Enables diagnostic logging for the Kindly Web Search MCP Server by setting the KINDLY_DIAGNOSTICS environment variable. This outputs JSON-line diagnostics to stderr and includes them in tool responses. ```bash export KINDLY_DIAGNOSTICS=1 ``` -------------------------------- ### Set Optional SearXNG Headers (macOS/Linux) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Sets optional environment variables for SearXNG headers on macOS and Linux, used for authentication or to bypass bot detection. ```bash export SEARXNG_HEADERS_JSON='{"Authorization":"Bearer ..."}' export SEARXNG_USER_AGENT="Mozilla/5.0 ..." ``` -------------------------------- ### Web Search Tool Function Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Defines a web search tool that takes a query and number of results, returning top results with title, link, snippet, and page content. It supports Serper or Tavily as search providers. ```python def web_search(query: str, num_results: int = 3) -> list[dict]: """Web search tool. Args: query: The search query. num_results: The number of results to return. Returns: A list of dictionaries, each containing title, link, snippet, and page_content. """ # Implementation details for web search using Serper or Tavily pass ``` -------------------------------- ### Set Search API Key (Windows PowerShell) Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Sets environment variables for search API keys on Windows using PowerShell. The server prioritizes SERPER_API_KEY, then TAVILY_API_KEY, then SEARXNG_BASE_URL. ```powershell $env:SERPER_API_KEY="..." # or: $env:TAVILY_API_KEY="..." # or (self-hosted SearXNG): $env:SEARXNG_BASE_URL="https://searx.example.org" ``` -------------------------------- ### Tavily Search Provider Integration (Python) Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt Integrates with the Tavily API for AI-optimized search results. Requires the TAVILY_API_KEY environment variable to be set. The function returns a list of search results. ```bash # Environment setup export TAVILY_API_KEY="tavily-api-key" ``` ```python # Internal usage from kindly_web_search_mcp_server.search.tavily import search_tavily results = await search_tavily( "fastapi authentication tutorial", num_results=3, ) ``` -------------------------------- ### Fetch GitHub Issue Thread Markdown (Python) Source: https://context7.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/llms.txt Fetches a GitHub issue thread, including comments, reactions, and metadata, as a Markdown string. It requires parsing the GitHub issue URL first. The function accepts optional arguments for maximum comments and characters. ```python from kindly_web_search_mcp_server.content.github_issues import ( fetch_github_issue_thread_markdown, parse_github_issue_url, ) # Parse GitHub Issue URL target = parse_github_issue_url("https://github.com/owner/repo/issues/456") # Returns: GitHubIssueTarget(owner='owner', repo='repo', number=456) # Fetch issue with comments as Markdown markdown = await fetch_github_issue_thread_markdown( "https://github.com/owner/repo/issues/456", max_comments=50, # Optional, defaults to 50 max_chars=20000 # Optional, defaults to 20000 ) ``` -------------------------------- ### Set MCP Server Startup Timeout Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md Configures the startup timeout for the MCP server. This is useful if the server takes a long time to initialize. The timeout is set in milliseconds. ```bash export MCP_TIMEOUT=120000 ``` ```powershell $env:MCP_TIMEOUT="120000" ``` -------------------------------- ### Set KINDLY_BROWSER_EXECUTABLE_PATH for Linux Source: https://github.com/shelpuk-ai-technology-consulting/kindly-web-search-mcp-server/blob/main/README.md This bash command sets the KINDLY_BROWSER_EXECUTABLE_PATH environment variable on Linux. It attempts to find the path for 'chromium' or 'chromium-browser' executables using the system's PATH. ```bash export KINDLY_BROWSER_EXECUTABLE_PATH="$(command -v chromium || command -v chromium-browser)" ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.