Skip to main content
Glama

scrapewise_get_scraper_job_errors

Read-onlyIdempotent
        Returns the list of links that failed (HTTP error, parser error, timeout) during
        the given scraper run. Use to diagnose why a run produced fewer rows than
        expected, or to see which specific URLs the scraper struggled with.

        Args:
          - groupId (string, path param, required): the group's MongoDB ObjectId
            (used for cross-tenant ownership check on shared groups).
          - jobId (string, path param, required): the scraperJobStatus ObjectId. Get
            from scrapewise_get_scraper_load_history.

        Returns:
          `List<LinkErrorDTO>` — each entry carries the failed URL, the HTTP status or
          error type, and any error message captured. Empty list if all links succeeded.

        Examples:
          - Use when: "why did run {jobId} on group {groupId} fail 50 of 200 links?"
          - Don't use when: you only need the run's success/failure counts →
            use scrapewise_get_scraper_load_history (counts are in each row)

        Error Handling:
          - 400 (CustomerError envelope) if no run with that jobId exists for this customer/group.
          - 401 Unauthorized.
          - 500 INTERNAL.

[runtime hint] This tool returns JSON-as-text — its response shape is dynamic (per-scraper itemsConfig, file binary, etc.) so the MCP outputSchema is omitted. Do not rely on the presence of any specific field in the response; treat the result as a string-or-object blob and parse defensively.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "groupId": "<groupId>",
      "jobId": "<jobId>"
    },
    "name": "scrapewise_get_scraper_job_errors"
  }
}

Input Schema

NameRequiredDescriptionDefault
jobIdYes
groupIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), but the description adds meaningful context beyond them: the empty-list-on-success behavior, the DTO fields returned, and specific 400/401/500 error semantics including that 400 means no run exists for this customer/group. This is richer than typical, though it does not discuss any rate limiting or result-size limits.

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?

Front-loaded with the one-sentence purpose before structured Args/Returns/Examples/Error Handling sections, and each section adds distinct information. It is somewhat long and the Args block partially restates required-ness and types already encoded in the schema, which is minor redundancy rather than padding.

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?

There is no output schema, but the description compensates by describing the returned List<LinkErrorDTO> fields (failed URL, HTTP status or error type, message) and the empty-list case. Combined with error semantics and the runtime note about dynamic response shape, an agent has everything needed to call and parse this correctly.

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

Parameters5/5

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

With 0% schema description coverage, the description carries the full burden and does so well: groupId is identified as a path param, a MongoDB ObjectId, and its purpose (cross-tenant ownership check on shared groups); jobId is identified as the scraperJobStatus ObjectId with provenance ('Get from scrapewise_get_scraper_load_history'). Both params are disambiguated by format and by where their values come from.

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?

States a specific verb and resource ('Returns the list of links that failed ... during the given scraper run') and enumerates the failure classes covered (HTTP error, parser error, timeout). It is clearly distinguishable from the sibling scrapewise_get_scraper_load_history, which is named as the counts-only alternative.

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?

Provides an explicit 'Use when' scenario ('why did run {jobId} on group {groupId} fail 50 of 200 links?') and an explicit 'Don't use when' that routes the agent to scrapewise_get_scraper_load_history for success/failure counts. Both the positive and negative conditions are stated, leaving nothing to inference.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.