Technical Architecture Sanity Check
Server Details
An automated first pass over your architecture: structured intake in, verdict report out — every finding cited to its rule, an improvement map, and a plain NOT ASSESSED list of what was not examined. US$99 one-time; human-led tiers above it — Verified at US$749 and a Deep Dive (Principal Review) at US$5,000 cover adjudication and live-evidence work.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-03-26
- URL
TDQS
Scored across 4 tools
Each tool targets a clearly different operation: discovery (catalogue), billing state (credit_status), paid execution (run), and a free demo (sample). The descriptions explicitly distinguish the sample from the user's own architecture and separate free vs. credit-spending calls, so misselection risk is minimal.
All four tools share the same 'sanity_check_' prefix, giving a predictable namespace. The suffixes mix noun phrases (catalogue, credit_status) with verbs/nouns (run, sample), a minor deviation but still readable and unambiguous.
Four tools is well-scoped for a single-service API: discover, verify payment, execute, and preview. Each tool earns its place with no redundant or speculative endpoints.
The surface covers the core lifecycle: learn what is checked and its pricing, verify credit/api_key state, run against your intake, and preview via a free sample. Minor gaps exist — no tool to fetch the intake schema (it is only linked) or to retrieve prior reports/history — but agents can work around these via the provided URL and returned report links.
Available Tools
4 toolssanity_check_catalogueAInspect
List the architecture checks the Sanity Check runs (families, plain-language descriptions), what is NOT assessed, pricing, and how run credits work. Free.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does meaningful work: it discloses that the response covers not only what is checked but explicitly 'what is NOT assessed', and that the call costs nothing. It doesn't state the return format explicitly, but the content categories are well enumerated for a zero-parameter read.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that packs scope, return contents, and cost with no filler. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description must convey what comes back, and it lists the returned information categories capably. For a no-parameter, no-annotation listing tool this is close to sufficient; only an explicit 'call this first' routing hint is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the schema imposes no documentation burden and the baseline of 4 applies. The description adds no parameter detail because none exists to explain.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') and resource ('the architecture checks the Sanity Check runs') plus the exact contents returned (families, plain-language descriptions, gaps, pricing, credits). It is clearly a discovery/catalogue tool, distinct from the action-oriented siblings (run, sample), though the mention of 'how run credits work' slightly overlaps the territory of sanity_check_credit_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Free.' implies this is the cheap first step before spending credits, but the description never explicitly says 'call this before sanity_check_run' or names siblings as alternatives. Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sanity_check_credit_statusAInspect
Check payment state without spending anything: pass 'credit' (a web run-credit id from Stripe checkout) to see its status, or 'api_key' to see its run-credit balance. Free.
| Name | Required | Description | Default |
|---|---|---|---|
| credit | No | A run-credit id (Stripe checkout session id). | |
| api_key | No | An API key created at POST /api/v1/keys. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose the most important trait — the call is free and 'without spending anything,' which is non-obvious for a payment-status tool. However, it says nothing about authentication expectations, error behavior for an invalid credit id, or what happens when neither parameter is supplied (both are optional).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with a colon introducing the two branches; the cost note ('Free') is appended without waste. Nothing is repeated and every clause carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-optional-parameter read tool this covers the selection logic and cost, which is most of what an agent needs. But there is no output schema, and 'see its status' / 'see its run-credit balance' leaves the return shape — possible status values, balance units — unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is already 100%, so the baseline is 3; the description earns above that by tying each parameter to a distinct outcome — 'credit' yields status, 'api_key' yields run-credit balance. It also clarifies that 'credit' is a web run-credit id from Stripe checkout, adding context beyond the schema's 'Stripe checkout session id.'
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — 'check payment state' — and immediately explains the two modes of operation (credit status vs api_key balance). It is clearly distinct from the sibling sanity_check_* tools, but it never names them or explicitly contrasts itself, so it stops short of full sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description tells the agent exactly which parameter selects which behavior: 'pass credit ... to see its status, or api_key to see its run-credit balance.' That is clear routing between the two use cases. It stops short of 5 because it never says when not to use this tool or points to a related alternative for other payment questions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sanity_check_runAInspect
Run the full Technical Architecture Sanity Check on YOUR intake and return the verdict summary + report links (PDF/DOCX/HTML/Markdown/JSON). Costs ONE run credit: pass 'credit' (a web run-credit id) or 'api_key' (a key with balance). The intake is the SanityCheckIntakeV1 object (sections a-g; schema at https://sanity.aimlds.org/api/v1/intake-schema). Never include credentials in an intake — credential-shaped values are refused.
| Name | Required | Description | Default |
|---|---|---|---|
| credit | No | ||
| intake | Yes | SanityCheckIntakeV1 — sections a (context), b (architecture), c (spend bands), d (data flows), e (AI), f (security posture), g (pain). | |
| api_key | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose meaningful behavior: a credit is consumed, credential-shaped values inside the intake are refused, and five report artifacts are produced. It omits what happens on validation failure (credit refunded or not), runtime expectations, and idempotency, which matter for a paid one-shot operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the action and the return value, then the cost/auth prerequisite, then intake shape and the credential restriction. Dense but every sentence carries information; only the parenthetical format list and the schema URL could be trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with a nested intake object, no output schema, and no annotations, the description still covers the return payload, the payment/authentication prerequisite, the intake contract and its schema location, and a validation rule. Failure and refund behavior are the remaining gap, but the agent can call it correctly from what is stated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 33%, but the description compensates for all three parameters: 'credit' is a web run-credit id, 'api_key' needs a balance, and 'intake' is SanityCheckIntakeV1 with sections a-g plus a schema URL. The either/or relationship between credit and api_key is conveyed, though the external schema link leaves nested intake semantics off-tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Run the full Technical Architecture Sanity Check on YOUR intake') and names the return payload (verdict summary + report links in five formats). It is clearly distinct from catalogue/credit_status siblings in substance, but never explicitly names sanity_check_sample, which is the closest ambiguous alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear preconditions — it costs one run credit and you must pass either a 'credit' id or an 'api_key' with balance — which tells the agent what it needs before calling. It does not explicitly say when to prefer sanity_check_sample or sanity_check_catalogue instead, so no exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sanity_check_sampleAInspect
Run the published sample intake (a fictional fintech with deliberately weak answers) live through the same checker and return its verdict + top findings. Free preview — this is the sample, not your architecture.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full load and does disclose key traits: it executes live through the same checker (so behavior mirrors the real tool), it costs nothing, and the input is a fixed fictional fintech with deliberately weak answers. It omits latency/caching behavior for a live run, which is the main remaining gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, front-loaded with the action and the output, then the cost and scope caveat. Every clause carries information; nothing is filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-param tool with no output schema, the description tells the agent what comes back (verdict + top findings) and that no input is required. The shape of 'top findings' is left unspecified, a minor gap given no output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, so the baseline is 4. The description goes slightly beyond by explaining why there are none — the intake is a fixed published sample — which prevents an agent from hunting for a way to pass its own data.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific action (run the published sample intake live through the same checker) and states the return (verdict + top findings). The clause 'this is the sample, not your architecture' implicitly distinguishes it from sanity_check_run, though it never names the sibling directly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Free preview' gives a clear condition for choosing this tool, and 'this is the sample, not your architecture' is an effective when-not signal that steers agents to the real-run tool. No sibling is named explicitly, so routing relies on inference.
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.
4 tool updates
- First observed
sanity_check_catalogue - First observed
sanity_check_credit_status - First observed
sanity_check_run - First observed
sanity_check_sample
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceRemote 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
- AlicenseCqualityBmaintenanceCompetitor Monitor AI - MCP server providing AI-powered tools and automation by MEOK AI Labs113 npm55 PyPIMIT
- AlicenseAqualityCmaintenanceEnables 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.1618 npm1MIT

industrylens-mcpofficial
AlicenseNot gradedqualityBmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.