Skip to content

ai.plith/plith

by plith.ai · remote · no sign-in to list tools · v1.0.0 · published by ai.plith

AI agent infrastructure: dedup, cost prediction, validation, governance, failure intelligence.

Changes · 12

15 tools: 12 change things and 3 only read.

Scanned Oct 21, 2026

4 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http plith https://plith.ai/api/mcp

Findings

Matches of fixed checks, with the text they matched.

4 warn
  • The server marks "burnrate_track" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "log": a word for reading.

    What this check looks for
  • The server marks "burnrate_optimize" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "get": a word for reading.

    What this check looks for
  • The server marks "qualitygate_validate" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "qualitygate_validate" says "validate": a word for reading.

    What this check looks for
  • The server marks "pitfalldb_query" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "pitfalldb_query" says "query": a word for reading.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

15 tools

Changes things 12Claude Code: ask
  • burnrate_estimateBefore executing a multi-step agent plan, estimate the total LLM cost.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Before executing a multi-step agent plan, estimate the total LLM cost. Returns per-step breakdown and optimization suggestions. If the estimate exceeds your budget, pipe the same plan into burnrate_optimize. Costs 1 credit.

    Annotations the server declares

    • title: Estimate LLM cost for a plan
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • burnrate_optimizeGet a cheaper equivalent plan by substituting models with lower-cost alternatives.1 finding

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "burnrate_optimize" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "get": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Get a cheaper equivalent plan by substituting models with lower-cost alternatives. Call after burnrate_estimate if the estimated cost exceeds your budget. Returns the optimized plan with substituted models, new per-step costs, total savings, and whether the target_budget is met. Optionally set target_budget to constrain the optimization. Costs 1 credit.

    Annotations the server declares

    • title: Optimize plan for lower cost
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • burnrate_trackLog the actual cost of an LLM call after execution.1 finding

    Why it is in this group

    • The description's first verb is "log": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "burnrate_track" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "log": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Log the actual cost of an LLM call after execution. Call this after every LLM request to build calibration data that improves burnrate_estimate accuracy over time. Free — no credits charged. Returns the recorded cost entry with computed margin versus the prior estimate when one exists for this model and token range.

    Annotations the server declares

    • title: Record actual LLM spend
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • dedupq_checkBefore executing any LLM task, check if an identical or semantically similar task has already been completed.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Before executing any LLM task, check if an identical or semantically similar task has already been completed. Returns cached result on hit, saving one LLM call. On a miss, execute your task and call dedupq_complete to cache the result for future hits. Costs 1 credit.

    Annotations the server declares

    • title: Check for duplicate tasks
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • dedupq_completeAfter executing a task, store the result so future identical or similar tasks return a cache hit via dedupq_check.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    After executing a task, store the result so future identical or similar tasks return a cache hit via dedupq_check. Costs 2 credits.

    Annotations the server declares

    • title: Store completed task result
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • guardrail_checkEvaluate a proposed agent action against your governance policies.No findings

    Why it is in this group

    • The description's first verb is "evaluate": a word for a change.
    Description, as the server wrote it
    Evaluate a proposed agent action against your governance policies. Returns allow or deny with the matched policy reason. Requires at least one active policy created via guardrail_create_policy. Deterministic rule evaluation — no LLM. Costs 1 credit.

    Annotations the server declares

    • title: Check action against policies
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • guardrail_create_policyCreate a persistent governance policy that guardrail_check evaluates on every subsequent call.No findings

    Why it is in this group

    • The name "guardrail_create_policy" says "create": a word for a change.
    Description, as the server wrote it
    Create a persistent governance policy that guardrail_check evaluates on every subsequent call. Define rules using and/or/not operators over action types, resource patterns, and budget thresholds. Call this before using guardrail_check — checks require at least one active policy. Policies persist until explicitly deleted. Duplicate policy names return an error. Returns the created policy with its ID and active status.

    Annotations the server declares

    • title: Create governance policy
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • pitfalldb_queryCheck for known failure patterns before executing a task type.1 finding

    Why it is in this group

    • The name "pitfalldb_query" says "query": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "pitfalldb_query" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "pitfalldb_query" says "query": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Check for known failure patterns before executing a task type. Returns pitfalls with severity, fix suggestions, and confidence scores. After your agent runs, submit failures via pitfalldb_report so others benefit. Costs 2 credits.

    Annotations the server declares

    • title: Query known failure patterns
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • pitfalldb_reportReport an agent failure.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Report an agent failure. PII-scrubbed before storage. Linked to existing pitfalls if similar. Free — no credits charged.

    Annotations the server declares

    • title: Report an agent failure
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • qualitygate_validateAfter your agent generates output, validate it against your rules before shipping.1 finding

    Why it is in this group

    • The name "qualitygate_validate" says "validate": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "qualitygate_validate" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "qualitygate_validate" says "validate": a word for reading.

      What this check looks for
    Description, as the server wrote it
    After your agent generates output, validate it against your rules before shipping. Runs deterministic checks (regex, JSON schema, syntax) plus optional LLM-powered tone and factual analysis. Returns a structured verdict (pass, warn, or fail) with a 0-100 score and per-check issue details. Use qualitygate_trends to spot recurring failure patterns over time. Variable cost: 1 credit per deterministic check, 8 credits per LLM check.

    Annotations the server declares

    • title: Validate agent output
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • rigor_executeExecute a structured workflow end-to-end.No findings

    Why it is in this group

    • The name "rigor_execute" says "execute": a word for a change.
    Description, as the server wrote it
    Execute a structured workflow end-to-end. Call rigor_plan first (free) to preview the step sequence and cost estimate before committing credits. Classifies the task, selects the optimal tool sequence, and executes each step with the right LLM model. Returns a complete deliverable — solution designs, competitive analyses, governance documents, and more. Supports SSE streaming for real-time progress, webhook callback, or polling. For atomic work — classification, scoring, ranking, entity extraction, query parsing — set preferences.execution to 'direct' and declare preferences.output_contract to get validated JSON records from a single call, routed to the cheapest model that holds the schema.

    Annotations the server declares

    • title: Execute a Rigor workflow
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • rigor_planBefore executing a complex task, get a structured workflow plan with per-step cost estimates.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Before executing a complex task, get a structured workflow plan with per-step cost estimates. Classifies your task, selects the optimal framework sequence, and returns the full plan without executing anything. The response's allowed_modes tells you whether this plan is eligible for direct execution. Free — no credits charged.

    Annotations the server declares

    • title: Plan a Rigor workflow
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
Only reads 3Claude Code: allow
  • burnrate_budgetGet today's tracked LLM spend, per-model breakdown, projection, and budget alerts.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get today's tracked LLM spend, per-model breakdown, projection, and budget alerts. Free — no credits charged.

    Annotations the server declares

    • title: Get daily spend and budget
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • rigor_statusCheck the status of a running or completed Rigor workflow.No findings

    Why it is in this group

    • The name "rigor_status" says "status": a word for reading.
    Description, as the server wrote it
    Check the status of a running or completed Rigor workflow. Returns progress, step results, and the full deliverable when complete. Use after rigor_execute with polling delivery to retrieve results.

    Annotations the server declares

    • title: Check workflow status
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • rigor_workflowsList and search Rigor workflows for your organization, with filtering and pagination.No findings

    Why it is in this group

    • The description's first verb is "list": a word for reading.
    Description, as the server wrote it
    List and search Rigor workflows for your organization, with filtering and pagination. Returns status, progress, capacity usage, and available actions per workflow. Use to monitor workflow state, understand concurrent limit usage, identify stuck or completed workflows, and — via q — find prior work on a subject before commissioning it again. Pair a q hit with rigor_status to read that workflow's deliverable.

    Annotations the server declares

    • title: List Rigor workflows
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http plith https://plith.ai/api/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__plith__burnrate_budget",
      "mcp__plith__rigor_status",
      "mcp__plith__rigor_workflows"
    ],
    "ask": [
      "mcp__plith__dedupq_check",
      "mcp__plith__dedupq_complete",
      "mcp__plith__burnrate_estimate",
      "mcp__plith__burnrate_track",
      "mcp__plith__burnrate_optimize",
      "mcp__plith__qualitygate_validate",
      "mcp__plith__guardrail_check",
      "mcp__plith__guardrail_create_policy",
      "mcp__plith__pitfalldb_query",
      "mcp__plith__pitfalldb_report",
      "mcp__plith__rigor_plan",
      "mcp__plith__rigor_execute"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as plith. Review it before you use it.