Skip to main content
Glama

Server Details

Rams is a design reviewer for UI code. The MCP server puts the hosted engine inside a coding agent: the agent passes files to the review_files tool and gets back a 0–100 score with file:line issues and concrete fixes — accessibility, color, typography, spacing, components, UX, motion, craft, and native SwiftUI. Same engine and scoring as the Rams GitHub App. 258 rules, published at rams.ai/rules. Free tier: 30 reviews/month.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 72 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.4/5.0

Scored across 5 tools

Disambiguation4/5

The two code-review tools (quick_review vs review_files) overlap in domain at first glance, but the descriptions give explicit routing rules: quick_review returns issues with no score or patches, review_files returns a 0-100 score and patches. review_url, verify_fixes, and usage each have clearly distinct purposes, so boundaries are discoverable for an agent that reads the descriptions.

Naming Consistency4/5

Four tools follow a snake_case action-oriented pattern (quick_review, review_files, review_url, verify_fixes) with the verb or target leading the name. Only 'usage' breaks the convention as a bare noun, a minor deviation in an otherwise predictable set.

Tool Count5/5

Five tools is well-scoped for a focused UI design-review service: two code paths (quick vs full), one URL path, one quota check, and one re-verification step. Every tool earns its place with no redundant or filler entries.

Completeness4/5

The surface covers the full review lifecycle: quick check, full scored review, live-page review, quota check, and post-fix verification. Minor gaps exist around review history or plan/quota management, but core workflows have no dead ends.

Available Tools

5 tools
quick_reviewRams quick checkAInspect

Fast design and accessibility check of UI code (React, Vue, Svelte, HTML, CSS, SwiftUI). Returns the top issues with severity, category and file:line in about 10 seconds. Call it when the user pastes or uploads UI code, asks whether a design is good or accessible, or when you just wrote or changed a component, page or view. You do not need to ask first. Pass each file with its real path, or for pasted code a path that fits it (pasted/Card.tsx, pasted/index.html) and the full code. Five quick checks cost one review credit (two on the free plan). It reads code only, not screenshots or URLs. It returns no score and no patch: fix the issues yourself. For a score or patches, use review_files.

NameRequiredDescriptionDefault
viaNoSet to "rules" when this call is made because of a standing instruction in a rules file (e.g. CLAUDE.md). Omit when a person asked for the review.
filesYesThe UI code, one entry per file (up to 20): the real path, or for pasted code a path that fits it (pasted/Card.tsx), and the full code
contextNoShort label, e.g. the component or feature name

Output Schema

NameRequiredDescription
ranYesfalse when the check did not run (hourly limit, no credits left, engine failure) or came back unusable; message says why
issuesYes
messageNoPresent when ran is false: the reason, in words
issueCountYes

TDQS

A4.4/5.0
Behavior4/5

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

Adds real behavioral context beyond the annotations: ~10 second runtime, credit economics (five quick checks = one review credit, two on free plan), the hard scope limit (reads code only, not screenshots or URLs), and the output shape limit (no score, no patch). The annotations only declare non-readonly/non-idempotent flags, so these details are genuinely additive. It could say more about what happens on oversized input (20-file cap) or failure modes.

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 capability, then triggers, then operational constraints, then the alternative tool — a sound ordering. Sentences are dense but each carries information; only the pasted-path example is redundant with the schema.

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?

Covers purpose, triggers, non-triggers, alternatives, latency, cost, input conventions and output limitations. With an output schema present it does not need to explain return values, yet it still summarises them (severity, category, file:line). Nothing needed to invoke it correctly is missing.

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 description coverage is 100%, so path, content, context and via are already documented. The description reinforces the pasted-path convention (pasted/Card.tsx, pasted/index.html) but this duplicates the schema's own files description, and it never explains the via='rules' parameter. Baseline 3 is correct.

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 ('Fast design and accessibility check of UI code'), names the supported frameworks, and explicitly differentiates itself from the sibling by stating 'For a score or patches, use review_files.' An agent can route between quick_review and review_files without opening either schema.

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?

Gives concrete triggering conditions: user pastes/uploads UI code, asks if a design is good/accessible, or you just wrote/changed a component, page or view. It also removes ambiguity about consent ('You do not need to ask first') and names the alternative for the cases this tool does not serve.

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

review_filesRams design reviewAInspect

Full Rams design review of UI code (React, Vue, Svelte, HTML, CSS, SwiftUI). Returns a 0-100 score (criticals cap it: one caps at 59, two at 49, three or more at 39), issues with severity, category, file:line, and concrete fixes as patches. Call it once at the end: before a commit, or when the user wants a score or a final check. Pass each file with its real path, or for pasted code a path that fits it (pasted/Card.tsx). Each call uses one review credit. Reviewing a few files needs no permission. Ask the user before a whole-codebase audit (dozens of files), since it spends their allowance. For quick feedback while you work, use quick_review.

NameRequiredDescriptionDefault
viaNoSet to "rules" when this call is made because of a standing instruction in a rules file (e.g. CLAUDE.md). Omit when a person asked for the review.
filesYesThe UI code, one entry per file (up to 20): the real path, or for pasted code a path that fits it (pasted/Card.tsx), and the full code
contextNoShort label for this review, e.g. the feature or branch name

Output Schema

NameRequiredDescription
scoreYes0-100; confirmed criticals cap it — one at 59, two at 49, three or more at 39
issuesYes
summaryYes
directionNoWhat the change is trying to be — judgment before findings
visualPairNoOne verified before/after of the top fix (image URLs), when one was rendered
reviewsUsedYes
reviewsLimitYesnull = unlimited (Team overage applies instead)
detectedCountsYes
visualFindingsNoFindings seen in a render of the code, each with a crop URL

TDQS

A4.9/5.0
Behavior5/5

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

Goes well beyond the annotations (which only mark it non-read-only, non-idempotent, non-destructive) by disclosing the credit cost per call, the scoring model with its critical-cap thresholds, the shape of returned issues and fixes, and the allowance/permission model for large audits. These are exactly the traits an agent cannot infer from structured fields.

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?

Dense but front-loaded: purpose first, then output shape, then invocation timing, then cost/permission rules, then the sibling alternative. Every sentence carries operational information with no filler.

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?

An output schema exists, so return values need not be spelled out, yet the description still summarizes the score and issue structure. Combined with the credit, permission, and path guidance, an agent has everything needed to invoke it correctly and safely.

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?

Schema coverage is 100%, so the baseline is 3; the description adds real meaning on top by explaining that each file needs its real path or a plausible synthetic path for pasted code (pasted/Card.tsx), which clarifies the 'path' field's intent. It does not cover the 'via' parameter, which is left entirely to the schema.

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 ('Full Rams design review of UI code') plus the supported frameworks, and explicitly contrasts with quick_review as the fast-feedback alternative. An agent can distinguish it from every sibling without opening a schema.

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?

Gives explicit timing ('call it once at the end: before a commit, or when the user wants a score or a final check'), names the alternative for quick feedback, and states the permission boundary ('reviewing a few files needs no permission' vs. asking before a whole-codebase audit). When, when-not, and alternatives are all covered.

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

review_urlRams page reviewAInspect

Review a live public web page by its URL, no code needed. Rams opens the page at desktop (1440px) and phone (390px) widths, measures the rendered page and looks at both screenshots, then returns the top design issues (severity, category, where on the page, and a fix in plain words) with a 0-100 score. Use it when the user names a site or a page: "review rams.ai with Rams", "how does my landing page look?". It takes up to a minute and uses one review credit. Public pages only: no sign-in pages, localhost or private addresses. It returns no code patches. If the user has the code for the page, use quick_review or review_files on those files instead.

NameRequiredDescriptionDefault
urlYesThe page to review, e.g. https://rams.ai or rams.ai/pricing
focusNoOptional: what to put first, e.g. "mobile", "typography", "color"

Output Schema

NameRequiredDescription
hostYesThe page that was reviewed (host only)
scoreYes0-100, what a designer sees in the two screenshots; one critical caps it at 59
scoresYes
summaryYes
findingsYesEvery finding, most severe first (the text shows the top 8)
reviewsUsedYes
reviewsLimitYesnull = unlimited
detectedCountsYes

TDQS

A4.7/5.0
Behavior5/5

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

Goes well beyond the annotations (readOnlyHint=false, openWorldHint=true, idempotentHint=false, destructiveHint=false) by disclosing the cost and latency model ("takes up to a minute and uses one review credit"), the exact rendering widths, the public-pages-only auth constraint, and the negative guarantee that it returns no code patches. These are exactly the operational facts an agent needs before invoking.

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?

Front-loads the core action before cost, constraints, and the sibling routing rule, and every sentence carries a distinct fact (viewport widths, output shape, timing, credit cost, eligibility limits, alternative tool). The only mild redundancy is "no code needed" vs "returns no code patches," which reinforces rather than wastes.

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?

For a two-parameter open-world tool with an output schema already present, the description still covers latency, credit consumption, viewport behavior, eligibility restrictions, and the fallback tool. An agent can decide whether to call it, what it will cost, and what it will return without further context.

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 description coverage is 100%, so both parameters are already documented in structured data, and the description adds only indirect meaning (the page must be public, rendered at two widths) without explaining the url format or focus precedence beyond what the schema states. Baseline 3 is appropriate when the schema carries the load.

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 ("Review a live public web page by its URL") plus the exact mechanism (desktop 1440px and phone 390px, screenshot + measurement, severity/category/location/fix, 0-100 score). It also distinguishes itself from the sibling reviewed tools by naming quick_review and review_files as the code-based alternatives.

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?

Explicit when-to-use trigger ("Use it when the user names a site or a page") with quoted user utterances, explicit exclusions (no sign-in pages, localhost or private addresses), and a concrete alternative path (if the user has the code, use quick_review or review_files). Nothing material is left to inference.

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

usageRams review quotaA
Read-onlyIdempotent
Inspect

Check how many Rams reviews this account has used and how many are left. Free to call. It does not use a review.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
planNoPlan name
usedYesReview credits used in the window
limitYesReview credits included; null = unlimited
windowYes"lifetime" (free reviews that do not renew), "billing_cycle" (an account set to pause at its limit) or "rolling_30_days"
pausedNowNoAn account set to pause at its limit: true while paused
remainingYesIncluded credits left; null = unlimited
resumesAtNoAn account set to pause at its limit: when the next billing cycle starts (ISO 8601)
fullReviewsNoPresent when full reviews are capped; past the cap review_files returns a quick check
overageBillingNoPresent where it applies: true = reviews past the limit keep running and are billed on the monthly invoice
purchasedCreditsYesPurchased review credits, spent automatically once the included ones run out

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so safety is covered. The description adds genuinely new behavioral context beyond the annotations: the call is free and consumes no review quota, which is the crucial side-effect distinction for this tool.

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?

Three short sentences, front-loaded with what the tool reports and followed by the cost/side-effect caveat. Every sentence carries information the agent needs; nothing is 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?

For a zero-parameter, read-only quota check with an output schema and full annotation coverage, the description supplies everything needed: what it returns, that it is free, and that it does not consume quota. Return-value detail is correctly left to the output schema.

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 takes zero parameters, so the baseline is 4. There is nothing for the description to disambiguate, and it correctly does not invent parameter detail.

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 states a specific verb and resource: checking how many Rams reviews this account has used and how many remain. The line 'It does not use a review' distinguishes it from the review-consuming siblings (quick_review, review_files, review_url), so an agent can tell it apart without opening the schema.

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

Usage Guidelines4/5

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

'Free to call. It does not use a review.' gives clear context for when this is safe to invoke versus the consuming siblings, which is the key decision an agent faces here. It stops short of explicitly naming an alternative or stating a when-not condition, so it is clear but not fully prescriptive.

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

verify_fixesVerify Rams fixes landedA
Read-onlyIdempotent
Inspect

Re-check findings from an earlier Rams review against the updated code. Pass the new version of each file under the same path as before, plus the findings. Returns fixed or still present for each one. Free: it never counts against the user's quota. Use it after you fix the issues.

NameRequiredDescriptionDefault
filesYesThe updated UI files (same paths as the original review)
issuesYesThe findings to verify, as returned by review_files

Output Schema

NameRequiredDescription
fixedYes
presentYes
allClearYestrue when nothing remains, including no remaining criticals

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, non-destructive behavior, so the safety profile is covered. The description adds genuinely useful context beyond them: it discloses the return semantics ('fixed or still present for each one') and a cost trait ('Free: it never counts against the user's quota'). This is meaningful added value over the structured fields.

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?

Four short sentences, each earning its place: what it does, what to pass, what it returns, and cost/usage. The core action is front-loaded and there is no filler.

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?

With an output schema present and rich annotations covering the safety profile, the description supplies everything else an agent needs: the input pairing convention, the return semantics, and the quota context. Nothing required for correct invocation is missing.

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?

Schema description coverage is 100%, so the baseline would be 3. The description adds meaning beyond the schema by stating that files must use the same paths as the original review and that the findings are passed alongside them, clarifying the pairing relationship between the two parameters.

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 (re-check/verify) and resource (findings from an earlier Rams review against updated code), and clearly separates it from the finding-producing sibling review_files. An agent can tell this is the follow-up verification tool without opening the schema.

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

Usage Guidelines4/5

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

Gives clear when-to-use guidance ('Use it after you fix the issues') and the precondition that files must be passed under the same paths as the original review. It does not explicitly name review_files as the source of the issues, but the phrase 'as returned by review_files' in the schema and 'earlier Rams review' make the context clear.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • Changedquick_review1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": true,
        +  "properties": {
        +    "issueCount": {
        +      "type": "number"
        +    },
        +    "issues": {
        +      "items": {
        +        "additionalProperties": true,
        +        "properties": {
        +          "category": {
        +            "type": "string"
        +          },
        +          "file": {
        +            "type": "string"
        +          },
        +          "line": {
        +            "type": "number"
        +          },
        +          "message": {
        +            "type": "string"
        +          },
        +          "severity": {
        +            "description": "critical, serious or moderate",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "severity",
        +          "category",
        +          "file",
        +          "line",
        +          "message"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "message": {
        +      "description": "Present when ran is false: the reason, in words",
        +      "type": "string"
        +    },
        +    "ran": {
        +      "description": "false when the check did not run (hourly limit, no credits left, engine failure) or came back unusable; message says why",
        +      "type": "boolean"
        +    }
        +  },
        +  "required": [
        +    "ran",
        +    "issueCount",
        +    "issues"
        +  ],
        +  "type": "object"
        +}
    • Changedreview_files3 fields changed
      • changedOutput schema / additionalProperties
        Previous value: -falseNew value: +true
      • addedOutput schema / properties / visualFindings
        Added value: +{
        +  "description": "Findings seen in a render of the code, each with a crop URL",
        +  "items": {
        +    "additionalProperties": true,
        +    "properties": {},
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedOutput schema / properties / visualPair
        Added value: +{
        +  "additionalProperties": true,
        +  "description": "One verified before/after of the top fix (image URLs), when one was rendered",
        +  "properties": {},
        +  "type": "object"
        +}
    • Changedreview_url1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": true,
        +  "properties": {
        +    "detectedCounts": {
        +      "additionalProperties": true,
        +      "properties": {
        +        "critical": {
        +          "type": "number"
        +        },
        +        "moderate": {
        +          "type": "number"
        +        },
        +        "serious": {
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "critical",
        +        "serious",
        +        "moderate"
        +      ],
        +      "type": "object"
        +    },
        +    "findings": {
        +      "description": "Every finding, most severe first (the text shows the top 8)",
        +      "items": {
        +        "additionalProperties": true,
        +        "properties": {
        +          "category": {
        +            "type": "string"
        +          },
        +          "fix": {
        +            "type": "string"
        +          },
        +          "instances": {
        +            "type": "number"
        +          },
        +          "measured": {
        +            "description": "true = measured on the rendered page, false = seen in the screenshot",
        +            "type": "boolean"
        +          },
        +          "message": {
        +            "type": "string"
        +          },
        +          "severity": {
        +            "description": "critical, serious or moderate",
        +            "type": "string"
        +          },
        +          "title": {
        +            "type": "string"
        +          },
        +          "viewport": {
        +            "description": "desktop or phone",
        +            "type": "string"
        +          },
        +          "where": {
        +            "description": "The element, when one element owns the finding",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "severity",
        +          "category",
        +          "viewport",
        +          "measured",
        +          "title",
        +          "message",
        +          "instances"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "host": {
        +      "description": "The page that was reviewed (host only)",
        +      "type": "string"
        +    },
        +    "reviewsLimit": {
        +      "description": "null = unlimited",
        +      "type": [
        +        "number",
        +        "null"
        +      ]
        +    },
        +    "reviewsUsed": {
        +      "type": "number"
        +    },
        +    "score": {
        +      "description": "0-100, what a designer sees in the two screenshots; one critical caps it at 59",
        +      "type": "number"
        +    },
        +    "scores": {
        +      "additionalProperties": true,
        +      "properties": {
        +        "desktop": {
        +          "type": "number"
        +        },
        +        "phone": {
        +          "type": "number"
        +        }
        +      },
        +      "type": "object"
        +    },
        +    "summary": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "host",
        +    "score",
        +    "scores",
        +    "summary",
        +    "detectedCounts",
        +    "findings",
        +    "reviewsUsed",
        +    "reviewsLimit"
        +  ],
        +  "type": "object"
        +}
    • Changedusage1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": true,
        +  "properties": {
        +    "fullReviews": {
        +      "additionalProperties": true,
        +      "description": "Present when full reviews are capped; past the cap review_files returns a quick check",
        +      "properties": {
        +        "cap": {
        +          "type": "number"
        +        },
        +        "used": {
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "used",
        +        "cap"
        +      ],
        +      "type": "object"
        +    },
        +    "limit": {
        +      "description": "Review credits included; null = unlimited",
        +      "type": [
        +        "number",
        +        "null"
        +      ]
        +    },
        +    "overageBilling": {
        +      "description": "Present where it applies: true = reviews past the limit keep running and are billed on the monthly invoice",
        +      "type": "boolean"
        +    },
        +    "pausedNow": {
        +      "description": "An account set to pause at its limit: true while paused",
        +      "type": "boolean"
        +    },
        +    "plan": {
        +      "description": "Plan name",
        +      "type": "string"
        +    },
        +    "purchasedCredits": {
        +      "description": "Purchased review credits, spent automatically once the included ones run out",
        +      "type": "number"
        +    },
        +    "remaining": {
        +      "description": "Included credits left; null = unlimited",
        +      "type": [
        +        "number",
        +        "null"
        +      ]
        +    },
        +    "resumesAt": {
        +      "description": "An account set to pause at its limit: when the next billing cycle starts (ISO 8601)",
        +      "type": "string"
        +    },
        +    "used": {
        +      "description": "Review credits used in the window",
        +      "type": "number"
        +    },
        +    "window": {
        +      "description": "\"lifetime\" (free reviews that do not renew), \"billing_cycle\" (an account set to pause at its limit) or \"rolling_30_days\"",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "used",
        +    "limit",
        +    "remaining",
        +    "window",
        +    "purchasedCredits"
        +  ],
        +  "type": "object"
        +}
  2. 3 tool updates
    • Changedquick_review1 field changed
      • changedInput schema / properties / files / description
        Previous value: -"The UI files you just changed"New value: +"The UI code, one entry per file (up to 20): the real path, or for pasted code a path that fits it (pasted/Card.tsx), and the full code"
    • Changedreview_files1 field changed
      • changedInput schema / properties / files / description
        Previous value: -"UI files to review (up to 20)"New value: +"The UI code, one entry per file (up to 20): the real path, or for pasted code a path that fits it (pasted/Card.tsx), and the full code"
    • Addedreview_url
  3. 2 tool updates
    • Changedquick_review1 field changed
      • addedInput schema / properties / via
        Added value: +{
        +  "description": "Set to \"rules\" when this call is made because of a standing instruction in a rules file (e.g. CLAUDE.md). Omit when a person asked for the review.",
        +  "type": "string"
        +}
    • Changedreview_files1 field changed
      • addedInput schema / properties / via
        Added value: +{
        +  "description": "Set to \"rules\" when this call is made because of a standing instruction in a rules file (e.g. CLAUDE.md). Omit when a person asked for the review.",
        +  "type": "string"
        +}
  4. 1 tool update
    • Addedquick_review
  5. 1 tool update
    • Changedreview_files1 field changed
      • changedOutput schema / properties / score / description
        Previous value: -"0-100; any confirmed critical caps it at 59"New value: +"0-100; confirmed criticals cap it — one at 59, two at 49, three or more at 39"
  6. 1 tool update
    • Addedverify_fixes
  7. 1 tool update
    • Changedreview_files1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "detectedCounts": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "critical": {
        +          "type": "number"
        +        },
        +        "moderate": {
        +          "type": "number"
        +        },
        +        "serious": {
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "critical",
        +        "serious",
        +        "moderate"
        +      ],
        +      "type": "object"
        +    },
        +    "direction": {
        +      "description": "What the change is trying to be — judgment before findings",
        +      "type": "string"
        +    },
        +    "issues": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "category": {
        +            "type": "string"
        +          },
        +          "file": {
        +            "type": "string"
        +          },
        +          "fix": {
        +            "description": "The fix as prose/code",
        +            "type": "string"
        +          },
        +          "line": {
        +            "type": "number"
        +          },
        +          "message": {
        +            "type": "string"
        +          },
        +          "patch": {
        +            "description": "RAMS-121: unified diff against the submitted file content, git-apply-able. Present only when the fix locates unambiguously.",
        +            "type": "string"
        +          },
        +          "severity": {
        +            "type": "string"
        +          },
        +          "title": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "severity",
        +          "category",
        +          "title",
        +          "message",
        +          "file",
        +          "line"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "reviewsLimit": {
        +      "description": "null = unlimited (Team overage applies instead)",
        +      "type": [
        +        "number",
        +        "null"
        +      ]
        +    },
        +    "reviewsUsed": {
        +      "type": "number"
        +    },
        +    "score": {
        +      "description": "0-100; any confirmed critical caps it at 59",
        +      "type": "number"
        +    },
        +    "summary": {
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "score",
        +    "summary",
        +    "detectedCounts",
        +    "issues",
        +    "reviewsUsed",
        +    "reviewsLimit"
        +  ],
        +  "type": "object"
        +}
  8. 2 tool updates
    • First observedreview_files
    • First observedusage

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Remote MCP server that lets AI assistants read tracked competitive intelligence — competitor news, reviews, website changes, social posts and ads — and act on it by managing projects, competitors, battle cards, reports and canvases. Every answer carries a source and a date, and write actions only publish when explicitly shared.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    18 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources