openpencil/crates
Kayshen-X e8cf002a7f feat(mcp): expose UIKit components as insert_<comp> MCP tools
Closes the architectural piece of the "MCP element toolset" P1 gap
(TS pen-mcp ships ~100 add_card_*/add_toast_* element tools).

- op-editor-core: new `EditorCommand::InstantiateKitComponent`
  variant + applier branch that calls
  `EditorState::instantiate_kit_component` with the requested
  drop point (defaults to (0, 0)).
- op-mcp: `element_tools.rs` — `InsertKitComponent` per-component
  tool returning `OkWithCommand(_, InstantiateKitComponent)`;
  `insert_kit_component_tools(state)` walks every loaded kit;
  `element_tool_schemas(state)` emits the matching tools/list
  JSON. Tool names sanitize dashes: `insert_btn_primary`,
  `insert_card_basic`, etc.
- op-host-desktop: `rebuild_registry` chains the dynamic tools
  in; `tools_list_response` takes EditorState and appends the
  dynamic schemas next to TOOL_SCHEMAS.
- op-editor-core: tidies the empty-pages `ensure_pages` guard to
  `is_none_or`.

Result: 6 starter-kit components → 6 working MCP tools. The 100-tool
catalog parity is now a data fill-in (more components in op-editor-
core/uikit.rs auto-register as more MCP tools).
2026-05-21 21:55:44 +08:00
..
op-acp style: clear clippy lints for the workspace -D warnings gate 2026-05-17 23:12:16 +08:00
op-ai feat(ai): chat image attachments + per-provider thinking/effort 2026-05-17 22:44:28 +08:00
op-ai-skills style: clear clippy lints for the workspace -D warnings gate 2026-05-17 23:12:16 +08:00
op-app refactor(rust): add op-app composition-root crate 2026-05-16 23:57:03 +08:00
op-cli feat: close six TS-parity gaps in the Rust shell 2026-05-17 13:03:11 +08:00
op-codegen feat(editor): add Design-MD panel and complete i18n coverage 2026-05-19 22:29:22 +08:00
op-editor-core feat(mcp): expose UIKit components as insert_<comp> MCP tools 2026-05-21 21:55:44 +08:00
op-editor-ui feat(editor): add UIKit component-browser panel 2026-05-21 21:24:12 +08:00
op-figma feat(editor): add Design-MD panel and complete i18n coverage 2026-05-19 22:29:22 +08:00
op-git feat(editor): add Design-MD panel and complete i18n coverage 2026-05-19 22:29:22 +08:00
op-host-desktop feat(mcp): expose UIKit components as insert_<comp> MCP tools 2026-05-21 21:55:44 +08:00
op-host-native feat(editor): add UIKit component-browser panel 2026-05-21 21:24:12 +08:00
op-host-web feat(ai): polish chat panel with streaming, tool-calls, thinking, images 2026-05-18 08:23:31 +08:00
op-i18n feat(editor): add UIKit component-browser panel 2026-05-21 21:24:12 +08:00
op-mcp feat(mcp): expose UIKit components as insert_<comp> MCP tools 2026-05-21 21:55:44 +08:00
op-opmerge feat(editor): add Design-MD panel and complete i18n coverage 2026-05-19 22:29:22 +08:00
op-pen-loader style: apply rustfmt across the AI-subsystem crates 2026-05-17 22:50:27 +08:00
wasm-libc-shim fix: clear clippy -D warnings across the workspace 2026-05-17 01:26:29 +08:00
CLAUDE.md docs: fix stale i18n + renderer paths flagged by Codex review 2026-05-16 15:45:54 +08:00