ICCPlus MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ICCPLUS_WORKSPACE | No | Filesystem boundary; the only directory the server may read or write. Defaults to the server process CWD. | (server process CWD) |
| ICCPLUS_MAX_ASSET_BYTES | No | Maximum local asset size in bytes. Defaults to 26,214,400 bytes (25 MiB). | 26214400 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
| completions | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| iccplus_capabilitiesB | List feature families or return field, type, function-body, source-file, deployment-artifact, or Custom CSS evidence extracted from ICC Plus. |
| iccplus_css_catalogB | List official viewer classes with source evidence and project-specific escaped row, choice, and selectable-addon selectors. |
| iccplus_css_analyzeA | Statically analyze stored or candidate CSS for syntax, selector specificity, official classes, project ids, inline-style conflicts, and external assets. |
| iccplus_css_setA | Replace, append, prepend, or clear the official project customCSS field with revision protection, dry-run support, and integrated validation. |
| iccplus_schemaA | Read the generated JSON Schema summary, one definition, or the complete project schema. |
| iccplus_create_projectA | Create an in-memory project from current upstream defaults. Nothing is written until save is called. |
| iccplus_open_projectA | Open a project JSON file from ICCPLUS_WORKSPACE into an isolated revisioned session. |
| iccplus_list_projectsA | List in-memory project sessions, revisions, dirty state, and compact summaries. |
| iccplus_project_statusA | Return revision, dirty state, summary, Custom CSS analysis, validation counts, and optionally project JSON. |
| iccplus_read_projectA | Read one or more RFC 6901 JSON Pointers without returning the complete project; preserves exact CSS, HTML, JS, and unknown fields while redacting embedded assets by default. |
| iccplus_queryC | Search rows, choices, addons, scores, requirements, points, groups, designs, words, variables, sound effects, and categories. |
| iccplus_create_entityB | Create any modeled ICC Plus entity with current project defaults, optional overrides, automatic ids, and normalized memberships. |
| iccplus_update_entityB | Deep-merge fields into one entity and optionally unset fields. ID changes can rewrite all modeled references. |
| iccplus_duplicate_entityB | Duplicate an entity and nested content with fresh ids; optionally remap references within the clone. |
| iccplus_move_entityA | Move an entity within its current ordered container and repair stored indices. |
| iccplus_delete_entityB | Delete one entity. The default policy rejects deletions that create dangling references. |
| iccplus_patchB | Atomically apply RFC 6902 JSON Patch operations for any current or future ICC Plus field. |
| iccplus_normalizeC | Migrate legacy shapes, generate missing ids, repair indices/parents, and rebuild reciprocal group/design memberships. |
| iccplus_validateB | Run generated structural schema checks plus ids, references, requirements, memberships, cycles, Custom CSS, and export invariants. |
| iccplus_evaluate_requirementsB | Evaluate an entity or supplied requirement tree using ICC Plus operator semantics and return an explainable trace. |
| iccplus_export_fragmentB | Return a row, choice, addon, score, requirement, or feature entity as reusable JSON. |
| iccplus_import_fragmentB | Import a fragment through the same parent/default/normalization layer used for normal entity creation. |
| iccplus_set_assetC | Set any string field from a workspace file as a data URL, or from an external/data URL, using an exact JSON Pointer. |
| iccplus_save_projectC | Atomically save project JSON inside ICCPLUS_WORKSPACE after optional strict validation. |
| iccplus_build_viewerC | Package the project into an official web/local viewer template, applying loading config and optional deduplicated image separation. |
| iccplus_historyA | Undo or redo one in-memory mutation while keeping revision conflict protection. |
| iccplus_close_projectA | Close an in-memory session. Unsaved sessions require force=true. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| author-iccplus-project | Workflow prompt for translating a CYOA concept into a validated ICC Plus project. |
| audit-iccplus-project | Workflow prompt for full schema, reference, behavior, and packaging review. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| iccplus-css-catalog | Official viewer classes with source evidence, dynamic selector patterns, and inline-style risk. |
| iccplus-project-schema | Generated from the current upstream App TypeScript model. |
| iccplus-feature-catalog | Feature families that connect authored fields to viewer/creator behavior. |
| iccplus-deployment-manifest | SHA-256 manifest for the analyzed deployment repository and official viewer archives. |
| iccplus-third-party-licenses | UTF-8 normalized license metadata shipped by the analyzed ICC Plus source release. |
TDQS
Scored across 27 tools
Most tools target distinct resources and actions, such as project lifecycle, entity CRUD, CSS, validation, and import/export. The main ambiguities are update_entity versus patch and import_fragment versus create_entity, but the descriptions provide enough scope detail to choose correctly.
All tools share the iccplus_ prefix and snake_case, and the majority follow a verb_noun pattern such as create_project, delete_entity, and set_asset. A few noun-only or verb-only names like capabilities, schema, query, and history are minor deviations from an otherwise consistent convention.
27 tools is above the typical well-scoped range and sits just past the heavy 16-25 band. The broad domain—project sessions, entity modeling, CSS management, validation, and viewer building—justifies much of the surface, but some operations could potentially be consolidated.
The tool set covers the main project lifecycle, entity CRUD, querying, validation, normalization, import/export, CSS, assets, and viewer building. Minor gaps include no explicit project deletion/rename and no direct get-entity-by-id helper, though JSON Pointer reads and query cover most practical needs.