Skip to main content
Glama
EmericLaberge

Hermes SearXNG MCP Server

web_search

Search the web using SearXNG to find information, research topics, look up documentation, debug errors, and locate GitHub issues or Stack Overflow threads.

Instructions

Search the web using SearXNG and return results.

This is the primary web search tool. Use it when you need to:

  • Find information on the web

  • Research a topic

  • Look up documentation

  • Debug errors (search for exact error messages)

  • Find GitHub issues or Stack Overflow threads

Args: query: Search query. Use specific keywords and quotes for exact phrases. num_results: Number of results to return (default: 5, max: 50). categories: Search category (general, news, images, videos, it, science, files, music). language: Language code (en, fr, es, de, etc.). time_range: Time filter (day, week, month, year) or None for no filter. include_content: If True, fetch and extract full page content for each result. This is slower but provides complete content without follow-up calls.

Returns: Dictionary with "results" list, where each result has: - title: Result title - url: Result URL - snippet: Search snippet from SearXNG - content: Full page content (if include_content=True, otherwise empty string) - engine: List of search engines that returned this result

Example: >>> await web_search("python async await", num_results=3) { "results": [ { "title": "Python Asyncio - Real Python", "url": "https://realpython.com/async-io-python/", "snippet": "Learn how to use Python's asyncio...", "content": "# Python Asyncio...", "engine": ["google", "bing"] } ] }

Notes: - Requires SEARXNG_BASE_URL environment variable to be set. - Content extraction is best-effort and may fail for paywalled or protected content. - For large num_results with include_content=True, this can be slow due to parallel fetching.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYes
languageNoen
categoriesNogeneral
time_rangeNo
num_resultsNo
include_contentNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses that content extraction is best-effort and may fail for paywalled/protected content, that large num_results with include_content=True can be slow, and that SEARXNG_BASE_URL must be set. It also explains the return structure. This is solid behavioral disclosure, though it could mention rate limits or error behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections (Args, Returns, Example, Notes) and front-loads the primary purpose. It is somewhat long but every section earns its place: the example is illustrative, the notes cover operational requirements, and the return format is documented. Minor redundancy exists (e.g., 'Search the web' and 'Find information on the web'), but overall it is efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (6 params, no annotations, output schema present), the description is complete: it documents all parameters, the return structure, an example, operational prerequisites, and performance caveats. The output schema exists, so the description needn't over-explain return values, but it does anyway, which is helpful. Nothing critical is missing for an agent to call this correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It does: each parameter is listed with a brief explanation (e.g., 'Use specific keywords and quotes for exact phrases' for query, 'Time filter (day, week, month, year) or None for no filter' for time_range, and 'If True, fetch and extract full page content... slower but provides complete content' for include_content). This adds meaning beyond the raw schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Search the web using SearXNG and return results') and resource, and explicitly identifies itself as 'the primary web search tool.' It distinguishes itself from siblings by listing use cases like finding documentation, debugging errors, and finding GitHub issues/Stack Overflow threads, which helps an agent know when to pick this over get_content or search_news.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit when-to-use guidance: 'Use it when you need to: Find information on the web, Research a topic, Look up documentation, Debug errors, Find GitHub issues or Stack Overflow threads.' It also notes the alternative for content extraction (include_content=True) and implies that get_content may be a follow-up tool. This is strong usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools