Official agent skill

Mps Language Aspects Overview

by JetBrains in JetBrains/MPS

Entry point for authoring or modifying an MPS language — index of all aspects (structure, editor, constraints, behavior, typesystem, intentions, actions, generator, textgen, accessories, generation…

OfficialApache-2.0Auto-check passed

Install Mps Language Aspects Overview

skills CLI
$ npx skills add JetBrains/MPS --skill mps-language-aspects-overview -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install JetBrains/MPS mps-language-aspects-overview --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/JetBrains/MPS.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/mps-language-aspects-overview .claude/skills/mps-language-aspects-overview && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
mps-language-aspects-overview
GitHub stars
1.7k
Token cost
~2.3k tokens
SKILL.md length
890 words
Files
2 (incl. references)
Skills in repo
41
Repo updated
First seen
Licence
Apache-2.0

At a glance

Entry point for authoring or modifying an MPS language — index of all aspects (structure, editor, constraints, behavior, typesystem, intentions, actions, generator, textgen, accessories, generation…

  • Works in 9 steps: Structure — concepts, properties,… → Editor — notation, cell layouts,… → Constraints — property validators,… → …
  • SKILL.md covers Loading companion skills, Critical Directives, Aspects and Where to Find… and Typical Authoring Order, plus 4 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Mps Language Aspects Overview is an agent skill from JetBrains/MPS, published by the product's own GitHub organization. Entry point for authoring or modifying an MPS language — index of all aspects (structure, editor, constraints, behavior, typesystem, intentions, actions, generator, textgen, accessories, generation plans), the recommended authoring order, cross-aspect call patterns, dependency/rebuild rules, and validation flow. Start here when defining a new language or when you do not know which aspect-specific skill applies.

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/aspect-model-stereotypes.md`).

It works with JetBrains IDEs. The repository describes itself as: JetBrains Meta programming System. The licence is Apache-2.0.

Example prompts

  • “/mps-language-aspects-overview”

Workflow steps

9 steps, taken from the first numbered list in SKILL.md.

  1. Structure — concepts, properties, children, references, inheritance.
  2. Editor — notation, cell layouts, projections; iterate alongside sample models.
  3. Constraints — property validators, reference scopes, placement rules.
  4. Behavior — concept methods/constructors; callable from any aspect.
  5. Typesystem & checking — types, subtyping, semantic errors with quick fixes.
  6. Intentions — alt-enter refactorings and shortcuts.
  7. Generator — transform to a target language (often BaseLanguage).
  8. TextGen — only if the target is plain text the language itself emits.
  9. Accessories / runtime / dependencies — wire into the .mpl, ensure consumers can find everything.

What it can do on your machine

Read from SKILL.md and the folder at commit 3e9cfcd. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Mps Language Aspects Overview loads about 2.3k tokens when it runs, and up to ~4.5k if it reads all its reference files. Until then it costs about 111 tokens; SKILL.md has 890 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~111
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~4.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from JetBrains/MPS at commit 3e9cfcd, republished under its Apache-2.0 licence (© JetBrains). 890 words, ~2,321 tokens.

Download SKILL.mdSave it as .claude/skills/mps-language-aspects-overview/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
mps-language-aspects-overview
description
Entry point for authoring or modifying an MPS language — index of all aspects (structure, editor, constraints, behavior, typesystem, intentions, actions, generator, textgen, accessories, generation plans), the recommended authoring order, cross-aspect call patterns, dependency/rebuild rules, and validation flow. Start here when defining a new language or when you do not know which aspect-specific skill applies.
type
reference

MPS Language Aspects — Overview

Loading companion skills

Companion names in this skill are lazy dependencies: load only those relevant to the current task. If this skill came from an MCP server, use the host's skill loader to resolve the companion's unique discovered entry URI on the same host-assigned originating server. If the host has no server-backed skill loader, stop and report that limitation; do not silently fall back to a filesystem copy. If this skill came from a filesystem catalog, load the named sibling from that same catalog at <skills-root>/<skill-name>/SKILL.md, even if remote skill loaders are also available. Do not invent a tool name or server endpoint.

An MPS language is a collection of aspects, each a separate model inside the language module. Together they define syntax, semantics, UI, and output. Edit each aspect through its own language (its DSL). This skill is the router; each aspect names a dedicated companion skill.

Critical Directives

  • Always prefer MPS MCP tools over hand-editing .mps XML. Hand edits can silently corrupt model files.
  • Keep aspect rules thin and declarative — push logic into behavior methods, then call them from any aspect.
  • When something in a consumer is wrong, re-check the root cause on the language side (structure / generator / typesystem) before patching generated Java.
  • Choose a modularity strategy before authoring when this language must relate to others — reference, extend, embed, or adapt them. The kind you pick (referencing / extension / reuse / embedding) changes how you use structure, constraints, typesystem, and generator. See mps-language-modularity.

Aspects and Where to Find Detailed Guidance

AspectAspect ID / StereotypeModel fileLanguage DSLDetailed skill
Structurestructuremodels/structure.mpsjetbrains.mps.lang.structuremps-aspect-structure-concepts
Editoreditormodels/editor.mpsjetbrains.mps.lang.editormps-aspect-editor, mps-aspect-editor-menus-and-keymaps
Constraintsconstraintsmodels/constraints.mpsjetbrains.mps.lang.constraintsmps-aspect-constraints
Behaviorbehaviormodels/behavior.mpsjetbrains.mps.lang.behaviormps-aspect-behavior
Typesystem & Checkingtypesystemmodels/typesystem.mpsjetbrains.mps.lang.typesystemmps-aspect-typesystem
Intentionsintentionsmodels/intentions.mpsjetbrains.mps.lang.intentionsmps-aspect-intentions
Actionsactionsmodels/actions.mpsjetbrains.mps.lang.actionsmps-aspect-actions
Generator@generator (stereotype)generator/template/main@generator.mpsjetbrains.mps.lang.generatormps-aspect-generator
TextGentextGenmodels/textGen.mpsjetbrains.mps.lang.textGenmps-aspect-textgen
DataflowdataFlow (camelCase)models/dataFlow.mpsjetbrains.mps.lang.dataFlowmps-aspect-dataflow
Migrationsmigrationmodels/migration.mpsjetbrains.mps.lang.migrationmps-aspect-migrations
Enhancement scriptsscriptsmodels/scripts.mpsjetbrains.mps.lang.scriptmps-aspect-migrations
Find UsagesfindUsages (camelCase)models/findUsages.mpsjetbrains.mps.lang.findUsages—
Refactoringsrefactoringsmodels/refactorings.mpsjetbrains.mps.lang.refactoring—
IDE pluginpluginmodels/plugin.mpsjetbrains.mps.lang.pluginmps-ide-plugin
Feedbackfeedbackmodels/feedback.mpsjetbrains.mps.lang.feedback—
Accessories / Dependencies— (no model created).mpl and per-model—mps-aspect-accessories
Code inside bodies—any aspect that holds BLbaseLanguage, smodel, collections, closuresmps-model-manipulation (smodel), mps-collections-and-closures (collections, closures)
Inline node literals—any aspect using quotationsjetbrains.mps.lang.quotationmps-quotations

Aspect IDs are case-sensitive and create models named <langModule>.<aspectId> with no @ suffix. Stereotypes (@generator, @genplan, @tests, @descriptor) are a separate mechanism for non-aspect models. Authoritative table with usage notes and pitfalls: aspect-model-stereotypes.md.

Additional aspects exist (Find Usages, Refactorings, Scopes Provider, Plugin). They follow the same "per-concept rule root + body" pattern — load an applicable companion skill or consult the MPS user guide when needed.

Generation Plans (cross-cutting, not an aspect of a single language) are covered by mps-aspect-generation-plan. Use when you need to control generator ordering, enable cross-model reference resolution with checkpoints, fork generation into parallel branches, or conditionally contribute plans via PlanContribution.

Typical Authoring Order

  1. Structure — concepts, properties, children, references, inheritance.
  2. Editor — notation, cell layouts, projections; iterate alongside sample models.
  3. Constraints — property validators, reference scopes, placement rules.
  4. Behavior — concept methods/constructors; callable from any aspect.
  5. Typesystem & checking — types, subtyping, semantic errors with quick fixes.
  6. Intentions — alt-enter refactorings and shortcuts.
  7. Generator — transform to a target language (often BaseLanguage).
  8. TextGen — only if the target is plain text the language itself emits.
  9. Accessories / runtime / dependencies — wire into the .mpl, ensure consumers can find everything.

Most iteration is circular: structure ↔ editor ↔ constraints ↔ typesystem.

Show full SKILL.md (309 more words)Show less

Cross-Aspect Calls

  • Any aspect body can call behavior methods on nodes (node.m(...)).
  • Typesystem rules call quick-fix intentions via error ... fix { ... } or by referencing QuickFix roots.
  • Generator templates call behavior methods for nontrivial logic and use mapping labels for cross-template references.
  • Constraints may call behavior methods for reusable checks.
  • Editors may call behavior methods in query/if/cell-model blocks.

Keep logic in behavior methods; keep aspect rules thin and declarative.

MCP Tools You'll Use Often

  • Exploration: mps_mcp_get_project_structure, mps_mcp_search_concepts, mps_mcp_get_concept_details, mps_mcp_print_node.
  • Authoring: mps_mcp_create_root_node, mps_mcp_insert_root_node_from_json, mps_mcp_update_node, mps_mcp_parse_java_and_insert.
  • Structure-specific: mps_mcp_alter_structure (CREATE_CONCEPTS, CREATE_ENUM, UPDATE_CONCEPT_*), mps_mcp_query_structure (inheritance/aspect queries); example nodes of a concept via mps_mcp_query_nodes (FIND_INSTANCES).
  • Modules/models: mps_mcp_create_module, mps_mcp_create_model, mps_mcp_model_dependency, mps_mcp_model_used_language, mps_mcp_module_dependency.
  • Validation: mps_mcp_check_root_node_problems, language/module build via IDE MCP.

Dependencies and Rebuilds

After adding/changing:

  • Concepts (structure) — downstream aspects' references by concept may break; validate them. Rebuild language.
  • Behavior method signatures — all callers (generator, typesystem, constraints, intentions, editor queries) must be re-validated. Rebuild language.
  • Generator templates — rebuild generator module (it's separate from the language module).
  • Runtime solutions — rebuild the runtime solution; consumers pick up changes on next regeneration or reload.
  • After large changes: rebuild the language module (MAKE, rebuild:true); runtimeReady:true means the runtime registry is fresh.

Validation Flow

  1. mps_mcp_check_root_node_problems on edited roots / aspect models, or on the language module to sweep every aspect (and its generator) in one call — catches concept-level problems.
  2. Build the language module (mps_mcp_alter_nodes MAKE, rebuild:true; runtimeReady:true means MPS has reloaded it) — catches compile errors in generated descriptors.
  3. Regenerate a sample model — catches generator/textgen issues.
  4. Ask the engine on a sandbox root (mps_mcp_check_root_node_problems, mps_mcp_query_nodes GET_TYPE, mps_mcp_query_types IS_SUBTYPE / EXPLAIN_TYPE) instead of inspecting it in the MPS UI — catches typing and checking issues; mps-aspect-typesystem Common-Path step 9 has the scratch-model recipe. Editor / usability issues still need a look in MPS.

When something in a consumer is wrong, always re-check the root cause on the language side (structure / generator / typesystem) before patching generated Java.

© JetBrains, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in .agents/skills/mps-language-aspects-overview of JetBrains/MPS.

  • SKILL.md
  • references/aspect-model-stereotypes.md

Open the folder on GitHubat commit 3e9cfcd

Compare with similar skills

Mps Language Aspects Overview next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Mps Language Aspects Overview compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Mps Language Aspects Overview this skillJetBrains/MPS1.7k—~2.3kAutomated safety check: PassApache-2.0
Doc SyncJetBrains/ideavim10k2 repos~2.6kAutomated safety check: PassMIT
Evals Contextzgsm-ai/costrict4.4k1 repos~1.9kAutomated safety check: PassApache-2.0
ChangelogJetBrains/ideavim10k1 repos~2.7kAutomated safety check: PassMIT
Youtrack CommunityJetBrains/intellij-community21k—~3.2kAutomated safety check: NotesCustom licence
Compose Multiplatform Patternsmonta-app/ocpp-emulator1805 repos~2kAutomated safety check: PassApache-2.0

Similar skills

  • Doc Sync

    JetBrains/ideavim

    Official

    Keeps IdeaVim documentation in sync with code changes. An agent skill from JetBrains/ideavim.

    10k GitHub starsUsed in 2 repos~2.6k tokens
    DevelopmentAuto-check passed
  • Evals Context

    zgsm-ai/costrict

    Provides context about the CoStrict evals system structure in this monorepo.

    4.4k GitHub starsUsed in 1 repo~1.9k tokens
    AI & LLM EngineeringAuto-check passed
  • Changelog

    JetBrains/ideavim

    Official

    Maintains the IdeaVim changelog (CHANGES.md). An agent skill from JetBrains/ideavim.

    10k GitHub starsUsed in 1 repo~2.7k tokens
    DevelopmentAuto-check passed
  • Youtrack Community

    JetBrains/intellij-community

    Official

    YouTrack CLI for a community checkout; the monorepo uses youtrack.

    21k GitHub stars~3.2k tokensUpdated today
    DevelopmentAuto-check: notes
  • Compose Multiplatform Patterns

    monta-app/ocpp-emulator

    Compose Multiplatform and Jetpack Compose patterns for KMP projects — state management, navigation, theming, performance, and platform-specific UI.

    180 GitHub starsUsed in 5 repos~2k tokens
    MobileAuto-check passed
  • Compare Python Typecheckers

    JetBrains/intellij-community

    Official

    Compare Python type inference with ty, pyrefly, and basedpyright.

    21k GitHub stars~617 tokensUpdated today
    Auto-check passed

More from JetBrains/MPS

All 41 skills in this repo
  • Official

    Analyze an MPS language by name — discover concepts, properties, references, children, aspects (editor/constraints/behavior), metadata, and answer type questions (is A a subtype of B, common…

    1.7k GitHub stars~1.8k tokensUpdated yesterday
    Auto-check passed
  • Mps Node Editing

    JetBrains/MPS

    Official

    Add, update, or delete MPS nodes using JSON blueprints — covers the unified blueprint format, staged construction for large subtrees, validation, and reference repair.

    1.7k GitHub stars~5.1k tokensUpdated yesterday
    Auto-check passed
  • Official

    Open an MPS project in a running or freshly started MPS instance when MCP tools fail because no project is open (welcome screen), close an open project with mpsmcpcloseproject, or create a new empty…

    1.7k GitHub stars~2.2k tokensUpdated yesterday
    Auto-check passed
  • Mps MCP Workflow

    JetBrains/MPS

    Official

    Complete JetBrains MPS workflow guide for DSL projects — models, languages, generators, node JSON blueprints, type queries, validation, MPS MCP tool usage, and the index of companion skills.

    1.7k GitHub stars~6.6k tokensUpdated yesterday
    Auto-check passed
  • Bugfix Workflow

    JetBrains/MPS

    Official

    Structured MPS bugfix workflow driven by a YouTrack issue ID — preflight tool checks, version/branch derivation, parallel-agent problem analysis, solution design, branch creation, implementation…

    1.7k GitHub stars~4.4k tokensUpdated yesterday
    Auto-check passed
  • Official

    Define concepts, interface concepts, enumerations, and constrained data types in an MPS language's structure aspect.

    1.7k GitHub stars~2.8k tokensUpdated yesterday
    Auto-check passed

Works with

Questions about Mps Language Aspects Overview

What does Mps Language Aspects Overview do?

Entry point for authoring or modifying an MPS language — index of all aspects (structure, editor, constraints, behavior, typesystem, intentions, actions, generator, textgen, accessories, generation…. Mps Language Aspects Overview is an agent skill from JetBrains/MPS, published by the product's own GitHub organization. Entry point for authoring or modifying an MPS language — index of all aspects (structure, editor, constraints, behavior, typesystem, intentions, actions, generator, textgen, accessories, generation plans), the recommended authoring order, cross-aspect call patterns, dependency/rebuild rules, and validation flow.

How do I install Mps Language Aspects Overview in Claude Code?

Run `npx skills add JetBrains/MPS --skill mps-language-aspects-overview -a claude-code`. Or copy the skill folder (.agents/skills/mps-language-aspects-overview in JetBrains/MPS) into .claude/skills/mps-language-aspects-overview in your project. Claude Code loads it when a task matches its description.

How do I install Mps Language Aspects Overview in Codex?

Run `npx skills add JetBrains/MPS --skill mps-language-aspects-overview -a codex`. Or copy the skill folder (.agents/skills/mps-language-aspects-overview in JetBrains/MPS) into .agents/skills/mps-language-aspects-overview in your project. Codex loads it when a task matches its description.

Can I use Mps Language Aspects Overview in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add JetBrains/MPS --skill mps-language-aspects-overview -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/mps-language-aspects-overview, .gemini/skills/mps-language-aspects-overview, .github/skills/mps-language-aspects-overview and .opencode/skills/mps-language-aspects-overview in your project.

What does Mps Language Aspects Overview need to run?

SKILL.md names no scripts, command-line tools or credentials: Mps Language Aspects Overview is instructions for the agent only.

Does Mps Language Aspects Overview access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Mps Language Aspects Overview safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Mps Language Aspects Overview use?

Mps Language Aspects Overview is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Mps Language Aspects Overview use?

About 2.3k tokens (SKILL.md is roughly 9.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.2k tokens, read only when the agent opens those files.

What are the alternatives to Mps Language Aspects Overview?

Skills that share tags, products or a category with Mps Language Aspects Overview: Doc Sync (JetBrains/ideavim, 10k stars), Evals Context (zgsm-ai/costrict, 4.4k stars), Changelog (JetBrains/ideavim, 10k stars) and Youtrack Community (JetBrains/intellij-community, 21k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Mps Language Aspects Overview?

JetBrains (a GitHub organization, an official publisher) maintains it in JetBrains/MPS, which has 1,661 GitHub stars. The repository holds 41 skills in this directory. The repository was last updated on October 8, 2026.

Source: JetBrains/MPS on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.