| name | mps-language-analysis |
| description | Analyze an MPS language by name — discover concepts, properties, references, children, aspects (editor/constraints/behavior), and metadata. Use when investigating an unfamiliar language, exploring concept structure, or finding sample nodes to use as templates for JSON blueprints. |
| type | reference |
MPS Language Analysis
Workflow for inspecting an MPS language from a name (e.g. jetbrains.mps.lang.core). Returns concepts, metadata, structural info, and pointers to declarations and sample nodes.
Critical Directives
- Use the fully qualified language name (e.g.
jetbrains.mps.lang.core) — single-letter shorthand (j.m.l.core) requires resolution first via mps_mcp_get_project_structure.
- For the
qualifiedName returned by mps_mcp_get_concept_details, use it as the concept field in JSON blueprints. It is unambiguous.
Analyzing a Language by Name
- Verify Language: call
mps_mcp_get_project_structure with the language name as a filter (startingPoint: My_Language). This confirms existence and provides the UUID.
- Retrieve Concepts: use
mps_mcp_get_concept_details with the language name in languageRefs. Both conceptRefs and languageRefs accept either one value or a JSON-array string; omit the unused selector.
- Extract Data: the response includes: