# R/IV — Verify Claims, Citations & Agent Actions (io.github.duranivrobert-glitch/riv): tool descriptions scored

- tools/list taken: 2026-11-02 (UTC)
- From: [Official MCP Registry](https://registry.modelcontextprotocol.io/v0/servers/io.github.duranivrobert-glitch%2Friv/versions/latest)
- Connected to: https://rdiv-production-runtime-production.up.railway.app/mcp
- Homepage: https://www.robertduraniv.com/r-iv/
- Scoring rules: v2
- Tools: 35
- Average: 39.7 / 100 (Rain)
- Near-identical pairs: 398

This page shows how R/IV — Verify Claims, Citations & Agent Actions (io.github.duranivrobert-glitch/riv)'s tool descriptions scored, the issues found and the names of its tools and parameters. The descriptions are the server's own: read them where the copy came from.

Forecall asked the URL this server lists in the official MCP Registry for its tools/list once, on the date above, without calling any tool. The server may have changed since.

## Across the server

- Minor: 35 tools. Above 25, models start to tell tools apart less well.
- Minor: 398 pairs with nearly the same description in all; the top 12 are shown.
- Minor: The server has no instructions. Say there, once, what the server is for and when to use it: Claude Code and Gemini CLI read the instructions before the tool descriptions.

## Tools

- `service.match`: 19 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: goal.
  - Minor: String arguments with no constraint or example: goal.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `pricing.quote`: 22 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: capabilityId, capability_id.
  - Minor: String arguments with no constraint or example: capabilityId, capability_id.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `example.get`: 23 / 100
  - Major: The description only restates the name (9 words).
  - Major: Arguments without a description: capabilityId.
  - Minor: String arguments with no constraint or example: capabilityId.
  - Minor: No `required` list, so every argument is optional.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `provenance.receipt.trial`: 27 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: trial_id, input.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: trial_id. Name the tool or the place that returns it, or models look it up first.
- `capabilities.list`: 31 / 100
  - Major: The description only restates the name (7 words).
  - Major: The description is too short (7 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `system.status`: 31 / 100
  - Major: The description only restates the name (6 words).
  - Major: The description is too short (6 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
- `number.verify`: 41 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: claim, value, unit, as_of, public_urls.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `agent.monitor`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: target, public_urls, cadence, materiality_rule.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `ai.use.audit`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: workflow_description, questions, public_urls, scope.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `claim.monitor`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: target, public_urls, cadence, materiality_rule.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `dependency.monitor`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: target, public_urls, cadence, materiality_rule.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `evidence.monitor`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: target, monitor_type, public_urls, cadence.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `investigation.run`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: question, scope, public_urls, deadline.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `model.change.audit`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: workflow, baseline, current, public_urls.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `policy.monitor`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: target, public_urls, cadence, materiality_rule.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `quote.verify`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: quote, source_url, attribution, context.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `transaction.verify`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: transaction_claim, evidence_records, expected_amount, expected_currency.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `vendor.diligence`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: vendor, question, scope, public_urls.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `vendor.monitor`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: target, public_urls, cadence, materiality_rule.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `agent.action.verify`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: claimed_action, evidence_records, target.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `answer.audit`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: answer, public_urls, strictness.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `citation.verify`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: claim, citation_url, quoted_or_cited_text.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `claim.check`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: claim, context, public_urls.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `control.check`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: control_claim, control_type, evidence_records.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `data.flow.verify`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: flow_description, evidence_records, public_urls.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `evidence.bundle`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: question, context, public_urls.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `fact.extract`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: text, source_url, max_claims.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `procurement.evidence`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: product_or_vendor, requirements, public_urls.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `source.snapshot`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: url, capture_scope, purpose.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `source.verify`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: url, expected_identity, context.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `timeline.reconcile`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: events, question, default_timezone.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `workflow.verify`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: workflow, claimed_steps, evidence_records.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `contradiction.scan`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: items, question.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `dependency.map`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: workflow_description, public_urls.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.
- `provenance.receipt`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: job_or_artifact, source_records.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: No constraints, side effects, auth or rate limits described, and no annotations.
  - Minor: Required identifiers whose description does not say where the value comes from: request_id. Name the tool or the place that returns it, or models look it up first.

Is your server listed here and you would rather it were not? Email support@forecall.dev, and we will take it off within 7 days.

[All scored servers](https://forecall.dev/en/servers)
