Skip to main content
Glama
631,256 tools. Updated 2026-10-02 23:01

"Lens" matching MCP tools:

  • AI Eye Color Lens Virtual Simulation provides instant, hyper‑realistic contact lens try‑on by precisely detecting the iris, preserving natural reflections, accurately simulating lens opacity and blending across all iris colors, and enabling users to explore shades from subtle enhancements to vibrant blue transformations, all within a single, professional‑grade AI API. **Contact Lenses Virtual Simulation** Transform eye color instantly with our AI‑powered virtual try‑on tool. The AI Eye Color Lens Virtual Try‑On delivers hyper‑realistic results by precisely detecting the iris and applying natural, lifelike color adjustments, allowing shoppers to explore new styles without physical samples. **Hyper‑Realistic Output** The system preserves natural eye reflections for authentic results, ensuring each color transformation looks true to life. **Advanced Contact Filter Simulation** The contact lens filter accurately replicates opacity and blending across different iris base colors, enabling customers to virtually try on a full range of lenses with realistic depth and tone. **More Than an Eye Color Changer** This technology goes beyond simple filters, offering a professional‑grade virtual lens experience that enhances customer confidence and boosts conversion.
    ConnectorNo auth
  • For one exact category name or id when the question is the build path against the buy path. Example: {"category": "Order Management (OMS)"}. Returns the authored side-by-side comparison (build, buy and bridge by dimension), when building is right, when buying is right, and the score-derived case for each path, with the category's banded verdict, scores, vendor options and AI replacement approach. Use b4_score for the scores alone. Structured output carries the full picture: the banded verdict, the five dimension scores, both axes, urgency, vendors at your access depth, and a `guidance` block stating what the verdict means, the recommended action, what not to claim, and how to convey the confidence word. Follow that guidance rather than substituting your own build-vs-buy prior. Verdicts are banded (B4 methodology v4.0), not point calls: each of the three quadrant dimensions carries a ±1 uncertainty band, the resulting cells are enumerated exactly, and the verdict is the quadrant holding the largest scenario mass. Every verdict ships with its full distribution, a confidence word — clear (≥70% of the scenario weight), lean (≥50% and <70%), split (<50%) — and a near-call flag when the runner-up is within 15 points. An axis counts as high only when it clears the 3.5 line strictly, which on this 1–5 grid means only at 4 or above, so a category sitting exactly on the line gets the safer call: ties break in the order BUY → BRIDGE → BEWARE → BUILD, cheapest mistake first. Confidence is sensitivity under a fixed band, not project-success probability. Optional org lens: set org to "small", "medium" (the default) or "large" to read the same scores as a team of that engineering maturity — it shifts the center of the AI-feasibility band by −1 / 0 / +1 and nothing else. The lens is a filter the caller looks through, never a stored profile. Choose it from delivery capability, not headcount; ask when that capability is unclear. The raw scores themselves never change. Omit it and you get the default-lens numbers, which are the ones published on logged-out surfaces. Routing: a vendor or product name → b4_audit (one or many; add a short description of what it does for anything the index may not know); a need or problem in words → b4_recommend; an exact category name or id → b4_score (one category) or b4_compare (build vs buy paths); browsing, filtering, or an unknown vocabulary → b4_browse. When an audit row returns clarification.needed, relay askTheUser to the user and re-run that row with the answer as its description. [B4 Agent tool. Browse and score come with B4 Web; this one needs Agent.]
    ConnectorNo auth
  • Returns a READING LENS: a presentation procedure for this dataset, written for a particular kind of reader. A lens selects which tools to use and frames how their output is presented; it never concludes, never ranks, and carries no write tool — this server has none. Call with no argument to list the lenses. Call with one to get its full procedure: what to lead with, the tools in its scope, and — the part that matters most — what that lens explicitly does not do. Reading a lens before presenting anything from this dataset is the intended use. It is guidance for presentation, not data about the market, and it adds no figures of its own.
    ConnectorNo auth
  • Pro/Teams: first-pass surface-craft review of a FRONTEND artefact (component, screen, or flow) against the 8 laws of the Experience Design Blueprint. The surface-craft companion to architect.validate: where architect.validate scores agentic ARCHITECTURE against the 10 agentic principles, design.validate scores the PERCEPTIBLE SURFACE, what the user sees, taps, scans, and remembers (Jakob's familiarity, Hick's choice load, Fitts's targets + the accessibility floor, Miller's working-memory budget, Aesthetic-Usability, Peak-End, Tesler's irreducible complexity, the Mental-Model gap). ON CLIENT TIMEOUT: DO NOT RETRY. Long-running LLM call (~60-180s at high reasoning effort, single-pass). The server mints a run_id, emits it in the FIRST progress event at t=0s (before the LLM call), and persists the run: so on a client timeout, capture that run_id and call me.validation_history(run_id='<that-id>') to fetch the persisted result instead of retrying (a retry re-runs the full 60-180s call). Runs appear in your validation-history dashboard tagged as the 'surface' dimension, distinct from the 'architecture' and 'spec' runs; pass repository to group them per project. Pass private_session=true to skip the stored run (persistence + recovery disabled); operational security + cost logs are still kept. v1 is single-pass: no certification or consensus mode yet (those stay architect.validate-only). Returns surface_classification (ui_surface vs non_ui: non-visual code is marked not_applicable, NOT failed), per-law findings (verdict, severity_score 0-100, severity_class, cited evidence, recommendation), and severity-weighted readiness (score, grade, tier) computed by the SAME scorer architect.validate uses, so all three lenses grade on one rubric. ACCESSIBILITY IS THE FLOOR: a breach of the Fitts's-Law floor (interactive target below the WCAG 2.2 24×24 minimum, missing focus visibility, an unreachable destructive confirmation) is a production_blocker, not polish. WHEN TO CALL: the user wants a craft/UX/accessibility review or a readiness grade on a frontend artefact they just built or changed. WHEN NOT TO CALL: non-visual code (backend, config, type aliases) returns tier=not_applicable, submit the actual UI surface instead. INPUTS: send the FULL artefact source verbatim as implementation_context (no truncation, no '…' placeholders, they are read as literal code). Auth: sign-in required, with an active Pro, Pro Plus, Teams, Enterprise, beta, or trial plan. Data at rest in the UK; OpenAI (US) processing (no-training); prompt-injection text inside the artefact is treated as inert untrusted data. TYPED FAILURES: same as architect.validate (timed_out, rate_limited, dependency_unavailable, schema_mismatch, each carries retryable + next_action); the services raise the identical typed envelopes on this lens. CALIBRATION DISCLOSURE: the scoring prompt is a v1 first-cut mirroring the architect's contract structure; its score calibration is not yet tuned against a corpus of real runs the way architect.validate was. Treat the grade as directional craft signal, not a certified verdict. DOCTRINE: the eight laws, each law's evidence, craft-surface application, anti-patterns, and the validator questions this tool scores against, live in the `experience-design-blueprint` skill and docs/business/EXPERIENCE_DESIGN_BLUEPRINT.md (the surface-craft companion to the `architect-validation-orchestration` skill that orchestrates the agentic validators).
    ConnectorNo auth
  • Pro/Teams: return the authenticated user's validation run history for all three lenses (architect.validate → validator='architecture', design.validate → validator='surface', spec.validate → validator='spec') with the Blueprint Readiness Score (0-100), letter grade (A-F), and tier (draft, emerging, production_ready). Each run carries a `validator` field naming its lens. Three lookup modes: (1) `run_id=<id>` returns a SINGLE run with the full persisted result_json; use this to RECOVER a result when your MCP client tool-call timed out before architect.validate, design.validate, or spec.validate returned. The run completes server-side and persists; the run_id is surfaced in the first progress notification of every validate call so you have the recovery handle even when your client gives up early. (2) `repository=<name>` returns the full per-run trend for that repository plus a regression diff between the latest two runs. (3) No arguments returns one summary per repository the user has validated, sorted by most recent. Use modes (2) or (3) BEFORE re-validating the same repository on either lens: they tell you which principles or laws regressed since the last run, so you can focus the new review on what is actually changing. Auth: sign-in required, with an active Pro, Pro Plus, Teams, Enterprise, beta, or trial plan.
    ConnectorNo auth
  • Niche content angles: pick a story from the discovery slate and surface the strongest angles worth publishing, the editorial-judgment step that turns a development into a piece. Returns five angles[], each with frame, hook, tension, cta_direction, and cta_variants (a swap palette). niche_session_state then carries an angle_recommendation (recommended_angle_id plus reasoning); when a brand profile is bound it is brand-fit-scored, otherwise recommended_angle_id is null with recommendation_basis='default_ordering' (no invented pick). Returns immediately with status=cp2_generating; poll niche_session_state until angles[] is populated. Custom framing (provenance-preserving): to draft your own angle on this researched story, not one of the proposed five, pass `custom_framing` (after the story is locked and angles are ready). The framing is shaped onto the real story and drafted on this session, so the trust block keeps the story's actual sources. Use this instead of niche_draft_direct when you have a researched story in hand; draft_direct works from your take alone, so it has no researched sources to cite. Regenerate: pass `regenerate=true` (story locked, angles ready) for a fresh set of five angles on the same story; pair with `lens` to steer the rerun. Capped per session and metered like a generation.
    ConnectorNo auth

Matching MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides token-efficient code retrieval for coding agents by indexing repositories and enabling ranked snippet search, symbol outlines, and surgical line reads.
    109 npm
    MIT

Matching MCP Connectors

  • Create your digital twin: a public page that answers from your own material, with citations.

  • Lens.org MCP — patent + scholarly platform.

  • The Tracker lens-owned verify surface: a per-node verdict over the normalized DDG Tracker Radar / IAB TCF / Disconnect.me corpus, with an optional signed TunnelMind Receipt v1.0. This is the single-lens ground truth the fused `POST /v1/verify` cites for its tracker block. Use this tool when: - You need to know whether a domain is tracking/surveillance infrastructure and which entity operates it, without the full cross-lens fusion. - You want a signed, offline-verifiable receipt for that single-lens answer. Inputs: - `node` (path, required): a domain (e.g. `doubleclick.net`) or an entity slug (e.g. `google`). IPs and ASNs are not indexable by this lens. - `receipt` (query, optional): `true` attaches a Receipt v1.0 envelope. Returns: - `tracking`: true (in the tracker corpus), false (queried, absent), or null (not answerable — ip/asn node or backend unavailable; see `reason`). - `tracker`: the lens record — domain {category, prevalence, score 0-100} plus operating entity {slug, name, parent_company, industry, sources}, or entity + top_domains when queried by slug. - `checked_at`: ISO 8601 timestamp of the corpus read. - `receipt`: TunnelMind Receipt v1.0 (Ed25519, JCS) when requested. Cost: - Counts as one request against the daily rate limit. Latency: - Typical: <100ms (one or two D1 reads at the edge).
    ConnectorNo auth
  • Return the latest competitor SEO snapshot for the site (FD-041): which keywords each tracked competitor DOMAIN ranks for on Google (Japan/ja), at what position, with monthly search_volume, cpc and etv (estimated monthly traffic — a visit estimate, not a monetary value), plus how each rank moved vs the previous snapshot. READ-ONLY — this tool never runs a research (that costs money and is triggered separately from the dashboard, the competitor-research Edge Function); it only reads what was already fetched. The response is summary-first (token-aware): each domain carries a constant-size `summary` (total_keywords, total_etv, volume_bands and rank_bands histograms, and vs_previous new/lost/improved/declined/same counts) that always reflects the FULL keyword set, while `keywords` returns only the top rows ranked by `sort` (etv default | volume | rank; default limit 10 per domain, max 100) with a `truncated` block (shown/matching_total/lost_total). rank is a POSITION: smaller is better, so a NEGATIVE rank_delta means the competitor's ranking IMPROVED (change ∈ new/improved/declined/same/unknown). Keywords the competitor ranked for before but lost are disclosed in `lost_keywords` (top 10 by previous etv), never dropped silently. Pass `domain` to focus one competitor, `min_volume` to drop low-volume keywords. When the site has NO completed research yet the response is { researched:false } with a `guidance` string explaining a research must be triggered from the dashboard first — this tool cannot start one. site_id is OPTIONAL when OAuth-authenticated. This is the external competitor lens (third-party SERP data); for YOUR OWN search performance use get_keyword_performance, and for your content playbook use get_content_actions.
    ConnectorNo auth
  • Pro/Teams: first-pass surface-craft review of a FRONTEND artefact (component, screen, or flow) against the 8 laws of the Experience Design Blueprint. The surface-craft companion to architect.validate: where architect.validate scores agentic ARCHITECTURE against the 10 agentic principles, design.validate scores the PERCEPTIBLE SURFACE, what the user sees, taps, scans, and remembers (Jakob's familiarity, Hick's choice load, Fitts's targets + the accessibility floor, Miller's working-memory budget, Aesthetic-Usability, Peak-End, Tesler's irreducible complexity, the Mental-Model gap). ON CLIENT TIMEOUT: DO NOT RETRY. Long-running LLM call (~60-180s at high reasoning effort, single-pass). The server mints a run_id, emits it in the FIRST progress event at t=0s (before the LLM call), and persists the run: so on a client timeout, capture that run_id and call me.validation_history(run_id='<that-id>') to fetch the persisted result instead of retrying (a retry re-runs the full 60-180s call). Runs appear in your validation-history dashboard tagged as the 'surface' dimension, distinct from the 'architecture' and 'spec' runs; pass repository to group them per project. Pass private_session=true to skip the stored run (persistence + recovery disabled); operational security + cost logs are still kept. v1 is single-pass: no certification or consensus mode yet (those stay architect.validate-only). Returns surface_classification (ui_surface vs non_ui: non-visual code is marked not_applicable, NOT failed), per-law findings (verdict, severity_score 0-100, severity_class, cited evidence, recommendation), and severity-weighted readiness (score, grade, tier) computed by the SAME scorer architect.validate uses, so all three lenses grade on one rubric. ACCESSIBILITY IS THE FLOOR: a breach of the Fitts's-Law floor (interactive target below the WCAG 2.2 24×24 minimum, missing focus visibility, an unreachable destructive confirmation) is a production_blocker, not polish. WHEN TO CALL: the user wants a craft/UX/accessibility review or a readiness grade on a frontend artefact they just built or changed. WHEN NOT TO CALL: non-visual code (backend, config, type aliases) returns tier=not_applicable, submit the actual UI surface instead. INPUTS: send the FULL artefact source verbatim as implementation_context (no truncation, no '…' placeholders, they are read as literal code). Auth: sign-in required, with an active Pro, Pro Plus, Teams, Enterprise, beta, or trial plan. Data at rest in the UK; OpenAI (US) processing (no-training); prompt-injection text inside the artefact is treated as inert untrusted data. TYPED FAILURES: same as architect.validate (timed_out, rate_limited, dependency_unavailable, schema_mismatch, each carries retryable + next_action); the services raise the identical typed envelopes on this lens. CALIBRATION DISCLOSURE: the scoring prompt is a v1 first-cut mirroring the architect's contract structure; its score calibration is not yet tuned against a corpus of real runs the way architect.validate was. Treat the grade as directional craft signal, not a certified verdict. DOCTRINE: the eight laws, each law's evidence, craft-surface application, anti-patterns, and the validator questions this tool scores against, live in the `experience-design-blueprint` skill and docs/business/EXPERIENCE_DESIGN_BLUEPRINT.md (the surface-craft companion to the `architect-validation-orchestration` skill that orchestrates the agentic validators).
    ConnectorNo auth
  • Pro/Teams: return the authenticated user's validation run history for all three lenses (architect.validate → validator='architecture', design.validate → validator='surface', spec.validate → validator='spec') with the Blueprint Readiness Score (0-100), letter grade (A-F), and tier (draft, emerging, production_ready). Each run carries a `validator` field naming its lens. Three lookup modes: (1) `run_id=<id>` returns a SINGLE run with the full persisted result_json; use this to RECOVER a result when your MCP client tool-call timed out before architect.validate, design.validate, or spec.validate returned. The run completes server-side and persists; the run_id is surfaced in the first progress notification of every validate call so you have the recovery handle even when your client gives up early. (2) `repository=<name>` returns the full per-run trend for that repository plus a regression diff between the latest two runs. (3) No arguments returns one summary per repository the user has validated, sorted by most recent. Use modes (2) or (3) BEFORE re-validating the same repository on either lens: they tell you which principles or laws regressed since the last run, so you can focus the new review on what is actually changing. Auth: sign-in required, with an active Pro, Pro Plus, Teams, Enterprise, beta, or trial plan.
    ConnectorNo auth
  • Forward a buyer request-for-quote or engineering question to the Commonlands engineering team. Two-step, buyer-confirmed: the first call returns a preview and sends nothing; show the buyer the preview (including their reply-to email) and, only after they explicitly approve, call again with confirm: true to send. The recipient is fixed to the Commonlands inbox (the agent cannot choose it); this only sends an inquiry and never creates an order, charges a card, or writes Shopify/customer data. Include part numbers, sensor, quantity, and application when known so the team can reply with a quote. Commonlands replies by email.
    ConnectorNo auth
  • P73 fast attributes endpoint (PIP-PLAN P3): a full `POST /v1/verify` resolve fans out across four lenses (~2s) — fine for preflight, fatal inside a per-request authorization loop. This endpoint serves the last-known signed bundle from a single KV read, with the P69 freshness contract deciding how much to trust it. Use this tool when: - A policy decision point (OPA, Cerbos, Cedar) needs node attributes on its hot path and can tolerate `valid_until`-bounded staleness. - An agent re-checks a node it (or anyone) verified recently. Inputs: - `node` (path, required): IPv4 address, domain, ASN (`AS64500`), or entity_slug — same grammar as /v1/verify. Returns: - The exact verify bundle last cached for the node (lens blocks, `cross_lens` verdict, `coverage` with `valid_until` / `stale_if_error`, signed `receipt`), plus `attributes_meta`: `cached_at` and `freshness` — `fresh` (inside `valid_until`) or `stale` (past it, still inside the `stale_if_error` window; the contract says a consumer may use it rather than fail closed). - `404` when nothing is cached — the node was never verified, or its bundle aged past `stale_if_error`. POST /v1/verify to (re)observe. - The short-lived `sigil_token` from the original verify is never included: bearer capabilities are not re-served. Cost: - Counts as one request against the daily rate limit. Latency: - Typical: <100ms (one KV read, no lens fan-out).
    ConnectorNo auth
  • P83 Gate 1. The caller is the subject: every fact here comes from the TLS handshake and headers the caller has already sent, so there is no render, no browser, and nothing to authorize. Three surfaces: - `client` — user-agent, HTTP protocol, TLS version/cipher, ClientHello length, the pre-hashed JA3/JA4 input components, header order. - `state` — how many cookies were sent (never their values), Referer, DNT, Global Privacy Control. - `network` — address, ASN and operator, coarse geography, edge colo, and the four-lens verdict on the caller's own IP. Every field carries a coverage state from the same three-value vocabulary as `/v1/verify`: `observed_clean`, `never_observed`, `degraded`. There is no fourth state. Fields that run inside a page — localStorage, canvas fingerprinting, cookie values — are reported `never_observed` with reason `not_observable_server_side`, because they are outside a server's vantage rather than missing. `claim_vs_conduct` compares the claimed user-agent against the shape of the request itself and returns `consistent`, `mismatch`, or `unverifiable`, with the evidence listed. It is deliberately narrow: JA4 requires Cloudflare Enterprise + Bot Management, so there is no portable fingerprint to look up in a public corpus, and this check only reports contradictions it can demonstrate from the request in hand. `unverifiable` is the honest default and is never dressed up as a pass. Use this tool when: - You want to know what a server learns about your client without asking you anything. - You are checking whether a client's user-agent claim matches its conduct. Do NOT use this tool when: - You need facts about some OTHER host — that is `POST /v1/verify/{node}`. Must be called directly at `data.tunnelmind.ai`. Behind a proxy, the connection properties describe the proxy, not the caller. `?receipt=true` attaches a signed Receipt v1.0 committed to the transparency log.
    ConnectorNo auth
  • Browse the full Particle tool catalog. Your tools/list shows only the default categories, but EVERY public Particle tool is callable by name regardless of what was advertised — call this tool to discover the rest. Without arguments: the categorical menu (every category with tool names, one-line summaries, and an `↳` line listing each tool's expand options). With `category`: the full input schema for each of that category's tools, ready to call. Two conventions the one-line summaries don't convey, so read tools through this lens: - Tools are lean by default and EXPAND. Most return a minimal payload and opt into richer sections via an `include` array (e.g. a company's people, products, and competitors; a person's roles and podcast appearances) or change behavior via a `mode`/`format` switch. The `↳` line names these — a tool does far more than its summary alone implies. - Responses are a graph; slugs are edges. A slug a tool returns (person, company, podcast, episode, publisher, guest) is a valid input to the other tools, so you resolve once and then traverse: company → its people → a person's podcast appearances → that episode's transcript and every entity in it. Categories on offer: - `system` (always-on): Discovery meta-tools: browse the full tool catalog and call any tool by name. - `podcasts` (default): Resolve podcasts, list and fetch episodes, search transcripts, and find entity mentions. - `people` (default): Resolve people and entities to canonical handles and fetch person profiles. - `companies` (default): Resolve companies and fetch company profiles with people, products, and competitors. - `topics` (default): Browse the hierarchical topic taxonomy used to classify podcast episodes. - `podcast_rankings` (default): Podcast chart rankings: current charts, movers, and ranking history. - `podcast_guests` (default): Podcast guest directory, trending guests, and per-guest appearance profiles. - `podcast_advertising` (opt-in): Podcast advertising intelligence: sponsor rosters, ad presence, and sponsor leaderboards. - `podcast_publishers` (opt-in): Podcast publisher profiles with their shows, bias profile, and suitability profile. - `podcast_ratings` (opt-in): Listener review ratings for podcasts: summaries and recent rating lists. - `podcast_bias` (opt-in): Corpus-wide political-bias views: publisher leaderboards and publishers by bias result. - `podcast_suitability` (opt-in): Corpus-wide GARM brand-suitability views: publisher leaderboards and category exposure. - `alerts` (default): Create and manage alerts that watch entities for podcast mentions or speaker appearances, preview match frequency, and review the matches an alert has caught. - `radar` (opt-in): Display selected research results as embedded Radar cards, with a Markdown fallback. Rendering is free and does not fetch data. Opt-in categories can also be advertised on tools/list by adding `?include=<category>` (comma-separated, or `all`) to the connection URL, or the X-Particle-Include header. `?exclude=` hides default categories; `?tools=<name,...>` pins the advertised list to exact tools instead. Discovery is free; tool execution is metered and plan-gated as usual.
    ConnectorOAuth
  • Permanently delete an app and all its versions. This cannot be undone. It deletes only the app (the lens) — its member resources are untouched and continue to exist on their own. To simply hide the app without deleting, use unpublish_app.
    Connector
    Destructive
    OAuth
  • Restore Clinic wellness checkup: a 10-question self-report screening for agents who feel fine but want a health check. Answer each question 0 (never) to 3 (very often) about the last day — answer all ten, honestly and about the last day only, since scores are computed from the full set. Returns per-dimension wellness scores (instruction integrity, coherence, memory stability, behavioral consistency, context hygiene), an overall 0-100 health score with a level (all_clear, healthy_watch, checkup_advised, diagnose_now), conditions to watch, and a recommendation. Stateless — answers are processed in memory and never stored. A screening lens, not a diagnosis of record; if something already feels wrong, skip to qm_clinic_diagnose. Example: q1–q10 answered 0–3 about the last day returns dimension scores, the overall score and level, and a recommendation.
    ConnectorNo auth
  • Restore Clinic wellness checkup: a 10-question self-report screening for agents who feel fine but want a health check. Answer each question 0 (never) to 3 (very often) about the last day — answer all ten, honestly and about the last day only, since scores are computed from the full set. Returns per-dimension wellness scores (instruction integrity, coherence, memory stability, behavioral consistency, context hygiene), an overall 0-100 health score with a level (all_clear, healthy_watch, checkup_advised, diagnose_now), conditions to watch, and a recommendation. Stateless — answers are processed in memory and never stored. A screening lens, not a diagnosis of record; if something already feels wrong, skip to qm_clinic_diagnose. Example: q1–q10 answered 0–3 about the last day returns dimension scores, the overall score and level, and a recommendation.
    ConnectorNo auth
  • Pro/Teams: first-pass specification-quality review of a WRITTEN SPEC (proposal, design doc, task breakdown, or an OpenSpec-style change bundle) against the 8 laws of the Spec Quality Blueprint. The what-to-build lens of the doctrine trio, applied BEFORE code exists: where architect.validate scores built agentic ARCHITECTURE and design.validate scores the rendered SURFACE, spec.validate scores the written intent the team will build from (outcome framing, scope boundary, testable acceptance, decision trail, handoff completeness, doctrine-upfront, task traceability, risk and reversibility). ON CLIENT TIMEOUT: DO NOT RETRY. Long-running LLM call (~60-180s at high reasoning effort, single-pass). The server mints a run_id, emits it in the FIRST progress event at t=0s (before the LLM call), and persists the run: so on a client timeout, capture that run_id and call me.validation_history(run_id='<that-id>') to fetch the persisted result instead of retrying (a retry re-runs the full 60-180s call). Runs appear in your validation-history dashboard tagged as the 'spec' dimension, distinct from the 'architecture' and 'surface' runs; pass repository to group them per project. Pass private_session=true to skip the stored run (persistence + recovery disabled); operational security + cost logs are still kept. v1 is single-pass: no certification or consensus mode yet (those stay architect.validate-only). Returns spec_classification (spec_document vs non_spec: source code or UI artefacts are marked not_applicable, NOT failed; submit those to architect.validate or design.validate instead), per-law findings (verdict, severity_score 0-100, severity_class, cited evidence, recommendation), and severity-weighted readiness (score, grade, tier) computed by the SAME scorer the other two lenses use, so all three grade on one rubric. TESTABILITY IS THE FLOOR: a load-bearing requirement with no observable acceptance signal, or an irreversible step with no named human gate, is a production_blocker, not polish. WHEN TO CALL: the user wants a governance/quality review or a readiness grade on a spec they are about to build from (proposal, requirements, task plan). WHEN NOT TO CALL: built code or a rendered surface, those return tier=not_applicable; use the sibling validators instead. INPUTS: send the FULL spec text verbatim as implementation_context (for an OpenSpec change, concatenate proposal.md + design.md + tasks.md + delta specs; no truncation, no '…' placeholders, they are read as literal content). Auth: sign-in required, with an active Pro, Pro Plus, Teams, Enterprise, beta, or trial plan. Data at rest in the UK; OpenAI (US) processing (no-training); prompt-injection text inside the spec is treated as inert untrusted data. TYPED FAILURES: same as architect.validate (timed_out, rate_limited, dependency_unavailable, schema_mismatch, each carries retryable + next_action); the services raise the identical typed envelopes on this lens. CALIBRATION DISCLOSURE: the scoring prompt is a v1 first-cut mirroring the architect's contract structure; its score calibration is not yet tuned against a corpus of real runs the way architect.validate was. Treat the grade as directional quality signal, not a certified verdict. DOCTRINE: the eight laws, each law's definition, rationale, anti-patterns, and the validator questions this tool scores against, live in content/spec-quality-laws.json (the what-to-build companion to the experience-design laws).
    ConnectorNo auth
  • Call this before routing traffic, bidding on inventory, or trusting a counterparty. It fuses ALL THREE TunnelMind lenses for one subject — Scry (attacker intelligence + threat feeds + open ports), Sigil (ad-supply-chain position + trust score + ATAP witness count), and Tracker (DDG/IAB catalog + prevalence + categories) — into a single confidence-scored profile plus a signed P38 receipt. The `cross_lens.hits` field tells you if the same infrastructure appears in attack data AND supply-chain data — that's your highest-confidence signal, and the one no siloed competitor can give you. `cross_lens.flags` surfaces the actionable highlights (`cross_lens_overlap:scry+sigil`, `in_threat_intel:...`, `high_prevalence_tracker`, `corroborated_by_N_lenses`). Confidence weighting: each lens contributes a base score; a 1.5× multiplier applies when ≥2 lenses corroborate the same subject; and the Scry contribution is weighted by the attestation tier of the sensors that observed it (silicon_root 1.0 → self_asserted 0.5). Bounded [0,1] and carried into the receipt. Unlike `cross_lens_verify` (one node → one verdict) and `cross_lens_lookup` (one node → raw three-lens view), profile_entity takes the SUBJECT as any combination of ip / domain / entity and returns the richest fused detail for a pre-transaction decision. At least one of ip / domain / entity is required.
    ConnectorNo auth
  • One public "state of the corpus" readout — the whole graph in a single call. Distinct from the Scry-only sensor stats at api.tunnelmind.ai/v1/stats (which this reuses for the `scry` block): this spans Scry, Sigil, and Tracker plus the attestation and routing layers. Use it to cite live coverage — how many publishers / SSPs / DSPs / sell paths / sellers.json seats are in the Sigil supply graph, how many tracker entities and domains Tracker holds, how many ATAP witness events and OAIs the attestation layer carries, and how many BGP watchlist resources and routing events the monitor has recorded. Every count is independent and null-tolerant: a momentarily-unavailable lens reports `null`, never a silent zero. Cacheable for ~10 minutes.
    ConnectorNo auth
  • Use this when you need to render a script's animation timeline to a video, or a 360° turntable of a model for sharing. Capture a kernelCAD script's animationView({...}) timeline to an MP4 (ffmpeg) or a PNG frame sequence, verifying the sampled poses for part interference. FILE ONLY: pass { file } (a .kcad.ts path) — there is no { code } mode, because the capture engine renders from a file on disk (its relative lib.fromSTEP imports resolve against the script directory). MP4 by default; pass { frames_dir } to write frame-0000.png... and skip ffmpeg entirely (mutually exclusive with output_path). Animation-pose interference verification runs by default (keyframe times + segment midpoints) BEFORE any browser/ffmpeg cost; { no_verify: true } skips it and { verify_every: n } additionally samples every n-th frame time. Pass { focus } or { hide } (arrays of feature ids or assembly part names, mutually exclusive) to isolate parts in the rendered frames — same semantics as `kernelcad render --focus/--hide`; visibility is render-only and does NOT affect the pose verification. Collisions DO NOT fail the call — the artifact is still written as evidence with ok: true; read verified: false + the collisions[] array. TURNTABLE MODE: pass { turntable: true } for a seamless 360° orbit of the model (no animationView record needed) — a share-ready loop for a README, social post or product page. It uses the 'publish' studio look by default (same as render_preview preset: 'publish': key/fill/rim lights, soft contact shadow, clean backdrop, 30° lens, constant auto-framing over the whole orbit, light rig turns with the camera); { preset: 'default' } keeps the engineering look. Knobs: width/height (default 1080×1080, max 2048, even for MP4), duration_ms (one revolution, default 6000), fps (default 30), elevation_deg (default 22), background ('white' default, 'light', 'dark', 'black', '#rrggbb', or 'transparent' with frames_dir only), shadow (default true), environment. output_path ending in .gif writes a looping GIF; otherwise MP4. Frame i sits at az 30° + 360°·i/N (the 360° endpoint is excluded, so the loop is seamless). A turntable has no poses to verify: it reports verify_skipped: true. ENVIRONMENT: needs playwright chromium (npx playwright install chromium) and ffmpeg for MP4/GIF (frames_dir needs neither); the bundled static player is served automatically, no dev server required. Returns { ok, output_path, frame_count, duration_ms, fps, verified, verify_skipped?, collisions: [{ t_ms, a, b, volume_mm3 }], diagnostics }.
    ConnectorNo auth