McpWorldTools.h header

#include <ew/app/McpWorldTools.h>

Namespace ew::app

Functions

void ew::app::registerMcpWorldTools(McpServer &server, Workspace &workspace, McpChangeLog &log)

Registers the D3 world/codex tool family (docs/MCP_SERVER.md §3) on server: get_project_overview, search, get_entity, list_category, get_relationships, create_category, create_entity, update_entity, delete_object, merge_entities, set_visibility, add_comment, and list_comments.

Reads span the project plus its mounted libraries and answer in compact, names-first Markdown; mutating tools run through runMcpMutation (one undo group + save per call, appended to log) and validate fully before pushing any command. Refusals are honest tool results, never protocol errors: an ambiguous name lists the choices (disambiguate with the tool's "id" argument), an object marked "Exclude from AI" is invisible to enumerating reads and refused by name with "excluded from AI", and a mounted-library object cannot be changed from this server. workspace and log must outlive server.