search_components
Search NeuralNg components
Search the deterministic NeuralNg component catalog, README files, and llms.txt guidance. Omit query or use an empty string to browse a bounded list in stable id order.
limitquery
io.github.hasanaydin7由 GitHub 账号 hasanaydin7 发布v1.0.1更新于 Nov 1, 2026
Angular UI expert for NeuralNg discovery, composition, validation, icons and project-aware themes.
只读的 MCP 服务器,为 Angular 助手提供 NeuralNg 组件检索、基于契约的界面组合、模板校验和精简主题配方。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
参照 仓库 中的启动说明。
Read-only Angular UI expert interface for NeuralNg component discovery, contract-backed composition, usage validation, project-consistent guidance and compact theme workflows.
The server is separate from @neural-ng/core. Angular applications never load
an MCP runtime in the browser. Theme tools return recipes, validation results,
diffs and compile summaries; they do not write files or execute shell commands.
Since rc.4, the catalog covers Editor, theme tools accept native objects, empty queries support bounded browsing and project inspection reports CSS risk hints.
Current release: 1.0.1 (stable MCP interface).
Requires Node.js 24.x. Pin the version for reproducible agent environments;
@latest selects the latest published release.
Generic MCP client configuration:
The process uses stdio. Standard output is reserved for MCP JSON-RPC messages; fatal diagnostics are written to standard error.
Since 1.0.0-rc.3, tools expose output contracts, the validator accepts native
arrays and project inspection separates scan coverage from semantic confidence.
All 20 tools advertise an outputSchema in tools/list. The server validates
successful structuredContent before returning it. Invalid output becomes a
tool error rather than a success. Tool-handler errors keep isError: true and the
separate {error: {schemaVersion: 1, message}} contract; they are not successful
instances of the advertised result schema.
Existing result envelopes and schema versions are retained. New fields are additive; consumers must tolerate unknown fields. Required-field removals or type changes require an explicit result-schema version change. Snapshot tests lock the published JSON schema shapes, alongside actual-output and negative tests.
Agent capability discovery:
neural://server/capabilities — versioned tool groups, result schemas,
inspection limits, safety guarantees and compatibility guidanceComponent and package resources:
neural://catalogneural://package/exportsneural://components/{id}/contractneural://components/{id}/readmeneural://components/{id}/llmsIcon resources:
neural://icons/catalog — compact package totals, categories, versions and
brand-search policy; use search_icons for bounded matchesTheme resources:
neural://themes/catalogneural://themes/schemaneural://themes/presetsneural://themes/presets/neutralneural://themes/presets/glassneural://themes/presets/mistneural://themes/presets/futuristicneural://themes/ai-guideComponent resources are registered as fixed URIs. The server does not accept a filesystem path and does not read arbitrary files.
search_componentsOmit query, or pass an empty/whitespace string, to browse at most limit
contracts in stable id order (default 10, maximum 20). Non-empty queries rank
matches. Browsing is a bounded preview, not an exhaustive paginated listing.
Searches public selectors, entry points, summaries, README files and llms.txt
guidance.
get_componentReturns the schema-versioned Angular API contract used by coding agents. The
standard detail level includes Signal inputs, models and outputs, typed
template contexts, required providers, class contract names and the available
example count without sending full documentation through the context window.
Use detail: "summary" during discovery and detail: "full" only when every
class slot and embedded example is required. Results are returned as both MCP
text content and structuredContent.
get_component_examplesReturns a bounded list of published examples with their documentation heading, language and code.
get_component_contractLegacy full-contract lookup retained for existing clients. New integrations
should use get_component so they can select a token-efficient detail level.
recommend_componentsUses deterministic intent matching. It does not invoke another model or a network service.
search_iconsSearches all 6,184 outline and filled Neural Icons variants by exact name,
category, or common UI intent. Results are bounded and include the exact nt
class, the smallest valid CSS import, ready-to-use markup, supported effects,
and accessibility guidance. Brand icons are excluded by default.
Use style: "filled" only when the returned icon lists filled support. Pass a
category to narrow the deterministic search. Set include_brands: true only
when the product explicitly needs a trademarked brand glyph.
plan_uiTurns a product requirement into a contract-backed NeuralNg composition. The
result contains selected primitives and reasons, exact standalone imports,
provider requirements, structural regions, state ownership, accessibility
checks, implementation order, and component ids that can be passed directly to
get_component_examples.
kind accepts auto, form, page, or table. Auto detection is
deterministic; it does not call another model or network service.
Use suggest_form_structure, suggest_page_structure, or
suggest_table_structure when the outer interaction shape is already known.
Each accepts a non-empty goal and returns the same versioned plan contract as
plan_ui with the corresponding kind fixed.
validate_usageParses an Angular template with @angular/compiler and checks the resulting AST
against the generated NeuralNg public contracts. It understands Angular control
flow, structural directives, interpolation, property/event/two-way bindings,
custom elements, and NeuralNg attribute selectors on native elements. It
reports stable diagnostic codes with source positions for Angular syntax
errors, unknown selectors or bindings, missing required inputs, invalid literal
unions (including exported type aliases), inaccessible icon-only buttons,
missing standalone imports, required providers, and duplicate Toast channels.
Explicit ng-template directives (such as neuralTableCell) and their nested
components are checked too. Event listeners do not satisfy required inputs;
model outputs use their generated Change suffix. String-literal property
bindings are checked against input unions, and empty static or string-literal
accessible labels do not satisfy the icon-only button check.
This is a template contract checker, not a full Angular application compiler. Dynamic expression types, runtime label values, template context types, and application behavior still require Angular compilation and application tests.
Use native arrays of non-empty declaration/provider names. Legacy imports_json
and providers_json JSON strings remain supported; do not pass an import map.
If both forms are sent, their trimmed, deduplicated name sets must agree;
conflicting or malformed values return an explicit tool error. Omitted fields
retain the previous empty-array defaults.
The schema-v2 result includes valid, parser identity and version, syntax
status, diagnostics, exact suggested imports grouped by entry point, and
provider requirements. NNG000 identifies Angular parse failures before
contract validation. Informational missing-import diagnostics do not make a
template invalid; error diagnostics do.
The generated catalog covers Core and the independently versioned
@neural-ng/editor, including Editor template directives, inputs, outputs and
typed classes. Contracts expose packageName and packageVersion;
neural://package/exports retains the Core fields and adds companionPackages.
installedEditorVersion reports locally resolved Editor metadata. NNP010
warns when Editor and its catalog version differ; matching Core alone does not
verify Editor APIs. Unrecognized selectors still produce diagnostics.
CSS checks emit warnings, not runtime verdicts: NNP011 detects a flat CSS
display rule matching a statically identifiable element using hidden;
NNP012 flags root NeuralNg token declarations with !important. A later
protective rule may make an NNP011 warning harmless. The check does not compute
the cascade, resolve imports or evaluate Sass, inline component styles,
dynamic selectors or theme interactions. :where(:root, ...) alone is not a
bug. Verify Appearance switching and hidden overlays in a real browser.
The hint pass is capped at 1000 hidden elements, 2000 rules and 100 warnings;
NNP013 reports those limits. This cap is independent of file scan coverage.
inspect_projectInspects the Angular workspace used as the MCP process working directory and
returns declared Angular/NeuralNg package versions, workspace kind, summary
counts, used selectors and occurrence locations, icon classes and stylesheets,
imports grouped by entry point, configured providers, theme and Appearance
setup, inferred conventions, and actionable diagnostics. External templates,
inline component templates and attribute directives are parsed with
@angular/compiler; invented APIs and accessibility failures therefore use the
same diagnostics as validate_usage.
The scan is read-only and accepts no filesystem path. It skips dependencies,
build output, VCS data, tests, declarations, and symlinks. Work is bounded to
400 source files, 256 KiB per file, 5 MiB in total, and 10,000 directory entries;
oversized files are rejected before their contents are read. The result explicitly
reports truncation and analysis confidence. analysis.scanCoverage reports only
whether bounded enumeration completed. analysis.semanticConfidence is
heuristic or insufficient, never a claim of compiler-level correctness.
Templates use Angular AST parsing, while import/provider/theme metadata uses
static heuristics. compilationVerified is always false. The legacy confidence
field is retained as a deprecated alias for scan completeness, not semantic
certainty. Absolute paths are not returned,
and component/icon evidence is capped at 25 relative paths per item while
filesOmitted preserves the omitted count. angularVersion and neuralPackages
contain declarations from the workspace package.json. Optional
installedCoreVersion and installedAngularVersion separately report exact
versions read from the corresponding local node_modules package manifests.
Only bounded metadata within the workspace is read, not dependency source code.
Core compatibility prefers installed metadata when available; dependency ranges
without that evidence require review. Independently released Core, Icons, Theme,
and MCP packages are not required to share a version.
Diagnostics validate selectors and APIs present in the generated MCP catalog;
an unknown selector from a separate package remains visible instead of being
silently treated as valid.
inspect_neuralng_project remains as a compatibility alias and returns the
same schema-v2 result. New agents should call inspect_project.
suggest_consistent_uiCombines inspect_project with the composition engine. It identifies
which planned primitives already have a project convention, which ones are new,
and how to preserve the detected theme, unstyled ownership, and import style.
The schema-v2 result includes per-component relative-path evidence, exact import
reuse/add partitions, required-provider deltas, declared Core versus catalog
version alignment, bounded project risks, and explicit next calls to
get_component_examples and validate_usage. It returns focused project context
rather than duplicating the full inspect_project result.
compatibility.evidenceSource distinguishes installed metadata from declarations.
contractUsability is verified-version only for an exact installed Core/catalog
match, review-required for declarations or mismatches, and unavailable when
Core is missing. verified-version verifies only version alignment, not runtime
correctness. unverifiedAspects names the APIs and behaviors that cannot be
trusted yet; requiredActions explains version resolution, strict compilation
and browser verification. The legacy status field is retained for compatibility.
Native objects are preferred since rc.4. Use
options with creation, recipe with validation/compilation, recipe plus
patch with editing and left plus right with diffing. Existing *_json
strings remain supported. Both forms must be structurally equal when supplied
together (object key order is ignored; array order matters). Missing required
objects, non-object values and malformed/conflicting legacy inputs are errors.
The theme workflow intentionally operates on the small recipe rather than the resolved 1,348-token Core and Editor graph.
create_theme_recipevalidate_theme_recipeedit_theme_recipeApplies a bounded, prototype-safe sparse patch and validates the result. Theme validation rejects declaration injection, external CSS URLs, malformed aliases, and unknown component tokens before compilation.
diff_theme_recipesReturns only changed dotted recipe paths instead of repeating both recipes.
get_component_theme_contractReturns one component's supported theme properties. Use detail: "names" by
default and request detail: "defaults" only when current mode values are
needed.
Theme MCP tools author schema version 1. Early preview recipes should first be
migrated with neural-theme migrate or migrateThemeRecipe() from
@neural-ng/theme; MCP remains read-only and does not rewrite user files.
Preset resources include stability and quality governance metadata so agents can
prefer release baselines unless the user explicitly requests a preview style.
compile_theme_recipeRuns the real @neural-ng/theme compiler and returns validation diagnostics,
summary data, artifact byte sizes and integration instructions. It deliberately
does not send full CSS or token artifacts through the model context. Generate
those files with:
The committed component catalog is generated from:
tsconfig.base.json public @neural-ng/core/* paths;@neural-ng/editor entry point and its independently versioned manifest;index.ts;llms.txt files.Regenerate and verify it with:
mcp:eval reads the versioned manifest in evals/manifest.json. It gates ten
composition regressions and the beta-exit existing-project user-management
scenario across inspection, consistency planning, exact contracts, valid
template acceptance, accessibility, provider requirements, and invented API
rejection. CI runs it independently from the ordinary unit suite.
mcp-smoke packs both @neural-ng/theme and the MCP server, installs them into
an isolated temporary consumer, initializes stdio MCP, reads component and theme
resources, then calls component discovery and compact theme compiler tools.
来源:libs/neural-mcp/README.md,提交 3a8a7de
Search NeuralNg components
Search the deterministic NeuralNg component catalog, README files, and llms.txt guidance. Omit query or use an empty string to browse a bounded list in stable id order.
limitquerySearch Neural Icons by UI intent
Search all 6,184 Neural Icons variants by name, category, or common UI intent and return exact CSS classes, smallest category imports, usage markup, and accessibility guidance. Brand icons are excluded unless explicitly requested.
limitquery必填stylecategoryinclude_brandsGet a structured NeuralNg component API
Resolve a component and return its versioned public API. Use summary for discovery, standard for implementation, or full for every class slot and example.
detailcomponent必填Get NeuralNg component examples
Return bounded, executable examples extracted from the published component README with their heading and language.
limitcomponent必填Get a NeuralNg component contract
Resolve a component by id, class, selector, or entry point and return its public contract.
component必填Recommend NeuralNg components
Recommend documented NeuralNg components for a UI goal using deterministic intent matching.
goal必填limitPlan a NeuralNg UI composition
Turn a product goal into a deterministic, contract-backed component composition with exact imports, providers, state, accessibility checks, and implementation order.
goal必填kindSuggest a NeuralNg form structure
Return a contract-backed form composition with exact imports, providers, state ownership, accessibility checks, and implementation order.
goal必填Suggest a NeuralNg page structure
Return a contract-backed page composition with exact imports, providers, state ownership, accessibility checks, and implementation order.
goal必填Suggest a NeuralNg table structure
Return a contract-backed table composition with exact imports, providers, state ownership, accessibility checks, and implementation order.
goal必填Validate NeuralNg Angular template usage
Parse an Angular template with @angular/compiler and validate syntax, NeuralNg elements and attribute directives, bindings, required inputs, literal values, icon-button accessibility, standalone imports, provider requirements, and duplicate Toast channels.
importstemplate必填providersimports_jsonproviders_jsonInspect the current Angular project
Read the bounded MCP working directory and return a schema-v2 Angular compiler-backed inventory of NeuralNg versions, templates, elements and attribute directives, exact imports, providers, icons, theme/appearance setup, conventions, evidence, and diagnostics.
无需输入参数。
Inspect the current NeuralNg Angular workspace (legacy name)
Compatibility alias for inspect_project. It accepts no path and returns the same read-only schema-v2 inspection.
无需输入参数。
Plan UI consistent with the current project
Inspect the current Angular workspace and return a schema-v2 consistency plan with component evidence, version alignment, exact import/provider deltas, theme ownership, bounded risks, and validation next steps.
goal必填kindCreate a compact NeuralNg theme recipe
Create a deterministic sparse recipe from high-level brand and interface decisions. options accepts string fields: description, preset, primary, surface, radius, border, density, elevation, motion, typographyScale. Use options: {} for neutral defaults. Use preset, not extends; extends belongs to the returned recipe.
name必填optionsoptions_jsonValidate a NeuralNg theme recipe
Validate compact recipe JSON against the published schema and the complete Core and Editor token contract.
reciperecipe_jsonEdit a compact NeuralNg theme recipe
Apply a safe sparse patch with dotted set paths and unset paths, then validate the resulting recipe.
patchrecipepatch_jsonrecipe_jsonDiff compact NeuralNg theme recipes
Return only the deterministic dotted paths that differ between two compact recipes.
leftrightleft_jsonright_jsonGet a component-scoped NeuralNg theme contract
Return only the supported theme properties for one Core or Editor component. Use detail=defaults only when current default values are needed.
detailcomponent必填Compile a NeuralNg theme recipe summary
Compile and validate a compact recipe, returning summary, diagnostics, artifact byte sizes and integration instructions without emitting the full token graph.
reciperecipe_json已满足适用检查项的 90%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
npx -y @neural-ng/[email protected]{ "command": "npx", "args": ["-y", "@neural-ng/[email protected]"]}{ "query": "date calendar localized", "limit": 5}{ "component": "neural-select", "detail": "standard"}{ "component": "neural-table", "limit": 3}{ "component": "neural-tri-state-checkbox"}{ "goal": "nullable inherited permission checkbox", "limit": 3}{ "query": "delete user", "style": "outline", "limit": 10, "include_brands": false}{ "goal": "Admin user management with search, role filter, table and detail drawer", "kind": "auto"}{ "template": "<neural-button icon=\"trash\"></neural-button>", "imports": ["NeuralButton"], "providers": []}{ "goal": "Add a searchable project table with a detail drawer", "kind": "table"}{ "name": "violet-workspace", "options": { "preset": "glass", "primary": "#7c3aed", "radius": "large" }}{ "recipe": { "schemaVersion": 1, "name": "violet-workspace", "extends": "neutral" }}{ "recipe": { "schemaVersion": 1, "name": "violet-workspace", "extends": "neutral" }, "patch": { "set": { "color.primary": "#7c3aed", "shape.radius": "large" } }}{ "component": "toast", "detail": "names"}npx neural-theme buildnpx nx run neural-mcp:catalognpx nx run neural-mcp:catalog-checknpx nx lint neural-mcpnpx nx test neural-mcpnpm run mcp:evalnpx nx build neural-mcpnpx nx run neural-mcp:package-testnpx nx run neural-mcp:mcp-smoke