eDiscovery Decoder News/Calc

Free educational MCP for read-only eDiscovery news and TAR/review calculators.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
99%
Integridad del esquema
68%
Calidad de los nombres
97%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~5,704Tokens (definiciones de herramientas)
~3.4 KBTamaño de respuesta típico
Impacto significativo en la atención (4.46% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "mcp": {
      "url": "https://mcp.ediscoverydecoder.com/mcp"
    }
  }
}

Puntos de conexión remotos

https://mcp.ediscoverydecoder.com/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (15)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢ping

Health check: confirm the eDiscovery Decoder News/Calc MCP server is reachable before a demo or when troubleshooting a connection. Returns server name and version. No inputs.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "ok": {
      "type": "boolean"
    },
    "server": {
      "type": "string"
    },
    "version": {
      "type": "string"
    }
  },
  "required": [
    "ok",
    "server",
    "version"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_capabilities

List the full eDiscovery Decoder MCP surface — every tool, prompt, and resource, plus the suggested demo flow and safety boundaries — with an example prompt for each. Call this first when you are unsure which tool fits the user's question, or when tool-search shows only a partial list.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "server": {
      "type": "string"
    },
    "version": {
      "type": "string"
    },
    "purpose": {
      "type": "string"
    },
    "endpoint": {
      "type": "string"
    },
    "tools": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "purpose": {
            "type": "string"
          },
          "example_prompt": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "purpose",
          "example_prompt"
        ],
        "additionalProperties": false
      }
    },
    "prompts": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "purpose": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "purpose"
        ],
        "additionalProperties": false
      }
    },
    "resources": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "uri": {
            "type": "string"
          },
          "purpose": {
            "type": "string"
          }
        },
        "required": [
          "uri",
          "purpose"
        ],
        "additionalProperties": false
      }
    },
    "demo_flow": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "safety_boundaries": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "claude_note": {
      "type": "string"
    }
  },
  "required": [
    "server",
    "version",
    "purpose",
    "endpoint",
    "tools",
    "prompts",
    "resources",
    "demo_flow",
    "safety_boundaries",
    "claude_note"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_demo_guide

Return a short, human-readable walkthrough for testing this server: the endpoint, the tool/prompt/resource names, and ready-to-paste sample prompts. Use to give someone a guided demo. For the full machine-readable capability catalog, use list_capabilities instead.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string"
    },
    "endpoint": {
      "type": "string"
    },
    "purpose": {
      "type": "string"
    },
    "tools": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "prompts": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "resources": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "suggested_test_prompts": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "safety_boundaries": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "title",
    "endpoint",
    "purpose",
    "tools",
    "prompts",
    "resources",
    "suggested_test_prompts",
    "safety_boundaries"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_resource_content(uri)

Fetch the JSON behind a supported edd:// resource — the demo guide, TAR learning path, glossary, or news (latest / brief / by-date). Use when you want resource content but the client cannot read MCP resources directly, e.g. to pull glossary definitions or the news brief as a normal tool result.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "uri": {
      "type": "string",
      "pattern": "^edd:\\/\\/(?:mcp\\/demo-guide|resources\\/tar-learning-path|glossary\\/core|news\\/latest|news\\/brief|news\\/\\d{4}-\\d{2}-\\d{2})$"
    }
  },
  "required": [
    "uri"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "uri": {
      "type": "string"
    },
    "mimeType": {
      "type": "string"
    },
    "text": {
      "type": "string"
    },
    "payload": {
      "type": "object",
      "additionalProperties": {}
    }
  },
  "required": [
    "uri",
    "mimeType",
    "text",
    "payload"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_prompt_template(prompt_name, audience, matter_description, week_start)

Return the rendered text of one of this server's guided prompts (mcp-demo-tour, tar-matter-kickoff, weekly-digest). Use when the client can call tools but cannot open MCP prompts directly, or when you want to inspect a prompt's wording before using it.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "prompt_name": {
      "type": "string",
      "enum": [
        "mcp-demo-tour",
        "tar-matter-kickoff",
        "weekly-digest"
      ]
    },
    "audience": {
      "type": "string",
      "minLength": 1
    },
    "matter_description": {
      "type": "string",
      "minLength": 1
    },
    "week_start": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    }
  },
  "required": [
    "prompt_name"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "arguments": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    },
    "template_text": {
      "type": "string"
    },
    "messages": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "user",
              "assistant"
            ]
          },
          "content": {
            "type": "object",
            "properties": {
              "type": {
                "type": "string",
                "const": "text"
              },
              "text": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "text"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "role",
          "content"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "name",
    "arguments",
    "template_text",
    "messages"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_news(query, tags, date_from, date_to, limit)

Find recent eDiscovery / legal-AI / TAR news by topic, tag, or date range. Use when the user asks what's new or recent in eDiscovery, wants stories on a subject, or asks about a time window. For a ready-made top-stories roundup instead, use get_news_brief.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 1
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1
      }
    },
    "date_from": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "date_to": {
      "$ref": "#/properties/date_from"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 10
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "summary": {
            "type": "string"
          },
          "source_url": {
            "type": "string"
          },
          "published_at": {
            "type": "string"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "id",
          "title",
          "summary",
          "source_url",
          "published_at",
          "tags"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "items"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_news_brief(current_limit, week_limit)

Get the current eDiscovery Decoder news brief: top stories plus a Week in Review breakdown, returned both as structured data and as display-ready Markdown (formatted_brief) with a 'why it matters' line per story. Use when the user wants a roundup or summary of current eDiscovery AI news rather than a keyword search.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "current_limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20,
      "default": 7
    },
    "week_limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "default": 3
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "generated_at": {
      "type": "string"
    },
    "source_url": {
      "type": "string"
    },
    "formatted_brief": {
      "type": "string"
    },
    "story_bullets": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "summary": {
            "type": "string"
          },
          "source_url": {
            "type": "string"
          },
          "published_at": {
            "type": "string"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "why_it_matters": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "title",
          "summary",
          "source_url",
          "published_at",
          "tags",
          "why_it_matters"
        ],
        "additionalProperties": false
      }
    },
    "top_stories": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "summary": {
            "type": "string"
          },
          "source_url": {
            "type": "string"
          },
          "published_at": {
            "type": "string"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "id",
          "title",
          "summary",
          "source_url",
          "published_at",
          "tags"
        ],
        "additionalProperties": false
      }
    },
    "week_so_far": {
      "type": "object",
      "properties": {
        "generated_at": {
          "type": "string"
        },
        "source_url": {
          "type": "string"
        },
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/properties/top_stories/items"
          }
        },
        "breakdowns": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "$ref": "#/properties/top_stories/items/properties/id"
              },
              "title": {
                "$ref": "#/properties/top_stories/items/properties/title"
              },
              "summary": {
                "$ref": "#/properties/top_stories/items/properties/summary"
              },
              "source_url": {
                "$ref": "#/properties/top_stories/items/properties/source_url"
              },
              "published_at": {
                "$ref": "#/properties/top_stories/items/properties/published_at"
              },
              "tags": {
                "$ref": "#/properties/top_stories/items/properties/tags"
              },
              "why_it_matters": {
                "type": "string"
              },
              "reasons": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "score": {
                "type": "number"
              },
              "score_breakdown": {
                "type": "object",
                "additionalProperties": {
                  "type": "number"
                }
              }
            },
            "required": [
              "id",
              "title",
              "summary",
              "source_url",
              "published_at",
              "tags"
            ],
            "additionalProperties": false
          }
        }
      },
      "required": [
        "generated_at",
        "source_url",
        "items",
        "breakdowns"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "generated_at",
    "source_url",
    "formatted_brief",
    "story_bullets",
    "top_stories",
    "week_so_far"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢calculate_review_metrics(true_positives, false_positives, false_negatives, true_negatives)

Score a coded sample when you have a full confusion matrix (true/false positives and negatives) — e.g. comparing a TAR model's calls against a reviewer's. Returns recall, precision, F1, accuracy, and in-sample elusion. Use calculate_control_set_recall if you only have relevant-found vs relevant-missed; calculate_elusion for a discard/null-set sample. Aggregate counts only; not legal advice.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "true_positives": {
      "type": "integer",
      "minimum": 0
    },
    "false_positives": {
      "type": "integer",
      "minimum": 0
    },
    "false_negatives": {
      "type": "integer",
      "minimum": 0
    },
    "true_negatives": {
      "type": "integer",
      "minimum": 0
    }
  },
  "required": [
    "true_positives",
    "false_positives",
    "false_negatives",
    "true_negatives"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "recall": {
      "type": "object",
      "properties": {
        "value": {
          "type": [
            "number",
            "null"
          ]
        },
        "formula": {
          "type": "string"
        },
        "note": {
          "type": "string"
        }
      },
      "required": [
        "value",
        "formula"
      ],
      "additionalProperties": false
    },
    "precision": {
      "$ref": "#/properties/recall"
    },
    "f1": {
      "$ref": "#/properties/recall"
    },
    "accuracy": {
      "$ref": "#/properties/recall"
    },
    "elusion_in_sample": {
      "$ref": "#/properties/recall"
    }
  },
  "required": [
    "recall",
    "precision",
    "f1",
    "accuracy",
    "elusion_in_sample"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢calculate_elusion(relevant_found_in_sample, sample_size, confidence_level)

Estimate how much responsive/relevant material may remain in a set you chose NOT to review (the discard, null, or 'elusion' set). Use when a random sample of that excluded set has been coded — e.g. 'we sampled 400 culled docs and found 2 relevant.' Returns the elusion rate and a Wilson confidence interval. For an overall recall % from the same sample, use calculate_tar_recall_estimate. Aggregate counts only; not legal advice.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "relevant_found_in_sample": {
      "type": "integer",
      "minimum": 0
    },
    "sample_size": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "confidence_level": {
      "type": "number",
      "exclusiveMinimum": 0,
      "exclusiveMaximum": 1,
      "default": 0.95
    }
  },
  "required": [
    "relevant_found_in_sample",
    "sample_size"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "elusion_rate": {
      "type": "number"
    },
    "confidence_interval": {
      "type": "object",
      "properties": {
        "lower": {
          "type": "number"
        },
        "upper": {
          "type": "number"
        },
        "method": {
          "type": "string",
          "const": "wilson"
        }
      },
      "required": [
        "lower",
        "upper",
        "method"
      ],
      "additionalProperties": false
    },
    "formula": {
      "type": "string"
    },
    "assumptions": {
      "type": "object",
      "properties": {
        "relevant_found_in_sample": {
          "type": "number"
        },
        "sample_size": {
          "type": "number"
        },
        "confidence_level": {
          "type": "number"
        },
        "z_score": {
          "type": "number"
        }
      },
      "required": [
        "relevant_found_in_sample",
        "sample_size",
        "confidence_level",
        "z_score"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "elusion_rate",
    "confidence_interval",
    "formula",
    "assumptions"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢calculate_sample_size(population_size, confidence_level, margin_of_error, estimated_prevalence)

Work out how many documents to randomly sample to estimate a proportion (e.g. richness or elusion) at a target confidence level and margin of error, with finite-population correction. Use when planning a sample before review — 'how big a sample do we need?' Aggregate inputs only; not legal advice.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "population_size": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "confidence_level": {
      "type": "number",
      "exclusiveMinimum": 0,
      "exclusiveMaximum": 1,
      "default": 0.95
    },
    "margin_of_error": {
      "type": "number",
      "exclusiveMinimum": 0,
      "exclusiveMaximum": 1
    },
    "estimated_prevalence": {
      "type": "number",
      "minimum": 0,
      "maximum": 1,
      "default": 0.5
    }
  },
  "required": [
    "population_size",
    "margin_of_error"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "recommended_sample_size": {
      "type": "integer",
      "minimum": 0
    },
    "raw_sample_size": {
      "type": "number",
      "minimum": 0
    },
    "assumptions": {
      "type": "object",
      "properties": {
        "population_size": {
          "type": "number"
        },
        "confidence_level": {
          "type": "number"
        },
        "margin_of_error": {
          "type": "number"
        },
        "estimated_prevalence": {
          "type": "number"
        },
        "z_score": {
          "type": "number"
        }
      },
      "required": [
        "population_size",
        "confidence_level",
        "margin_of_error",
        "estimated_prevalence",
        "z_score"
      ],
      "additionalProperties": false
    },
    "formula": {
      "type": "string"
    }
  },
  "required": [
    "recommended_sample_size",
    "raw_sample_size",
    "assumptions",
    "formula"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢calculate_tar_recall_estimate(responsive_found, excluded_population_size, elusion_responsive_hits, elusion_sample_size, confidence_level)

Estimate overall TAR recall and how many responsive docs were missed, by combining the responsive count already found with an elusion sample of the excluded set. Use when the user wants a recall % for the whole workflow, not just the elusion rate. For only the elusion rate and its interval, use calculate_elusion. Aggregate counts only; not legal advice.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "responsive_found": {
      "type": "integer",
      "minimum": 0
    },
    "excluded_population_size": {
      "type": "integer",
      "minimum": 0
    },
    "elusion_responsive_hits": {
      "type": "integer",
      "minimum": 0
    },
    "elusion_sample_size": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "confidence_level": {
      "type": "number",
      "exclusiveMinimum": 0,
      "exclusiveMaximum": 1,
      "default": 0.95
    }
  },
  "required": [
    "responsive_found",
    "excluded_population_size",
    "elusion_responsive_hits",
    "elusion_sample_size"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "responsiveFound": {
      "type": "integer",
      "minimum": 0
    },
    "excludedPopulationSize": {
      "type": "integer",
      "minimum": 0
    },
    "elusion": {
      "type": "object",
      "properties": {
        "sampleSize": {
          "type": "integer",
          "minimum": 0
        },
        "responsiveHits": {
          "type": "integer",
          "minimum": 0
        },
        "pointEstimate": {
          "type": [
            "number",
            "null"
          ]
        },
        "confidenceInterval": {
          "type": "object",
          "properties": {
            "lower": {
              "type": [
                "number",
                "null"
              ]
            },
            "upper": {
              "type": [
                "number",
                "null"
              ]
            },
            "method": {
              "type": "string",
              "const": "wilson"
            }
          },
          "required": [
            "lower",
            "upper",
            "method"
          ],
          "additionalProperties": false
        },
        "estimatedMissed": {
          "type": [
            "number",
            "null"
          ]
        },
        "estimatedMissedLower": {
          "type": [
            "number",
            "null"
          ]
        },
        "estimatedMissedUpper": {
          "type": [
            "number",
            "null"
          ]
        },
        "confidenceLevel": {
          "type": "number"
        }
      },
      "required": [
        "sampleSize",
        "responsiveHits",
        "pointEstimate",
        "confidenceInterval",
        "estimatedMissed",
        "estimatedMissedLower",
        "estimatedMissedUpper",
        "confidenceLevel"
      ],
      "additionalProperties": false
    },
    "estimatedRecall": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "estimate": {
              "type": "number"
            },
            "lower": {
              "type": "number"
            },
            "upper": {
              "type": "number"
            }
          },
          "required": [
            "estimate",
            "lower",
            "upper"
          ],
          "additionalProperties": false
        },
        {
          "type": "null"
        }
      ]
    },
    "formula": {
      "type": "string"
    },
    "assumptions": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "responsiveFound",
    "excludedPopulationSize",
    "elusion",
    "estimatedRecall",
    "formula",
    "assumptions"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢calculate_prevalence_richness(positive_hits, sample_size, population_size, confidence_level)

Estimate how rich or prevalent a population is — the share that is responsive/relevant/positive — from positive hits in a random sample, with a Wilson confidence interval. Use for 'what % of this set is relevant?' or to size review scope and cost expectations. Aggregate counts only; not legal advice.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "positive_hits": {
      "type": "integer",
      "minimum": 0
    },
    "sample_size": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "population_size": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "confidence_level": {
      "type": "number",
      "exclusiveMinimum": 0,
      "exclusiveMaximum": 1,
      "default": 0.95
    }
  },
  "required": [
    "positive_hits",
    "sample_size"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "sampleSize": {
      "type": "integer",
      "minimum": 0
    },
    "positiveHits": {
      "type": "integer",
      "minimum": 0
    },
    "pointEstimate": {
      "type": "number"
    },
    "confidenceInterval": {
      "type": "object",
      "properties": {
        "lower": {
          "type": "number"
        },
        "upper": {
          "type": "number"
        },
        "method": {
          "type": "string",
          "const": "wilson"
        }
      },
      "required": [
        "lower",
        "upper",
        "method"
      ],
      "additionalProperties": false
    },
    "confidenceLevel": {
      "type": "number"
    },
    "estimatedPositiveCount": {
      "type": [
        "number",
        "null"
      ]
    },
    "estimatedPositiveLower": {
      "type": [
        "number",
        "null"
      ]
    },
    "estimatedPositiveUpper": {
      "type": [
        "number",
        "null"
      ]
    },
    "formula": {
      "type": "string"
    }
  },
  "required": [
    "sampleSize",
    "positiveHits",
    "pointEstimate",
    "confidenceInterval",
    "confidenceLevel",
    "estimatedPositiveCount",
    "estimatedPositiveLower",
    "estimatedPositiveUpper",
    "formula"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢calculate_control_set_recall(relevant_found, relevant_missed, confidence_level)

Calculate recall against a known control set: the share of documents already confirmed relevant that the workflow found, with a Wilson confidence interval. Use when you have relevant-found and relevant-missed counts from a fixed reference set. For recall from a confusion matrix use calculate_review_metrics; from a discard-set sample use calculate_tar_recall_estimate. Aggregate counts only; not legal advice.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "relevant_found": {
      "type": "integer",
      "minimum": 0
    },
    "relevant_missed": {
      "type": "integer",
      "minimum": 0
    },
    "confidence_level": {
      "type": "number",
      "exclusiveMinimum": 0,
      "exclusiveMaximum": 1,
      "default": 0.95
    }
  },
  "required": [
    "relevant_found",
    "relevant_missed"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "relevantFound": {
      "type": "integer",
      "minimum": 0
    },
    "relevantMissed": {
      "type": "integer",
      "minimum": 0
    },
    "totalRelevant": {
      "type": "integer",
      "minimum": 0
    },
    "recall": {
      "type": [
        "number",
        "null"
      ]
    },
    "confidenceInterval": {
      "type": "object",
      "properties": {
        "lower": {
          "type": [
            "number",
            "null"
          ]
        },
        "upper": {
          "type": [
            "number",
            "null"
          ]
        },
        "method": {
          "type": "string",
          "const": "wilson"
        }
      },
      "required": [
        "lower",
        "upper",
        "method"
      ],
      "additionalProperties": false
    },
    "confidenceLevel": {
      "type": "number"
    },
    "formula": {
      "type": "string"
    }
  },
  "required": [
    "relevantFound",
    "relevantMissed",
    "totalRelevant",
    "recall",
    "confidenceInterval",
    "confidenceLevel",
    "formula"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢compare_tar_cutoffs(scored_document_count, cutoffs)

Compare candidate TAR score or rank cutoffs side by side: for each cutoff, how many docs sit above it, its share of the scored set, and (if responsive counts are given) an estimated precision. Use when deciding where to draw the review/cull line. Aggregate counts only; not legal advice.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "scored_document_count": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "cutoffs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "minLength": 1
          },
          "cutoff": {
            "type": "number"
          },
          "document_count": {
            "type": "integer",
            "minimum": 0
          },
          "responsive_count": {
            "type": "integer",
            "minimum": 0
          }
        },
        "required": [
          "cutoff",
          "document_count"
        ],
        "additionalProperties": false
      },
      "minItems": 1
    }
  },
  "required": [
    "scored_document_count",
    "cutoffs"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "scoredDocumentCount": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "cutoffs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "cutoff": {
            "type": "number"
          },
          "documentCount": {
            "type": "integer",
            "minimum": 0
          },
          "shareOfScored": {
            "type": "number"
          },
          "responsiveCount": {
            "anyOf": [
              {
                "type": "integer",
                "minimum": 0
              },
              {
                "type": "null"
              }
            ]
          },
          "precisionEstimate": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "label",
          "cutoff",
          "documentCount",
          "shareOfScored",
          "responsiveCount",
          "precisionEstimate"
        ],
        "additionalProperties": false
      }
    },
    "questions": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "scoredDocumentCount",
    "cutoffs",
    "questions"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢validate_sample_design(population_size, sample_size, confidence_level, margin_of_error, sampling_frame, ...)

QC a TAR validation sampling plan: check whether it has the documented elements needed for a defensibility discussion (population, sample size, confidence level, sampling frame/method, randomization, etc.) and flag what is missing or inconsistent. Use to sanity-check a sampling protocol before relying on it. Reviews metadata only — not a legal sufficiency opinion.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "population_size": {
      "type": "integer"
    },
    "sample_size": {
      "type": "integer"
    },
    "confidence_level": {
      "type": "number",
      "exclusiveMinimum": 0,
      "exclusiveMaximum": 1,
      "default": 0.95
    },
    "margin_of_error": {
      "type": "number",
      "exclusiveMinimum": 0,
      "exclusiveMaximum": 1
    },
    "sampling_frame": {
      "type": "string",
      "minLength": 1
    },
    "sampling_method": {
      "type": "string",
      "minLength": 1
    },
    "random_seed": {
      "type": "string",
      "minLength": 1
    },
    "generated_at": {
      "type": "string",
      "minLength": 1
    },
    "excluded_population_size": {
      "type": "integer"
    }
  },
  "required": [
    "population_size",
    "sample_size"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "ready",
        "needs_attention",
        "blocked"
      ]
    },
    "issues": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "severity": {
            "type": "string",
            "enum": [
              "info",
              "warning",
              "critical"
            ]
          },
          "detail": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "title",
          "severity",
          "detail"
        ],
        "additionalProperties": false
      }
    },
    "summary": {
      "type": "object",
      "properties": {
        "populationSize": {
          "type": "integer"
        },
        "sampleSize": {
          "type": "integer"
        },
        "samplingRate": {
          "type": [
            "number",
            "null"
          ]
        },
        "confidenceLevel": {
          "type": "number"
        },
        "marginOfError": {
          "type": [
            "number",
            "null"
          ]
        }
      },
      "required": [
        "populationSize",
        "sampleSize",
        "samplingRate",
        "confidenceLevel",
        "marginOfError"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "status",
    "issues",
    "summary"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada15 herramientas
verificadoversión no registrada15 herramientas