Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

OODS Foundry

NPM · @OODS/FOUNDRY · 2 COMPONENTS

OODS Foundry is an object-oriented design system that extends the one you already have.

0 this week 79 Trust /100

Last scanned (7 hours ago)

Scores higher than 62% of npm servers

Category Design and Media

Trust breakdown (7 categories)

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 Security100
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • No production dependencies, so there is no dependency health to assess. View diagnostics → Pass
Provenance & Transparency48
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
  • Clear OSI-approved license (Apache-2.0).Pass
  • Actively maintained (last published 3 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability76
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 9676 tokens (~182/item across 53 items; 26 tools + 27 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 Management55
  • Stability check failed: the tool surface changed between 0.4.2 and 0.11.3: 8 tool removals, 1 breaking changes, 15 additions. See how to fix → Fail
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 26 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 28 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
Changelog

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.

  • 3 Nov 26 +15
    • Malware scan: unverified → pass ▲ security
  • 2 Nov 26 −15
    • Malware scan: pass → unverified ▼ security
    • Package version: 0.11.2 → 0.11.3 functional
  • 26 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 49 to 52.

  • 24 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 42 to 45.

  • 22 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 35 to 39.

  • 20 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 29 to 32.

  • 18 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 22 to 25.

  • 17 Oct 26 +34
    • Stability: unverified → fail ▼ security
    • Injection markers: unverified → pass ▲ security
    • Schema quality: pass → fail ▼ functional
    • Tool coverage: 94% → 100% ▲ functional
    • Schema quality: 901 → 182 ▲ functional
    • Tool coverage: unverified → 100 ▲ functional
    • MCP protocol: unverified → pass ▲ functional
    • Schema quality: unverified → 100 ▲ functional
    • Schema quality: excellent → good functional
    • Destructive annotations: 100 → pass functional
    • Package version: 0.5.0 → 0.11.2 functional
Diagnostics

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 5 Nov 2026 · Analysed npm/@oods/foundry@0.11.3

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Dependencies 0 packages
Packages resolved 0
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 26 exposed · ~8,788 tokens

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 →

Tool Tokens
artifact_certify ~304

Grade a normalized chart's accessibility equivalence, determinism, contrast and accuracy. Use it when checking the IR returned by viz_render or dashboard_render; use viz_render instead to create chart output and dashboard_render to compose panels. Returns coverage, conformant, findings and four pillar verdicts. Pass spec alone for Cartesian charts; ECharts-primary charts need the same matching data branch used for rendering. Spec-only ECharts remains uncertified. brand/theme must match rendering; high contrast reports forced-colors exemption without a numeric contrast grade. A certified chart may still be nonconformant; inspect all verdicts. This read-only check does not repair charts and never fetches a URL. Full schema: oods://schemas/artifact_certify.input.json.

NameTypeReqDescription
brandstring–CSS brand scope, matching viz_render for the same normalized spec and data operand.
dataobject–Optional operand for the 8 ECharts-primary types (treemap/sunburst/sankey/force_graph/choropleth/bubble_map/flow_map/chord): the same data branch viz_render takes, so certify re-emits the option the…
specobjectyesAn OODS Foundry normalized chart spec: the normalizedSpec that viz_render returns. The handler validates it against the full spec schema.
themestring–CSS token theme for chart pixels, default light. See full schema for details.

No output schema declared.

No examples provided.

brand_apply ~247

Preview or apply changes to an existing brand's canonical token source. Use it when editing a brand; use brand_create to create one. Returns validation, changed slots, before/after hashes and build evidence. delta is required and supports aliases or add/remove/replace patches. apply defaults to a dry run that writes nothing. apply:true validates first, then writes source and rebuilds; build failure leaves source edits in place. For shipped brands in the portable runtime, apply emits a review kit and reports source/build steps as skipped. User brands rebuild in their own folder. Full schema: oods://schemas/brand_apply.input.json.

NameTypeReqDescription
applyboolean–Write on true; otherwise preview.
brandstring–Target brand identifier. Must name a brand directory under packages/tokens/src/tokens/brands.
deltaobject|arrayyesAlias changes (object) or an array using the supported add/remove/replace subset of RFC 6902 when strategy=patch.
previewobject–Preview response controls (apply=false).
strategystring–Alias strategy rewrites token values; patch applies the supported add/remove/replace subset of RFC 6902.

No output schema declared.

No examples provided.

brand_create ~290

Create a brand or stage a local token intake draft. Use it when adding a brand; use brand_read for templates, validation, derivation and draft review, or brand_apply to edit a brand. Returns a staged draft or created brand with build results. apply needs draftId and accept:true. create accepts filled documents or a recipe, validates all themes, refuses replacement and removes a brand whose build fails. Full schema: oods://schemas/brand_create.input.json.

NameTypeReqDescription
acceptboolean–Actions: apply (required).
actionstringyesChoose create, draft, apply.
bindingsobject–Actions: draft.
brand_idstring–The id the brand will have. Actions: create (required), draft (required). See full schema for details.
documentsobject–The filled template: one plain design-token document per theme, brand-relative (surface.canvas, not color.brand.<id>.surface.canvas), each slot {"$type": "color", "$value": "<CSS colour>"}. Actions:…
draftIdstring–Actions: apply (required).
fromobject–Actions: draft.
recipeobject–A brand recipe in place of documents: the brand it gives is checked, and for create written, like filled documents. Actions: create.
sourceobject–Actions: draft (required).

No output schema declared.

No examples provided.

brand_read ~456

Read brand templates, validate documents, derive recipes or inspect staged drafts. Use it when preparing a brand without saving; use brand_create to stage or create it. Returns complete template slots, validation findings, a recipe with provenance and gaps, or draft evidence. derive takes exactly one of tokens, css or absolute cssPath. Template replies use compact JSON so all themes fit inline. Full schema: oods://schemas/brand_read.input.json.

NameTypeReqDescription
actionstringyesChoose template, validate, derive, show.
brand_idstring–The id the brand will have. Checked when given: capitals then digits (ACME, A1) or a letter then lower-case letters and digits (Acme, acme2), at most 32 characters, and no existing brand's id in any…
cssstring–A shadcn theme CSS entry, in place of tokens. Actions: derive. See full schema for details.
cssPathstring–Absolute path to the shadcn theme CSS entry, in place of tokens or css. Read only. Actions: derive.
documentsobject–The filled template: one plain design-token document per theme, brand-relative (surface.canvas, not color.brand.<id>.surface.canvas), each slot {"$type": "color", "$value": "<CSS colour>"}. Actions:…
draftIdstring–Actions: show (required).
fromobject–Where the starting values come from: an existing brand (default A), optionally with one of the shipped presets over it; or a recipe, which gives the complete brand, graded. Actions: template.
hintsobject–Exact dot-separated token paths, or CSS custom property names, that override inference. Invalid hints produce gaps, never silent fallback. Actions: derive.
recipeobject–A brand recipe in place of documents: the brand it gives is checked, and for create written, like filled documents. Actions: validate.
tokensobject–A DTCG document with your own token names. Group $type is inherited; {group.token} aliases resolve inside the document. Actions: derive.

No output schema declared.

No examples provided.

catalog_list ~364

List components from the live component-contract registry. Use it when selecting components; structured_data_fetch returns complete datasets. Returns component names, categories, readiness labels and availableCategories; detail controls added tags, contexts, regions, traits and evidence. includeInternal exposes hidden registry objects. Filtered calls without detail default to full pages of 10; nextPage continues. Explicit detail preserves unpaged output. Readiness evidence retains the build it measured and does not certify a new composition. Full schema: oods://schemas/catalog_list.input.json.

NameTypeReqDescription
categorystring–Filter components by category (e.g., 'core', 'lifecycle', 'visual')
contextstring–Filter components by context (e.g., 'detail', 'list')
detailstring–Defaults to brief unfiltered, full with filters. Both defaults are paged (filtered: 10 entries). summary adds tags, contexts, regions and traits; full includes evidence. Explicit detail without pagin…
includeInternalboolean–Also list OODS Foundry's internal (non-business) objects in registry.objects, after the business objects. Without it they are left out and registry.hiddenInternal counts them.
pageinteger–1-based page index for pagination.
pageSizeinteger–Components per page. Filtered calls without detail default to 10; nextPage gives the next call.
statusstring–Filter by legacy static-HTML status only: 'stable' = mapped HTML renderer; 'planned' = HTML fallback. Consult productReality.surfaces for React/Vue, generated-consumer and maturity evidence.
traitstring–Filter components by trait (e.g., 'Editable', 'Searchable')

No output schema declared.

No examples provided.

code_generate ~287

Generate React/Vue file sets or a standalone static HTML document from a validated UiSchema. Use it when a schema already exists; use design_compose instead to choose a layout or pipeline_run to compose, validate, render and generate together. Returns versioned artifacts, exact dependencies, required domain handlers and validationReceipt. Supply schema or schemaRef before its 30-minute expiry. profile selects draft/build/release; build performs static checks, while release verifies supplied evidence without rerunning it. options.output selects component/application; options.payloadMode:file returns file references, as does oversized output unless inline. Domain actions require consumer handlers. React and Vue shadcn mappings support components, screen apps and workflow apps. Full schema: oods://schemas/code_generate.input.json.

NameTypeReqDescription
frameworkstringyesTarget framework. HTML uses the same record document renderer as repl render; build checks are static and do not execute a browser.
optionsobject–Operation options.
profilestring–Validation profile. See full schema for details.
releaseEvidenceobject–Evidence for release. See full schema for details.
schemaobject–A structurally valid UiSchema tree to generate code from. UiElement.state branches are checked against the canonical workflow-state vocabulary by the state-contract gate.
schemaRefstring–Reference to a cached UiSchema returned by design_compose.

No output schema declared.

No examples provided.

component_map ~580

Write component substitutions or stage an intake draft. Use it when connecting React/Vue exports, shadcn source or built Storybook files; use component_map_read to list, resolve or review drafts. Returns staged evidence or write outcomes. apply with draftId requires accepted ids and writes adapters and mappings atomically. create takes one entry, mappings or mappingsPath; create and report-based apply preview unless apply:true. update and delete always write. Full schema: oods://schemas/component_map.input.json.

NameTypeReqDescription
acceptarray–Actions: apply (required).
actionstringyesChoose apply, create, update, delete, draft.
applyboolean–For apply: When true, persist registry mutations. Defaults to dry-run. For create: When true, write changes to disk. Actions: apply, create.
capabilitiesarray–Capability definitions to append. Actions: create.
confidencestring–'auto' for machine-generated, 'manual' for human-curated. Actions: create.
disambiguation_decisionsarray–Review decisions to append; does not gate creation. Actions: create.
draftIdstring–Actions: apply (required).
externalComponentstring–External component name. Actions: create.
externalSystemstring–External design system name (for example, 'team'). Actions: create, draft.
idstring–Mapping ID. Actions: update (required), delete (required).
mappingsarray–Create entries, each without apply. All entries are checked before one atomic write. Actions: create.
mappingsPathstring–Absolute path to a JSON document { mappings: [...] }, using the same entry shape. Actions: create.
metadataobject–Mapping metadata. Actions: create.
minConfidencenumber–Minimum confidence to apply; lower candidates are queued. Actions: apply.
oodsTraitsarray–OODS trait names this component maps to. Actions: create.
preferred_termsarray–Canonical terms to append. Actions: create.
projection_variantsarray–Cross-surface mapping variants to append. Actions: create.
propMappingsarray–Property translations from external to OODS prop names. Actions: create.
reportobject–Reconciliation report. Actions: apply.
reportPathstring–Filesystem path to a reconciliation_report.json artifact. Actions: apply.
sourceobject–Actions: draft (required).
substitutionobject–Component substitution with React/Vue exports and prop translations. Actions: create.
updatesobject–Fields to change: oodsTraits, confidence, propMappings, metadata, substitution. Omitted fields stay unchanged. Actions: update (required).

No output schema declared.

No examples provided.

component_map_read ~245

Read component substitutions and staged intake evidence. Use it when listing mappings, resolving an external component or reviewing a draftId; use component_map to stage or apply changes. Returns entries, matches or draft evidence including proposed adapters and unmatched elements. Reads local stores without generating adapters or changing project files. Full schema: oods://schemas/component_map_read.input.json.

NameTypeReqDescription
actionstringyesChoose list, resolve, show.
cursorstring–Pagination cursor. Use the previous page's nextCursor to continue. When cursor or limit is provided, pagination defaults to 100 items per page. Actions: list.
draftIdstring–Actions: show (required).
externalComponentstring–Component name in the external system (e.g., 'Button'). Actions: resolve (required).
externalSystemstring–For list: Filter mappings to a specific external system (e.g., 'team'). For resolve: External design system name (e.g., 'team'). Actions: list, resolve (required).
limitinteger–Page size for pagination. Omitting both cursor and limit preserves the legacy full-list response. Actions: list.

No output schema declared.

No examples provided.

dashboard_render ~693

Render coordinated charts and KPIs from shared datasets and panel definitions. Use it when composing a dashboard; use viz_render instead for one chart or artifact_certify to grade each returned normalized chart. Returns layout, per-panel specs/hashes, computed KPI values, accessibility data and a reusable specRef. output.includeNormalizedSpec includes panel IR; output.html adds rendered HTML. brand/theme controls emitted pixels; selection and crossFilter apply caller-supplied filtering. resolveMeasures defaults true for governed measure references. output.contrastScan is a four-pair token preflight, not whole-document certification. Chord and flow_map are excluded from dashboards. Panels take inline data only. Full schema: oods://schemas/dashboard_render.input.json.

NameTypeReqDescription
a11yobjectyesdashboard-level accessibility: a cross-panel summary + reading/focus order. The per-chart AccessibilitySpec stays per-panel; this is the dashboard envelope.
a11yEquivalenceboolean–A11y equivalence certify-at-emission switch. See full schema for details.
brandstring–CSS token brand for the dashboard document and chart pixels; defaults to A. The contrast scan grades the same scoped document tokens.
crossFilterobject–Active selection combination. Each active source contributes a predicate; ignoreSelfSource controls whether its own panel is filtered. Declared links do not change this behavior.
datasetsarrayyesShared, named tabular datasets. chart and KPI panels reference one by datasetId; panels that share a dataset can cross-filter each other.
idstring–Stable identifier for the dashboard instance.
layoutobject–Optional layout hints consumed by the deterministic auto-layout resolver. Absent hints -> declared panel order + KPI-row-first defaults; the resolver emits abstract {x,y,w,h} (renderer-agnostic, the…
linksarray–Declared panel relationships, returned and shown as a labelled list in HTML. They apply no filters; cross-filtering uses selection and crossFilter.
onPanelErrorstring–What a failed panel does: 'placeholder' (default) shows an accessible error panel in its place; 'omit' drops it from the layout.
outputobject–Optional render output controls (mirrors viz_render).
panelsarrayyesHeterogeneous panels: chart (11 of the 13 viz_render chartTypes; chord and flow_map are viz_render-only — plus its data branch) or kpi tiles.
resolveMeasuresboolean–Phase-3 governed-measure resolution switch. See full schema for details.
schemaVersionstringyesIR version discriminant (V01 convention). A future template/shape change bumps to v0.2.
selectionobject–Optional accumulated cross-filter SelectionState, keyed by sourceWidgetId (one active selection per source). See full schema for details.
strictDatasetsboolean–Unknown-datasetId strict switch. See full schema for details.
strictFieldsboolean–Field-presence strict switch. See full schema for details.
themestring–CSS token theme for chart pixels, default light. See full schema for details.
titlestring–Human-friendly dashboard title surfaced in UI + narration.
tokenCssRefstring–Token strategy. See full schema for details.

No output schema declared.

No examples provided.

design_compose ~393

Compose an object screen or workflow into a UiSchema. Use it when choosing layout and components; use pipeline_run instead for the complete generation flow or code_generate when you already have a schema. Returns schema, a 30-minute process-local schemaRef and durable compositionId/version lineage. Prefer explicit object and context over keyword-based intent. preferences controls region/field order and sample seed; compositionId appends a version, while options.transient records none. Save schemas with schema_store to reuse across sessions. Selected nodes snapshot component mappings; composition does not generate or run an app. Full schema: oods://schemas/design_compose.input.json.

NameTypeReqDescription
compositionIdstring–Record this composition as the next version of an existing composition (operation "recompose") instead of creating a new one.
contextstring–View context for object-aware composition. See full schema for details.
intentstring–A short intent sentence (e.g., 'dashboard with metrics and sidebar', 'user registration form'), matched against fixed keyword and phrase tables, not understood; a sentence with no layout keyword beco…
layoutstring–Layout template to use. 'landing' is a content/marketing page (hero + sections + CTA), not bound to a data object. 'auto' infers the best template from intent keywords.
objectstring–Object name from the OODS registry (e.g., 'Subscription', 'User'). When provided, composition uses trait-driven component placement via view_extensions.
optionsobject–Operation options.
parentVersioninteger–With compositionId: the version the new one derives from; default the latest.
preferencesobject–Layout and appearance preferences.
presentationstring–Named Stage1 inspection presentation: omit the accessibility score and prominently show measurement limits. Source records remain unchanged.

No output schema declared.

No examples provided.

design_preview ~600

Render, compare, edit or accept a running React/Vue composition. Use it when reviewing generated behavior; use design_versions to inspect lineage without starting a host, or fidelity_preview for static drawings. Returns preview URLs, editable fields and measured or unmeasured evidence. Supply compositionId/version or object/context. Edits create versions; compare generates missing artifacts. accept records the generated version and a snapshot of its measurements as accepted, preserving prior acceptances. Full schema: oods://schemas/design_preview.input.json.

NameTypeReqDescription
actionstring–Choose render, compare, edit, accept.
againstobject–action compare: the version on the right; the left is compositionId@version.
analysisPathstring–Portable Stage1 derived-analysis directory. Composes Comparison or ComparisonSignal from attested retained bytes, separate from runPath. Only read-only contexts; recordId selects an exact signal.
compositionIdstring–An existing composition from design_compose; with no version, its latest version opens.
contextstring–View context for object-aware composition. See full schema for details.
contextItemsarray–Decisions and evidence about this object that you already fetched, shown beside the running preview and stored on the version. See full schema for details.
contextSearchedarray–What you searched that returned nothing, so an empty panel is a statement rather than a silence: the reader can tell 'nothing was found' from 'nobody asked'.
editobject–Edit one parent version: operation is reorder-region (regionOrder), swap-slot (slot, component), reorder-fields (fields), or seed (seed). Returns a new version.
frameworkstring–Which generated app to compile and serve; both frameworks by default, each at its own URL.
objectstring–Object name from the OODS registry (e.g., 'Subscription', 'User'); with context, composes a new composition (version 1) and opens it.
observationRunPathstring–A Stage1 run directory on this machine (out/stage1/<suite>/<run-uuid>). See full schema for details.
preferencesobject–Layout and appearance preferences.
presentationstring–Named Stage1 inspection presentation: omit the accessibility score and prominently show measurement limits. Source records remain unchanged.
recordIdstring–Exact record ID for a fresh runPath or analysisPath detail/card/inline view. Unknown IDs refuse before composition; existing versions retain their selected record.
runPathstring–A Stage1 run directory on this machine (out/stage1/<suite>/<run-uuid>) whose real records this version shows: the run itself for Run, its findings for Finding, its attested artifacts for CapturedArti…
versioninteger–The version of compositionId to open.

No output schema declared.

No examples provided.

design_versions ~104

Read a composition's versions and accepted version. Use it when inspecting saved lineage; use design_preview to render, edit, compare or accept. Returns version metadata, latest and acceptance summary. Supply compositionId. Starts no preview host and returns no running URL. Full schema: oods://schemas/design_versions.input.json.

NameTypeReqDescription
actionstring–Choose versions.
compositionIdstringyesAn existing composition from design_compose; with no version, its latest version opens.

No output schema declared.

No examples provided.

fidelity_preview ~343

Draw object relationships or compositions at four fidelity levels. Use it when reviewing static structure or appearance; use design_preview instead to run generated React/Vue behavior. Returns SVG or HTML with fidelity-specific structure and provenance. fidelityKind selects boxes-arrows, wireframe, review or branded-mockup. Supply exactly one object, objects set, schema/schemaRef, fixture or legacy manifest; object/context composes a screen. Object diagrams show declared relationships; schema diagrams show containment. Wireframe/review show component bindings and recorded confidence, and branded mockups use static sample data. options.brandOverlay/theme selects built tokens. These drawings do not certify usability or referential integrity. Full schema: oods://schemas/fidelity_preview.input.json.

NameTypeReqDescription
contextstring–Context to compose for a single object in wireframe, review or branded-mockup.
fidelityKindstringyesWhich HTML fidelity emitter to invoke.
fixturestring–Named allow-listed Object Catalog fixture shipped in registry data; unknown names return OODS-FP-001.
manifestobject–Inline Object Catalog manifest to render — an alternative to `fixture`. See full schema for details.
objectstring–Registered object. boxes-arrows draws its declared relationships; other views compose it in context.
objectsarray–Explicit object set; draw only declared edges within this set. boxes-arrows only.
optionsobject–Operation options.
schemaobject–Inline composed screen tree; validated as UiSchema.
schemaRefstring–Cached UiSchema from design_compose or schema load; missing/expired refs return a typed error.

No output schema declared.

No examples provided.

health_check ~169

Read server readiness, live registry/store counts and retained proof summaries. Use it when checking availability and built brand/theme scopes; use object_registry for definitions or registry_snapshot for mappings. Returns status, server uptime, registry counts, token scopes and productReality evidence. status:ok means sources were readable; retained proofs identify their measured build and do not automatically certify this one. includeChangelog and sinceVersion filter the reported DSL changelog. tokens.defaultScope is configured metadata rather than an observed consumer scope; missing scope data is unavailable. Full schema: oods://schemas/health_check.input.json.

NameTypeReqDescription
includeChangelogboolean–When true, include DSL version changelog in the response.
sinceVersionstring–When provided with includeChangelog, only return changelog entries since this version.

No output schema declared.

No examples provided.

object_import ~221

Draft objects from local OpenAPI, JSON Schema, Postgres SQL, Prisma, dbt, OData or GraphQL files, then apply accepted proposals. Use it when importing a schema; use object_import_read to review a staged object. Returns importId, staged files, proposal counts and re-import differences, or batch registration results. draft takes source.path or source.content; apply requires explicit objects and proposal ids. overwrite replaces team objects; confirmShipped names approved shipped replacements. No network fetch or code execution. Full schema: oods://schemas/object_import.input.json.

NameTypeReqDescription
actionstringyesChoose draft, apply.
confirmShippedarray–Each shipped object name whose replacement is explicitly confirmed.
importIdstring–Content-addressed import id from draft. Required by show and apply.
objectsarray–Explicit accepted object names and optional proposal ids for apply.
overwriteboolean–Allow replacing existing team objects.
sourceobject–Local file/folder or inline schema. Used only by draft.

No output schema declared.

No examples provided.

object_import_read ~124

Read one staged object import. Use it when reviewing YAML, graded proposals and unmapped elements before acceptance; use object_import to draft or apply. Returns the named object, proposals and differences from its registered definition. Supply importId and the exact object name. Reading never rewrites the staged report. Full schema: oods://schemas/object_import_read.input.json.

NameTypeReqDescription
actionstringyesChoose show.
importIdstring–Content-addressed import id from draft. Required by show and apply.
objectstring–Exact draft object name for show.

No output schema declared.

No examples provided.

object_register ~182

Register an object or trait from reviewed YAML. Use it when saving a definition; use object_registry to list, inspect or validate without writing. Returns the saved definition and registry result. overwrite replaces your own definition. Team objects may shadow shipped objects; traits cannot reuse shipped names. Relationships must name valid targets and fields. Full schema: oods://schemas/object_register.input.json.

NameTypeReqDescription
actionstringyesChoose register.
overwriteboolean–Replace a definition of yours with this name; without it a name you already registered is refused (OODS-C004). Actions: register.
yamlstring–The whole definition as YAML: an object file starts with "object:", a trait file with "trait:" (the same format as OODS Foundry's own objects/ and traits/). Actions: register (required). See full sch…

No output schema declared.

No examples provided.

object_registry ~344

Read object and trait definitions or validate YAML without saving. Use it when exploring shapes or checking a definition; use object_register to save one or object_import to draft from a schema file. Returns definitions, composed traits, validation findings or cache reload status. includeInternal reveals hidden objects; reload clears only process caches. Full schema: oods://schemas/object_registry.input.json.

NameTypeReqDescription
actionstringyesChoose list, show, validate, reload.
contextstring–Optional: filter view_extensions to a single context (e.g. 'detail', 'list', 'form', 'timeline', 'card', 'inline'). Actions: show.
domainstring–Filter to objects in a specific domain (e.g. 'core.identity', 'saas.billing'). Actions: list.
includeInternalboolean–Also list OODS Foundry's internal (non-business) objects, after the business objects. Without it they are left out and hiddenInternal counts them. Actions: list.
maturitystring–Filter by metadata maturity level. Actions: list.
namestring–Object name to look up (e.g. 'User', 'Product', 'Invoice'). Actions: show (required).
traitstring–Filter to objects composing a given trait (e.g. 'Priceable', 'lifecycle/Stateful'). Actions: list.
yamlstring–The whole definition as YAML: an object file starts with "object:", a trait file with "trait:" (the same format as OODS Foundry's own objects/ and traits/). Actions: validate (required). See full sch…

No output schema declared.

No examples provided.

pipeline_run ~422

Run composition, validation, rendering and code generation in one call. Use it when starting from an object/context or intent and needing generated output; use design_compose instead to inspect layout first or code_generate for an existing schema. Returns step results, schemaRef with expiry, versioned artifacts, dependencies and validationReceipt. options controls validation/render skipping and optional static accessibility checks; save persists the schema beyond its process-local 30-minute reference. Generation validation forwards draft/build/release without downgrade. Release verifies supplied evidence without rerunning it; unresolved accessibility pairs stay unmeasured. Oversized output goes to files unless options.payloadMode is inline. Calls may write composition and saved-schema records. Full schema: oods://schemas/pipeline_run.input.json.

NameTypeReqDescription
actionMappingsarray–action mappings: flat, verb-keyed entries.
contextstring–View context for object-aware composition.
frameworkstring–Target framework for code generation.
intentstring–A short intent sentence, matched against fixed keyword and phrase tables (a sentence that matches no layout keyword becomes a low-confidence dashboard). Prefer object and context.
layoutstring–Layout template. 'landing' is a content page (hero, sections, call to action) bound to no object; 'auto' picks one from the intent.
objectstring–Object name from the OODS registry (e.g., Subscription, User).
optionsobject–Operation options.
preferencesobject–Layout and appearance preferences.
profilestring–Validation profile passed to code_generate. build, the default, blocks on static checks; static checks do not install or run the generated app.
releaseEvidenceobject–Hash-bound release evidence forwarded unchanged to code_generate.
savestring|object–Optional schema save config. String for name-only, or { name, tags } for full control. Variant fields: name, tags. Read the full schema for each variant.
stylingstring–Styling strategy for code generation.

No output schema declared.

No examples provided.

registry_snapshot ~200

Read mappings together with active traits and objects in one snapshot. Use it when reading combined registry data; object_registry reads one definition and object_register saves one. Returns mappings, traits, objects, generatedAt, ETag and registry loader issues. Defaults to a summary; detail full adds schemas. includeInternal exposes hidden objects; otherwise hiddenInternal counts omitted entries. Team definitions and shadowing are reported from live sources. This read-only call writes no snapshot file. Historical mapping fields remain stored data and do not imply current capabilities. Full schema: oods://schemas/registry_snapshot.input.json.

NameTypeReqDescription
detailstring–summary (default), or full definitions, best with names.
includeInternalboolean–Also list OODS Foundry's internal (non-business) objects, after the business objects. Without it they are left out and registry.hiddenInternal counts them.
namesarray–Exact trait and object names; misses go in notFound.

No output schema declared.

No examples provided.

schema_read ~140

Read saved composition schemas. Use it when listing saved work or loading a named schema; use schema_store to save or delete one. Returns metadata or the schema with a new process-local schemaRef, valid for 30 minutes. Tool input schemas are separate MCP resources. Full schema: oods://schemas/schema_read.input.json.

NameTypeReqDescription
actionstringyesChoose list, load.
contextstring–Rendering-context filter. Actions: list.
namestring–Saved schema name in slug format. Actions: load (required).
objectstring–Object filter. Actions: list.
tagsarray–Actions: list.

No output schema declared.

No examples provided.

schema_render ~372

Validate a UiSchema or render static HTML and fragments. Use it when checking schema or patch contracts; use design_preview for a running app or schema_store to save. Returns diagnostics or rendered output. action selects validate/render; mode selects full/patch. apply:true enables rendering, without saving a schema. Render includes token CSS unless output.compact; oversized output or output.payloadMode:file writes only reply payloads. brand and scope options affect documents; ignored fragment options are diagnosed. Full schema: oods://schemas/schema_render.input.json.

NameTypeReqDescription
actionstringyesSelects the per-action handler. 'render' -> schema_render action=render, 'validate' -> schema_render action=validate.
applyboolean–For render: When true and the schema validates, render it: the HTML document in html, or per-node fragments with output.format 'fragments'. Actions: render, validate. See full schema for details.
baseTreeobject–Required when mode='patch' to provide the base UiSchema to patch. Actions: render, validate.
brandstring–Brand to render. Actions: render. See full schema for details.
modestring–Full schema or patch mode. Actions: render, validate.
optionsobject–Operation options. Actions: render, validate.
outputobject–Optional render output controls. Omitting this object preserves full-document behavior. Actions: render.
patcharray|object–Required when mode='patch'. Accepts JSON Patch array or node patch object(s). Actions: render, validate.
schemaobject–UiSchema. Actions: render, validate.
schemaRefstring–Reference to a cached UiSchema returned by design_compose. Actions: render, validate.

No output schema declared.

No examples provided.

schema_store ~182

Save or delete a named composition schema. Use it when retaining a UiSchema across sessions; use schema_read to list or load saved schemas. Returns the saved metadata or deletion result. save takes schemaRef, overwrites that name and increments its version; only the latest is loadable. Both actions write immediately. Full schema: oods://schemas/schema_store.input.json.

NameTypeReqDescription
actionstringyesChoose save, delete.
authorstring–Optional author metadata. Actions: save.
namestring–Saved schema name in slug format (letters, numbers, hyphens, underscores). Actions: save (required), delete (required).
schemaRefstring–Reference to an in-memory schema produced by design_compose. Actions: save (required).
tagsarray–Optional tags for filtering and discovery. Actions: save.

No output schema declared.

No examples provided.

structured_data_fetch ~524

Fetch live registry datasets, archived token/export data, or captured-run artifacts. Use it when you need complete datasets; catalog_list selects components and object_registry reads definitions. Returns data with provenance, version and cache metadata. Full remains the default; detail:summary gives section counts and meta.next for inline pages; follow meta.next until absent. dataset selects registry/export mode; version pins an archived export and listVersions lists dates. kind plus runPath selects captured artifacts, while derived_analysis reads an analysis directory via runPath; version/listVersions are refused in kind mode. includeInternal exposes hidden objects, and ifNoneMatch checks the canonical payload ETag. Full schema: oods://schemas/structured_data_fetch.input.json.

NameTypeReqDescription
datasetstring–Local structured dataset to return (components/tokens/manifest). Mutually exclusive with kind+runPath.
detailstring–Dataset only. summary returns section counts and the call for page 1; full (default) preserves the dataset.
ifNoneMatchstring–Return matched=true without payload when the ETag matches.
includeInternalboolean–Live components dataset only: also list OODS Foundry's internal (non-business) objects, after the business objects. Without it they are left out and registry.hiddenInternal counts them; a dated expor…
includePayloadboolean–When false, omit payload even if no ETag match occurs.
kindstring–Stage1 artifact kind, with runPath; excludes dataset. See full schema for details.
listVersionsboolean–When true, return available version dates instead of payload.
pageinteger–Dataset only: read a 1-based page of lossless JSON Pointer entries, each reply below 100,000 characters. Omit for full data.
pageSizeinteger–Dataset entries per page, default 10, also bounded by serialized size. Reply meta gives next and full calls.
payloadModestring–Unset: inline, unless the payload exceeds 100,000 characters; then it is written to a file and warning OODS-W004 says so. inline always returns it; file always writes it and returns payloadFile.
runPathstring–Filesystem path to a Stage1 run directory or its artifacts/ subdirectory. Required when kind is set.
versionstring–Request a specific date-stamped version (e.g., '2026-02-24'). Omit for latest. Applies to dataset mode only.

No output schema declared.

No examples provided.

tokens_build ~177

Compile registered brand tokens with the shipped compiler. Use it when you need fresh CSS and JSON; use brand_create to create a brand or brand_apply to change its source. Returns inline CSS variables, CSS and JSON plus artifact paths, hashes and sizes. apply:true builds in isolated artifact storage; omission previews the artifacts without writing. Requested brand/theme selects the inline scope; full CSS includes every registered scope. Source and shipped runtime files stay unchanged. Full schema: oods://schemas/tokens_build.input.json.

NameTypeReqDescription
applyboolean–Write on true; otherwise preview.
brandstring–Selects values compiled from current source, returned inline as CSS variables, CSS and JSON and written on apply. Full CSS includes all registered scopes; TypeScript and Tailwind artifacts retain A/l…
themestring–Token theme.

No output schema declared.

No examples provided.

viz_render ~825

Render one data-bound chart from rows or a structured data operand. Use it when creating chart output; use artifact_certify instead to grade a normalized chart or dashboard_render for multiple panels and KPIs. Returns Vega-Lite or ECharts specs, chart identities and requested SVG/accessibility output. pattern uses bundled data and forbids explicit data/encoding/presentation overrides. Otherwise use chartType plus encodings, omit chartType for recommendations, or supply structured intent. ECharts-primary families require their matching hierarchy/network/geo operand. brand/theme controls pixels; output.includeNormalizedSpec returns the IR required by artifact_certify. Temporal rendering uses UTC. For native ECharts after JSON transport, restore currency and precision with @oods/foundry/echarts.js. Charts take inline data only; URLs, images and links in the input are refused. Full schema: oods://schemas/viz_render.input.json.

NameTypeReqDescription
a11yEquivalenceboolean–Check Vega-Lite accessible equivalents (default true). Errors stop rendering; warnings are returned. ECharts-primary scaffolds are not checked here.
brandstring–CSS token brand for chart pixels. Omission resolves light/A.
chartTypestring–Chart family for explicit mode. Cartesian charts need rows/datasetRef and encodings; other families need their named data input. Omit to suggest from rows.
chordobject–Chord input: {nodes:[{name}],links:[{source,target,value}]}; links refer to node names; each directed pair must be unique.
datasetRefstring–Previously cached dataset id; alternative to rows.
descriptionstring–Optional override for the synthesized accessibility description. When omitted, a non-empty description is generated from the encodings.
encodingsobject–Cartesian bindings: each needs field; optional type, aggregate, title, format (d3-format), currency (ISO 4217).
geoobject–Inline geojson or topojson plus topoObjectName, rows, join, valueField; optional point/flow coordinate fields. No network fetch. Re-register echartsSpec.__registration before rendering. Read full sch…
hierarchyobject–Treemap/sunburst: {type:"nested",data:{name,value,children}} or {type:"adjacency_list",data:[{id,parentId,value}]}. See full schema.
idstring–Optional stable identifier for the produced spec.
intentobject–Structured request: goal, measures:[{name}], dimensions:[{name}], optional chartFamily and measureRef. Uses rows or datasetRef; alternative to explicit chartType/encodings.
namestring–Optional human-friendly chart title.
networkobject–Force graph input: {nodes:[{id,group}],links:[{source,target,value}]}; max 250 nodes. Use chartType:"force_graph". Full contract: oods://schemas/viz_render.input.json.
opacitynumber–Constant mark opacity for Cartesian charts only; omission keeps renderer defaults.
outputobject–Options: svg, width, height, compact, echarts, includeNormalizedSpec, includeA11y, includeVegaSpec, titlePlacement (chart or figure). SVG is opt-in; compact defaults true.
patternstring–Exact registered pattern identity; preserves source data and presentation. Cannot combine with chartType, data, intent or identity/presentation overrides.
rowsarray–Inline flat data rows. Use either rows or datasetRef.
sankeyobject–Sankey input: {nodes:[{name}],links:[{source,target,value}]}; links refer to node names. Use chartType:"sankey".
strictFieldsboolean–Warn about unresolved fields and unmatched map joins (OODS-V131/V134). Default false preserves existing behavior.
themestring–Chart token theme. HC preserves system colors and needs a forced-colors browser to resolve them.

No output schema declared.

No examples provided.

Install

How do I install the OODS Foundry MCP server?

OODS Foundry runs locally as an npm package, launched with npx -y @oods/foundry. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · @oods/foundry

# add to Claude Code
claude mcp add com-oods-foundry-foundry -- npx -y @oods/foundry
Common questions

What is the OODS Foundry MCP server?

OODS Foundry is an MCP server listed in the public MCP registry as com.oods-foundry/foundry. OODS Foundry is an object-oriented design system that extends the one you already have. This page covers its npm package (@oods/foundry).

Is the OODS Foundry MCP server safe to use?

OODS Foundry scores 79 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. It declares no install or post-install scripts. 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 OODS Foundry MCP server expose?

OODS Foundry exposes 26 tools: tokens_build, structured_data_fetch, brand_apply, brand_create, brand_read, and 21 more. Their descriptions and schemas cost roughly 8,788 tokens of context every time the server is loaded.

Is the OODS Foundry MCP server still maintained?

OODS Foundry is still listed as active in the MCP registry. We last reached this channel on 5 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 OODS Foundry MCP server under?

OODS Foundry 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.