Skip to main content
Glama
schwarztim

theHarvester MCP Server

by schwarztim

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation5/5

    Each tool targets a distinct OSINT task (general search, source listing, DNS brute, email search, host search, Shodan integration, full recon, status check) with clear descriptions, making them easily distinguishable.

    Naming Consistency4/5

    All tools share the 'theharvester_' prefix and use snake_case, but the suffixes vary between nouns (e.g., emails, hosts) and verbs (e.g., search, check_status), causing slight inconsistency.

    Tool Count5/5

    With 8 tools, the set is well-scoped for theHarvester's OSINT functionality, covering both broad and focused operations without unnecessary redundancy.

    Completeness5/5

    The tool surface covers the major features of theHarvester: general search, source enumeration, DNS brute force, email/host harvesting, Shodan integration, and a comprehensive full recon, with no obvious gaps.

  • Average 3.4/5 across 8 of 8 tools scored. Lowest: 2.8/5.

    See the Tool Scores section below for per-tool breakdowns.

  • This repository is archived. Archived repositories automatically receive an F maintenance tier.

  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

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

    No annotations are provided, so the description must cover behavioral traits. It does not disclose whether the tool is read-only, has side effects, requires special permissions, or has rate limits. Minimal transparency beyond the basic action.

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

    Conciseness3/5

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

    The description is a single sentence, which is concise but lacks structure. It front-loads the main action, but could benefit from being broken into multiple sentences or providing more details without becoming verbose.

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

    Completeness2/5

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

    For a tool with 7 parameters and no output schema, the description is too brief. It does not explain return format, error handling, or what happens after execution. Missing context needed for effective use.

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

    Parameters3/5

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

    Schema coverage is 100% (all parameters have descriptions). The description adds no extra meaning beyond what the schema provides, so it meets the baseline but does not improve understanding.

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

    Purpose4/5

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

    The description clearly states it runs theHarvester for OSINT on a domain and lists collected data types (emails, subdomains, etc.). However, it does not differentiate this general search from sibling tools like theharvester_emails or theharvester_hosts, which may have more specific purposes.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus its siblings. The description only states what it does, not when it is appropriate or what alternatives exist.

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

  • Behavior2/5

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

    With no annotations, the description bears full burden. It only states 'quick search' without disclosing behavioral traits like read-only nature, rate limits, authentication needs, or whether results are paginated. Minimal transparency.

    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 a single sentence with 9 words, highly concise. It provides the core purpose without waste. However, it sacrifices useful detail for brevity.

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

    Completeness2/5

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

    Given the absence of output schema and annotations, the description is insufficient. It does not explain return values, possible limitations, or when to choose this over sibling tools, making it incomplete for effective use.

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

    Parameters3/5

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

    Schema coverage is 100% with all parameters described. The description adds no extra meaning beyond reiterating the domain context. Baseline 3 is appropriate as the schema already documents the parameters adequately.

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

    Purpose4/5

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

    The description clearly states the tool harvests email addresses from a domain, which is specific and action-oriented. However, it does not explicitly differentiate from sibling tools like theharvester_search, though the name implies specialization.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives (e.g., theharvester_search, theharvester_full_recon). The description says 'Quick search' but lacks context on appropriate scenarios or exclusions.

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

  • Behavior2/5

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

    With no annotations, the description must disclose behavioral traits. It only mentions output content (open ports, banners) but does not describe authorization needs, rate limits, or any side effects. The tool is likely read-only, but this is not explicitly stated.

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

    Conciseness5/5

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

    The description is a single sentence of 17 words that front-loads the verb and key information. Every word is necessary; there is no redundancy or clutter.

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

    Completeness3/5

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

    For a tool with no output schema, the description provides minimal output details (open ports, banners). It does not explain the format or other return values, but it is adequate for a simple reconnaissance tool. The presence of many sibling tools suggests a need for more distinction, which is partially met by the Shodan mention.

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

    Parameters3/5

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

    Schema coverage is 100%, so the schema already documents both parameters. The description adds no additional meaning about the parameters beyond the schema fields, achieving the baseline score.

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

    Purpose4/5

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

    The description clearly states the tool runs theHarvester with Shodan integration to obtain detailed host information including open ports and banners. This distinguishes it from sibling tools like theharvester_hosts or theharvester_emails, though it does not explicitly contrast them.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives such as theharvester_search or theharvester_full_recon. The description only implies usage when Shodan-specific data is needed.

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

  • Behavior2/5

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

    No annotations are provided, so the description must fully disclose behavioral traits. It only says 'Quick search' without detailing operations (e.g., DNS queries, API calls), whether it is read-only, or required permissions. The parameters imply DNS brute force and resolution, but these behaviors are not described. This lack of transparency is a significant gap given no annotations.

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

    Conciseness5/5

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

    The description is a single, concise sentence that immediately communicates the tool's purpose. It is well front-loaded and contains no unnecessary words.

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

    Completeness2/5

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

    The tool has 4 parameters, no output schema, and many sibling tools requiring clearer differentiation. The description is too brief to cover what the tool does in detail, what the output looks like, or how to use the parameters effectively. Given the complexity, it falls short of being complete.

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

    Parameters3/5

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

    The input schema has 100% description coverage for all 4 parameters, so the schema itself adequately documents them. The description adds no additional context beyond stating the tool's focus on subdomains/hosts. With high schema coverage, a baseline score of 3 is appropriate.

    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 clearly states the tool's purpose: 'Quick search focused on discovering subdomains and hosts for a domain.' It uses a specific verb ('search') and resource ('subdomains and hosts'), and the focus on 'quick' distinguishes it from more comprehensive sibling tools like theharvester_full_recon and theharvester_dns_brute.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool versus alternatives. The description implies it is for quick subdomain/host discovery, but does not mention when not to use it or suggest other tools for other tasks. Sibling tools like theharvester_search and theharvester_dns_brute overlap, but no differentiation is provided.

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

  • Behavior2/5

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

    No annotations are provided, so the description bears full responsibility. It states the action and method (DNS brute force with wordlist) but omits important behavioral details such as potential network impact, duration, rate limits, or required permissions. This lack of transparency could mislead an agent about the tool's implications.

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

    Conciseness5/5

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

    The description is a single, concise sentence that front-loads the action and purpose. Every word contributes value; there is no redundancy or fluff.

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

    Completeness3/5

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

    For a tool with two parameters and no output schema, the description is minimally adequate. It states the purpose but does not clarify the output format, default wordlist behavior, or potential side effects. Given the simplicity, it could be more complete but is not severely lacking.

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

    Parameters3/5

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

    The input schema descriptions cover both parameters (domain and dns_server) fully, achieving high schema coverage. The tool description adds the context of using a wordlist, but no additional semantic value beyond what the schema provides. Baseline 3 is appropriate.

    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 clearly states the verb (Perform), resource (DNS brute force enumeration), and purpose (discover subdomains using a wordlist). It distinguishes itself from sibling tools by specifying DNS brute force for subdomain discovery, unlike others focused on search, emails, or full recon.

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

    Usage Guidelines3/5

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

    The description implies usage for discovering subdomains but does not provide explicit guidance on when to use this tool versus alternatives, nor does it mention conditions or prerequisites. Usage is implied but not clearly differentiated.

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

  • Behavior2/5

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

    No annotations are provided, so the description must cover behavioral traits. It mentions it takes longer and provides complete results, but lacks details on safety (e.g., read-only nature), authentication needs, or other side effects.

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

    Conciseness5/5

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

    The description is only two sentences long, front-loading the core purpose and adding a key trade-off about time versus completeness. Every sentence is valuable.

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

    Completeness3/5

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

    Given the tool's complexity and the presence of sibling tools, the description is adequate but does not explain return values (no output schema) or how it differs from each sibling. It leaves some ambiguity.

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

    Parameters3/5

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

    Schema coverage is 100% and both parameters have clear descriptions. The description does not add extra meaning beyond what the schema already provides, so baseline score of 3 is appropriate.

    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 clearly states the tool performs comprehensive reconnaissance using all sources and features, distinguishing it from siblings like theharvester_search which are likely more targeted.

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

    Usage Guidelines3/5

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

    The description implies usage for complete results when time allows ('takes longer'), but does not explicitly state when not to use it or mention alternatives among the sibling tools.

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

  • Behavior3/5

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

    No annotations exist. Description says 'available and working' but doesn't define what that means (e.g., binary exists, service responds). No side effects disclosed, but likely read-only. Adequate for a simple check.

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

    Conciseness5/5

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

    Single clear sentence with no fluff. Front-loaded with verb and resource.

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

    Completeness4/5

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

    Given zero parameters and no output schema, the description adequately explains the tool's purpose. Could mention expected return values (e.g., true/false) for completeness, but not critical.

    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?

    No parameters, so baseline 4 applies. Schema coverage is 100% and the description adds no parameter detail beyond the schema, which is fine.

    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?

    Clearly states the tool checks availability and working status of theHarvester on the Kali host. Distinguishes from sibling tools like theharvester_search which perform queries.

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

    Usage Guidelines3/5

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

    No explicit guidance on when to use this tool vs alternatives. It implies a prerequisite check but lacks 'use before other tools' or 'if theHarvester is misbehaving' context.

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

  • Behavior4/5

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

    With no annotations provided, the description fully clarifies the tool's behavior: it is a read-only listing that provides API key requirements. It does not describe any side effects or authentication details, but for a listing tool this is sufficient.

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

    Conciseness5/5

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

    The description is a single, concise sentence that delivers all necessary information without any fluff.

    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 simplicity (no parameters, no output schema), the description is complete and provides the agent with all required context to use the tool effectively.

    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?

    The tool has no parameters, so the description does not need to add parameter information. A baseline score of 4 is appropriate as there is no need for compensation.

    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 clearly states that the tool lists all available data sources for theHarvester and includes information about API key requirements. It distinguishes itself from sibling tools that perform searches or other operations, as it is a listing tool.

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

    Usage Guidelines3/5

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

    The description does not explicitly state when to use this tool versus alternatives, but it implies it is used to obtain a list of data sources before using other tools like theharvester_search.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

sec-theharvester-mcp MCP server

Copy to your README.md:

Score Badge

sec-theharvester-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/schwarztim/sec-theharvester-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server