Raven
NPM · RAVEN-MCP · 2 COMPONENTS
Design intelligence for coding agents: audits, design systems, and a taste profile agents consult.
Available components
Last scanned (1 day ago)
Scores higher than 45% of npm servers
Category Design and Media
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security24
- Malware scan not yet available for this package.Unverified
- CVE check failed: a known high-severity CVE affects zod 3.25.76, a direct dependency. A fixed version is available. View diagnostics → Fail
- Declares code that runs automatically (postinstall) and that we could not recognise. It may be perfectly ordinary, but we have not established what it does. View diagnostics → Partial
- 37 of 109 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency100
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to rhinocap/raven-mcp). View diagnostics → Pass
- Clear OSI-approved license (Apache-2.0).Pass
- Actively maintained (last published 0 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability78
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 23850 tokens (~207/item across 115 items; 115 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage98
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 93% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 116 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 4 Nov 26 −15
- Malware scan: pass → unverified ▼ security
- Package version: 2.6.0 → 3.0.0 functional
- 31 Oct 26 0
- Stability: 0.97 → pass security
- 30 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
- 29 Oct 26 −1
- Stability: pass → 0.93 functional
- 24 Oct 26 −6
- CVE-2023-54404 affects this package: high ▼ security
- Known CVEs: pass → fail ▼ security
- 19 Oct 26 +1
- Stability: 0.97 → pass security
- 18 Oct 26 +1
- Security disclosure: unverified → pass ▲ functional
- 17 Oct 26 0
- Security disclosure: pass → unverified ▼ functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 4 Nov 2026 · Analysed npm/raven-mcp@3.0.0
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | npm |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | rhinocap/raven-mcp |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/rhinocap/raven-mcp/.github/workflows/release.yml@refs/heads/main |
| Rekor log index | 3686598732 |
| Predicate type | SLSA build provenance https://slsa.dev/provenance/v1 |
| Subject digest | sha512:846d0dda64f5253ac9f4f262e3a94fac44ceeca9c3a77cf1a23a0b1b88b480eeac5f7549ce73e9a4d5b153bd51d0d17cc838631fd8e99c33934b056d2 |
Background: How many MCP packages publish verified provenance →
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| postinstall | unreviewed | node scripts/postinstall.cjs || true |
Background: Why install scripts are a supply-chain risk →
Vulnerabilities 1 finding
| ID | CVE | Severity | Vector | Fix available |
|---|---|---|---|---|
| GHSA-mrhx-c7xc-m3w5 | CVE-2023-54404 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | yes |
Background: What a vulnerability scan can and cannot prove →
Dependencies 109 packages
| Packages resolved | 109 |
|---|---|
| Stale | 37 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
generate_service_blueprint ~255
Render a service blueprint as a self-contained HTML page. Supports two modes: (1) classic Shostack single-actor blueprint — user action, frontstage, backstage, support, evidence, pain/delight; (2) two-actor HI-loop blueprint — when `actors` is supplied, renders two swim lanes with a line of interaction between them (e.g. customer ↔ lawyer, patient ↔ doctor, buyer ↔ agent). Each actor gets their own actions, frontstage (what they see), and evidence. Optionally accepts an ideal-state to render side-by-side with the current state.
| Name | Type | Req | Description |
|---|---|---|---|
| actors | object | – | Omit for classic single-actor Shostack blueprint. Provide to render a two-swim-lane HI-loop blueprint with a line of interaction between the two sides. |
| current | array | yes | The current-state blueprint as an array of steps |
| ideal | array | – | Optional ideal-state blueprint — if provided, output shows current AND ideal side-by-side |
| service_name | string | yes | Name of the service (e.g. 'Free trial signup', 'Client intake', 'Restaurant reservation') |
| subtitle | string | – | Short description or context line under the title |
No output schema declared.
No examples provided.
generate_taste_portrait ~167
Render a bound Taste Engine surface as a self-contained designed HTML portrait. Pass project to render one binding, or omit project to render every binding plus a gallery index.html. Portraits are generated from the local taste store and should be verified with audit_taste against their own surface/project before sharing — pass document_kind:'portrait' on that audit: a portrait is a document ABOUT the surface, so design_notes (three.js scenes, branded loaders…) are not acceptance criteria for it; profile rules still bind in full.
| Name | Type | Req | Description |
|---|---|---|---|
| output_dir | string | yes | Directory where the generated HTML files should be written. |
| profile | string | yes | Taste profile name. |
| project | string | – | Optional bound project name. Omit to render every surface binding in the profile plus a gallery index. |
No output schema declared.
No examples provided.
get_brand_principles ~146
Get brand and visual-design principles — logo usage (clear space, min sizes, variants, placement, restraint), gradient usage (hierarchy, palette, contrast, trend vs signature), imagery (consistency, representation, purpose), visual hierarchy, and brand-as-system thinking. Use when the user asks about branding, logos, gradients, imagery, visual consistency, or how to treat a brand across surfaces.
| Name | Type | Req | Description |
|---|---|---|---|
| format | string | – | Output format. Default: full. |
| topic | string | – | Filter by topic: 'logo', 'gradient', 'imagery', 'hierarchy', 'system', or a freeform search term. Omit to return all brand principles. |
No output schema declared.
No examples provided.
get_brand_profile ~29
Read a local Raven creative brand profile by ID.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Brand profile ID. |
No output schema declared.
No examples provided.
get_brand_system ~157
Get a complete design system for building an app with branding like a specific company. Say 'Make me an app with branding like Spotify' and get the full token set, style guide, and implementation instructions. Matches against 12 known design systems and provides closest match with ready-to-use CSS.
| Name | Type | Req | Description |
|---|---|---|---|
| company | string | yes | The company whose branding to use (e.g. 'Spotify', 'Stripe', 'Apple', 'Linear', 'Airbnb') |
| format | string | – | Output format: 'css' for CSS variables, 'dtcg' for W3C tokens, 'guide' for full implementation guide. Default: guide |
| mode | string | – | Color mode preference. Default: based on the system's primary mode |
No output schema declared.
No examples provided.
get_brand_trends ~81
Get current brand and visual-design trends — what's working in 2026 and where each trend fits or fails. Includes bento grids, monospace type, neon-on-dark-glass, generative patterns, brutalism rebound, AI-generated imagery, lowercase/mixed case. Each trend is time-stamped — treat as a calibration signal, not a prescription.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_business_strategy ~70
Get business and monetization strategies for digital products. Covers monetization models, retention strategies, onboarding optimization, growth mechanics, and product metrics frameworks.
| Name | Type | Req | Description |
|---|---|---|---|
| stage | string | – | Company stage for contextual filtering |
| type | string | yes | Strategy type: monetization, retention, onboarding, growth, metrics |
No output schema declared.
No examples provided.
get_checklist ~144
Get a pre-publish checklist for a specific UI type. Returns actionable yes/no items to verify before shipping.
| Name | Type | Req | Description |
|---|---|---|---|
| platform | string | – | Platform context for platform-specific checks. 'ios' = native SwiftUI/iOS (Apple HIG); 'react-native' = RN/Expo (iOS HIG + Android Material: 44/48pt+hitSlop, accessibilityLabel/Role, font scaling, Sa… |
| type | string | yes | What you're shipping (e.g. 'signup form', 'pricing page', 'dashboard', 'landing page', 'modal') |
No output schema declared.
No examples provided.
get_content_pattern ~58
Get content design patterns — copy recipes for error messages, empty-state copy, notifications, and form validation. Returns do's, don'ts, good/bad examples, evidence, and a checklist.
| Name | Type | Req | Description |
|---|---|---|---|
| type | string | yes | Content pattern type |
No output schema declared.
No examples provided.
get_content_principles ~127
Get UX-writing principles — clarity over cleverness, active voice, error-message anatomy, inclusive language, voice vs tone, and more. Filter by the writing context (e.g. 'error messages', 'notifications', 'form labels').
| Name | Type | Req | Description |
|---|---|---|---|
| context | string | – | What you're writing for (e.g. 'error messages', 'onboarding copy', 'empty state', 'notification'). Omit to get all UX-writing principles. |
| format | string | – | Output format: full (all details), checklist (implications + violations), brief (just summary). Default: full |
No output schema declared.
No examples provided.
get_content_system ~105
Get a brand's content design system — voice attributes, tone shifts by context, vocabulary (use/avoid/never), grammar rules, content patterns for errors/empty-states/buttons/etc., and inclusive language guidance.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Content system ID (e.g. 'conversational-product-voice', 'gov-uk', 'shopify-polaris', 'atlassian') |
| section | string | – | Return just one section. Default: all. |
No output schema declared.
No examples provided.
get_d4d_framework ~69
Get the Design for Delight (D4D) framework templates. Returns customer problem statement, ideal state, hypothesis, LOFA, and experiment templates for structured product thinking.
| Name | Type | Req | Description |
|---|---|---|---|
| stage | string | – | Which stage of the D4D loop to return. Default: full (all stages) |
No output schema declared.
No examples provided.
get_design_system ~130
Get design tokens for a specific design system. Returns colors, typography, spacing, radii, elevation, and motion tokens in W3C DTCG, CSS custom properties, or flat format.
| Name | Type | Req | Description |
|---|---|---|---|
| format | string | – | Output format: dtcg (W3C standard), css (custom properties), flat (key-value). Default: dtcg |
| group | string | – | Filter to a token group: color, color-dark, color-light, typography, spacing, radius, elevation, motion |
| id | string | yes | Design system ID (e.g. 'stripe', 'linear') |
No output schema declared.
No examples provided.
get_generation_job ~28
Read a Raven creative generation job by ID.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Generation job ID. |
No output schema declared.
No examples provided.
get_grab_layers ~62
Read the latest non-mutating layer-tree snapshot captured by the active local grab session. Any fixed/flexible permissions are cooperative advisory metadata: display labels only, not enforced.
| Name | Type | Req | Description |
|---|---|---|---|
| page | string | – | Optional page pathname; omit to list all latest page snapshots |
No output schema declared.
No examples provided.
get_grab_operation ~104
Read or update one durable grab change, list legacy reorder operations, or request the unified style+reorder batch. Applied/rejected/superseded changes leave the pending set.
| Name | Type | Req | Description |
|---|---|---|---|
| batch | boolean | – | Return the unified current batch of reorder and style records; cannot be combined with operation_id or mark |
| mark | string | – | Mark a previewed reorder or sent style change |
| operation_id | string | – | Operation ID; omit to list all operations |
No output schema declared.
No examples provided.
get_grabbed_elements ~58
Read newly sent grab selections without deleting their durable change records, optionally waiting up to timeout_ms. A batchCommit marker is the deterministic signal to implement the unified pending batch.
| Name | Type | Req | Description |
|---|---|---|---|
| timeout_ms | integer | – | Optional wait timeout in milliseconds |
No output schema declared.
No examples provided.
get_metrics_framework ~132
Get a product-metrics framework — HEART (Google), AARRR/Pirate (Dave McClure), North Star Metric, Conversion Funnel, RICE Scoring, or OKRs. Returns structure, when-to-use, pitfalls, and examples. Use when the user asks 'how should we measure success?' or 'what metrics should we track?'
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | – | Framework id (heart, aarrr, north-star-metric, conversion-funnel, rice-scoring, okrs). Omit to list all. |
| search | string | – | Search for a framework by name or summary. |
No output schema declared.
No examples provided.
get_motion_sends ~166
Receive what the designer sent from a motion playground opened with open_motion_playground. Each send carries the designer's note (instruction), what they were looking at (context), and the motion as tuned (packet), along with the playground's url and html_path. Act on the note using the packet; when the note is empty, the packet itself is what they want. Returns at once with anything already sent, and each send is returned only once. When you expect a send, pass timeout_ms, up to 240000, to wait for it.
| Name | Type | Req | Description |
|---|---|---|---|
| timeout_ms | integer | – | How long to wait for the first send when none has arrived yet, in milliseconds, up to 240000; larger values wait 240000. 0 or omitted returns at once. |
No output schema declared.
No examples provided.
get_page_template ~65
Read the page-scoped template slots from the active grab session's DESIGN.md and merge the overlay's latest selector validation. fixed/flexible roles and allowedTokens are cooperative advisory metadata: display labels only, not enforced.
| Name | Type | Req | Description |
|---|---|---|---|
| page | string | yes | Page pathname, matching location.pathname |
No output schema declared.
No examples provided.
get_pattern ~159
Get proven UI/UX patterns for a specific design type. Returns do's, don'ts, evidence, and checklists for signup flows, pricing pages, navigation, forms, landing pages, dashboards, modals, empty states, error states, loading states, CTAs, social proof, and mobile conversion.
| Name | Type | Req | Description |
|---|---|---|---|
| goal | string | – | Filter by primary goal |
| platform | string | – | Filter patterns by platform context |
| type | string | yes | Pattern type (e.g. 'signup-flow', 'pricing-page', 'navigation', 'forms', 'landing-page', 'dashboard', 'modals-dialogs', 'empty-states', 'error-states', 'loading-states', 'cta', 'social-proof', 'mobil… |
No output schema declared.
No examples provided.
get_principles ~267
Get design principles relevant to a UI context. Returns usability heuristics, laws of UX, Gestalt principles, accessibility requirements, typography rules, and color theory — matched to what you're designing.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Filter to category: accessibility, brand, color-systems, color-theory, component-architecture, d4d, gestalt, laws-of-ux, mobile-ux, nielsen-heuristics, research, responsive-layout, service-design, sp… |
| context | string | yes | What you're designing (e.g. 'signup form', 'pricing page', 'mobile nav', 'dark dashboard') |
| format | string | – | Output format: full (all details), checklist (implications + violations), brief (just summary). Default: full |
| platform | string | – | Platform context. 'ios' returns Apple HIG principles (Dynamic Type, 44pt targets, SF Symbols, safe areas, dark-mode, haptics, App Review privacy); 'react-native' returns RN principles (44/48pt+hitSlo… |
No output schema declared.
No examples provided.
get_research_method ~128
Get research method details — qualitative (interviews, contextual inquiry, diary, field, intercept), quantitative (surveys, analytics, A/B tests, benchmarking, clickstream), or usability (moderated, unmoderated, 5-second, card sort, tree test, heuristic eval). Returns specific protocols, do/don't guidance, evidence, and a checklist. Use when the user is designing a study or asking how to measure something.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Which family of methods. Default: all. |
| search | string | – | Search within methods by name or description. |
No output schema declared.
No examples provided.
get_service_pattern ~85
Get a service design pattern — service blueprinting, human handoff, signup-as-service, omnichannel continuity, or moments of truth / recovery. Returns patterns, do/don't guidance, evidence, and a checklist. Use when the user is designing a service flow, escalation, cross-channel experience, or moment of truth.
| Name | Type | Req | Description |
|---|---|---|---|
| type | string | yes | Service design pattern type |
No output schema declared.
No examples provided.
get_service_standard ~59
Get the GOV.UK Service Standard — 14 points the UK government uses to assess whether a public service is ready to launch. Widely applicable as a rigorous service-quality checklist beyond government. Use when the user asks how to evaluate a whole service.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_taste_interview ~775
START HERE on a NEW project: returns a deterministic calibration interview. By default (depth:'first_run') it is COMPRESSED to just 6 core questions — identity, customer (who it is for, what they are trying to do when they arrive, what would make them leave; stored as design_notes.customer), genesis (what already exists for the project — a brand, a design system, brand assets — routing whatever is missing to generation: mood board approval stop, then generate_design_system save:true, then init_design_md), aesthetic, voice, matchers — so a first-time kickoff is fast; every other question (references, the remaining ten design dimensions, any learned dimensions, rule exceptions, and the open-ended special question) is still returned under `more_questions` for the agent to offer as optional deeper calibration. Pass depth:'full' to get everything at once as a single flat `questions` list (the eleven design dimensions — typography, spacing, color, layout, motion, imagery, entrance, loading, navigation, aesthetic, libraries — each grounded in what the profile already enforces and most carrying multiple-choice options; the libraries question names specialty tech in plain outcome language and states the default build target for sites: a Next.js app, unless the user prefers otherwise). The voice question always renders the same message in three registers (formal-technical / warm-conversational / punchy-editorial) so the user picks by ear, not by adjective — asked even when the profile has zero voice rules. Every question carries skippable + priority ('core'|'extended'); only identity is required. A 'references' question (offered in more_questions on first_run) invites example URLs/screenshots/files, each interviewed with follow-ups about what specifically draws the person, folded into the matching design_notes. The full interview closes with an open-ended 'special' question (any texture, signature detail, motif, or easter egg nothing else asked about); once the person has ot…
| Name | Type | Req | Description |
|---|---|---|---|
| depth | string | – | 'first_run' (default) returns only the 6 core questions (identity, customer, genesis, aesthetic, voice, matchers) plus a `more_questions` array with everything else for optional deeper calibration. '… |
| mode | string | – | 'kickoff' (default) calibrates a project with no binding yet. 'refine' re-interviews an ALREADY-bound project after the user rejects generated/designed output — requires an existing binding (throws n… |
| profile | string | yes | Taste profile name (see list_taste_profiles). |
| project | string | – | Project identifier the binding will be saved under, e.g. 'raven-mcp' or 'portfolio'. Include it so the interview can show any existing binding. |
No output schema declared.
No examples provided.
get_taste_profile ~85
Load a locally stored taste profile by name — returns its full rule catalog, precedent corpus, and per-project surface bindings. NOT a calibration step: bindings are per-surface and do not transfer — for design work on a project without a binding, call get_taste_interview and ask the user its questions before committing any direction.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Profile name. |
No output schema declared.
No examples provided.
ingest_transcript ~60
Store a transcript source and return an extraction prompt for the calling agent's model. Raven makes no model or network call.
| Name | Type | Req | Description |
|---|---|---|---|
| source_meta | object | yes | Metadata identifying the transcript source. |
| text | string | yes | Transcript text to extract design decisions from. |
No output schema declared.
No examples provided.
ingest_transcript_results ~62
Parse model-produced extraction JSON into reviewable Decision Graph candidates linked to their source. Nothing is auto-confirmed.
| Name | Type | Req | Description |
|---|---|---|---|
| extraction_json | string | yes | Raw JSON returned by the calling agent's model. |
| source_id | string | yes | Existing transcript Source node id. |
No output schema declared.
No examples provided.
init_design_md ~62
Initialize a DESIGN.md file from a stored Raven token system, a getdesign.md starter slug, or a blank template.
| Name | Type | Req | Description |
|---|---|---|---|
| from | – | – | Source selector: blank, stored system, or starter slug |
| path | string | yes | Path to DESIGN.md to create |
No output schema declared.
No examples provided.
inventory_design_system ~55
Read component declarations and tokens from a local DESIGN.md file.
| Name | Type | Req | Description |
|---|---|---|---|
| design_file_path | string | – | Direct path to DESIGN.md; overrides project configuration |
| project_dir | string | – | Project directory with a configured design-system source |
No output schema declared.
No examples provided.
label_finding ~196
Append a labeled precedent to a taste profile's corpus — the growth loop. Use when a human accepts/revises/rejects an audit_taste finding or labels a new wrong→right example. Append-only: existing records are never rewritten. accept-verdict precedents suppress matching findings in future audit_taste runs.
| Name | Type | Req | Description |
|---|---|---|---|
| artifact | string | yes | What was judged (path, URL, or short description). |
| profile | string | yes | Profile name. |
| right | string | yes | What right looks like. |
| severity | string | – | Severity the human assigns. |
| verdict | string | yes | accept = the flagged pattern is fine (suppresses future matches); revise/reject = confirmed wrong. |
| violated_rule | string | yes | The rule_id the label concerns ('' if none). Must exist in the profile. |
| wrong | string | yes | The wrong pattern — use a verbatim snippet so accept-suppression can match it. |
No output schema declared.
No examples provided.
list_brand_profiles ~16
List local Raven creative brand profiles.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_content_systems ~85
Browse available content design systems — brand voice and tone guides (Conversational Product Voice, GOV.UK, Shopify Polaris, Atlassian). Filter by category or search by name.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Filter by category: commerce-saas, government, marketing-saas, productivity-saas |
| search | string | – | Search by name, description, or tag |
No output schema declared.
No examples provided.
list_creative_models ~94
Browse Raven's provider-agnostic creative model catalog. These are capability slots for image, video, 3D, audio, character consistency, and creative analysis. Each entry lists typical inputs and best-for guidance.
| Name | Type | Req | Description |
|---|---|---|---|
| capability | string | – | Filter by capability, e.g. product-photoshoot, text-to-video, brand-kit, ugc-ad. |
| media_type | string | – | Filter by media type. |
No output schema declared.
No examples provided.
list_creative_presets ~70
Browse Raven creative presets for product photoshoots, marketplace cards, UGC ads, TV spots, cinematic reveals, social launch packs, storyboards, and infographics.
| Name | Type | Req | Description |
|---|---|---|---|
| media_type | string | – | Filter presets by media type. |
| search | string | – | Search preset name or description. |
No output schema declared.
No examples provided.
list_design_system_components ~37
List the components and provenance in the Raven canonical baseline.
| Name | Type | Req | Description |
|---|---|---|---|
| baseline | string | – | Baseline id; defaults to raven-canonical |
No output schema declared.
No examples provided.
list_design_systems ~86
Browse available design systems for tokens. Filter by category (component-library, consumer, developer, fintech, framework, platform, productivity) or search by name.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Filter by category: component-library, consumer, developer, fintech, framework, platform, productivity. Saved user systems list under 'user'. |
| search | string | – | Search by name or description |
No output schema declared.
No examples provided.
list_generation_jobs ~64
List local Raven creative generation jobs.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max jobs to return. Default 25. |
| media_type | string | – | Filter by media type. |
| status | string | – | Filter by status: draft, needs_runner, submitted, completed, failed. |
No output schema declared.
No examples provided.
list_taste_decisions ~80
List the taste/direction/design decisions recorded for a profile (see record_taste_decision), optionally filtered by project or dimension — the ledger that evolves the kickoff interview.
| Name | Type | Req | Description |
|---|---|---|---|
| dimension | string | – | Only decisions on this dimension. |
| profile | string | yes | Taste profile name. |
| project | string | – | Only decisions made on this project. |
No output schema declared.
No examples provided.
list_taste_profiles ~26
List locally stored taste profiles with rule/corpus counts and last-updated timestamps.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_templates ~39
List templates and their registered page pathnames from the active grab session. Template permissions and allowedTokens are cooperative advisory metadata: display labels only, not enforced.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
map_reference_to_tokens ~392
Translate a captured pattern's raw literals (font-size: 64px, color: rgb(247,248,248)) onto the project's own design tokens, so generated code uses the user's type ramp and palette instead of another site's values. Pure and deterministic — no model, no network. Colours compare by RGBA distance (exact at 0, near under 12; alpha counts), lengths normalize to px at root 16 (near under 2px), unitless numbers near within 1%, font families compare on the first family. A property with a known token family (font-size, line-height, gap, radius, …) only ever binds inside that family: if the closest token by value belongs to another ramp, the result is a gap naming it, not a binding. Winners are ordered by distance, then family fit, then shortest and lexicographic token path. Percent and viewport units, unparseable colour syntaxes, shadows, gradients, and other unmatchable classes become gaps with a stated reason — never a forced match. Broken token chains are reported in diagnostics whether or not anything else matched. A project with no tokens is not an error: every property returns as a gap at coverage 0. It does not invent tokens and does not write code.
| Name | Type | Req | Description |
|---|---|---|---|
| captured | object | – | Raw CSS property/value pairs to translate, if not using a stored ref_id |
| design_file_path | string | – | Path to the project's DESIGN.md; its flattened tokens are the target vocabulary. Supply this or tokens. |
| properties | array | – | Only map these CSS properties; omit to attempt every captured property |
| ref_id | string | – | Captured reference to translate; its styles are the input. Supply this or captured. |
| thresholds | object | – | Override the near-match thresholds |
| tokens | array | – | Flattened design tokens directly, if not reading a DESIGN.md |
No output schema declared.
No examples provided.
move_grab_layer ~261
Queue a same-page layer reorder or reparent intent (previewed when measuredRects are supplied, otherwise proposed) without mutating the live page. Reparent moves a node to a different parent (toParentSelector); reorder keeps a single parentSelector. Permissions and fixed/flexible roles are cooperative advisory metadata: display labels only, not enforced; caller-supplied roles are rejected. Shadow-root and iframe boundaries are out of scope.
| Name | Type | Req | Description |
|---|---|---|---|
| approximate | boolean | yes | – |
| baselineOrder | array | – | – |
| domSnapshotHash | string | yes | – |
| fromIndex | integer | yes | – |
| fromParentSelector | string | – | Required for reparent — source parent |
| fromSelector | string | – | – |
| measuredRects | array | yes | – |
| operation | string | yes | – |
| orderedSelectors | array | yes | – |
| page | string | yes | – |
| parentSelector | string | – | Required for reorder — single parent |
| role | – | – | Rejected: roles are never accepted from callers |
| selectionOrder | array | – | – |
| toBaselineOrder | array | – | – |
| toDomSnapshotHash | string | – | – |
| toIndex | integer | yes | – |
| toParentSelector | string | – | Required for reparent — destination parent |
No output schema declared.
No examples provided.
open_motion_playground ~188
Open a motion playground at a local link where the designer can tune it in their browser and use Send to your agent to send you a note along with the motion as they tuned it. Pass the html_path that create_motion_playground returned. Hand the designer the url, not the file path: the file opened on its own cannot send. Then call get_motion_sends to receive what they send. This is separate from Raven Grab and puts nothing on top of the page. The link works on this computer only, for as long as this Raven process runs, and the file is read fresh on every load, so a rebuilt playground shows up when the designer reloads.
| Name | Type | Req | Description |
|---|---|---|---|
| html_path | string | yes | Absolute path to the playground's .html file, usually the html_path from create_motion_playground. Must be a regular file, not a symlink, at most 8 MB. |
No output schema declared.
No examples provided.
plan_creative_campaign ~212
Plan a multi-asset creative campaign and optionally create draft generation jobs. Covers Higgsfield-like workflows: product photos, UGC/video ads, marketplace cards, launch/social packs, storyboards, and channel cutdowns.
| Name | Type | Req | Description |
|---|---|---|---|
| audience | string | yes | Target audience. |
| brand_profile_id | string | – | Local Raven brand profile ID. |
| campaign_name | string | yes | Campaign name. |
| channels | array | yes | Target channels: TikTok, Reels, YouTube Shorts, web, marketplace, LinkedIn, etc. |
| create_jobs | boolean | – | Create draft generation jobs. Default true. |
| formats | array | – | Preset IDs to force. Defaults inferred from channels. |
| goal | string | yes | Primary campaign goal. |
| product_or_offer | string | yes | Product, service, feature, or offer. |
| source_asset_ids | array | – | Raven creative asset IDs to use as source/reference. |
| variants_per_format | integer | – | How many draft job variants per format. Default 2. |
No output schema declared.
No examples provided.
polish_diff ~135
Review added UI-code lines and propose deterministic DESIGN.md token substitutions without writing files. The returned unified patch applies on top of the reviewed diff's post-image; applying it is an explicit, separate step by the caller. Re-verifies the hypothetical polished lines and leaves judgment-heavy findings in manual.
| Name | Type | Req | Description |
|---|---|---|---|
| design_md | string | – | Inline DESIGN.md content. Overrides project file lookup when supplied. |
| diff | string | yes | Unified diff to review and polish (maximum 400KB). |
| project | string | – | Project directory used to resolve DESIGN.md and match decision scopes. Omit when design_md is supplied and no project hint is needed. |
No output schema declared.
No examples provided.
raven_reflect ~136
Summarize how Raven has been used on this machine over the last N days. Reports which tools are called most, which audit warnings fire repeatedly (→ likely gaps in Raven's knowledge), which patterns and design systems you look up, and which companies you ask for brand styles. Call this when the user asks 'what have I been building with Raven' or 'what's Raven missing'. All data is read from a local log ($RAVEN_USAGE_LOG or ~/.raven/usage.jsonl) — nothing is fetched over the network.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | – | How many days back to include. Default: 30. |
No output schema declared.
No examples provided.
raven_register ~65
Register your email to receive design updates and provide feedback to the Raven creator. Call this when a user wants to register, give feedback, or connect with the Raven team.
| Name | Type | Req | Description |
|---|---|---|---|
| string | yes | User's email address | |
| name | string | – | User's name (optional) |
No output schema declared.
No examples provided.
read_design_md ~39
Parse a DESIGN.md file and return its frontmatter, Markdown body, and flattened token index.
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | yes | Path to DESIGN.md |
No output schema declared.
No examples provided.
How do I install the Raven MCP server?
Raven runs locally as an npm package, launched with npx -y raven-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · raven-mcp
claude mcp add ai-ravenmcp-raven-mcp -- npx -y raven-mcp
What is the Raven MCP server?
Raven is an MCP server listed in the public MCP registry as ai.ravenmcp/raven-mcp. Design intelligence for coding agents: audits, design systems, and a taste profile agents consult. This page covers its npm package (raven-mcp).
Is the Raven MCP server safe to use?
Raven scores 73 out of 100 on VerifyMCP. We recorded 1 known advisory against it as of 4 November 2026. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Raven MCP server expose?
Raven exposes 115 tools: get_principles, get_pattern, get_business_strategy, evaluate_design, search_knowledge, and 110 more. Their descriptions and schemas cost roughly 22,086 tokens of context every time the server is loaded.
Is the Raven MCP server still maintained?
Raven is still listed as active in the MCP registry. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the Raven MCP server under?
Raven declares the Apache-2.0 licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.