![]() |
ezEngine Release 26.9
|
Exposes the reflection data, so an agent can find out which types exist and what they look like. More...
#include <McpRttiTool.h>

Public Member Functions | |
| virtual void | GetSupportedTools (ezDynamicArray< ezMcpToolDesc > &out_tools) const override |
| Appends the description of every tool that this provider implements. | |
| virtual void | Execute (ezStringView sToolName, const ezVariantDictionary &arguments, ezMcpToolResult &out_result) override |
| Executes one of the tools returned by GetSupportedTools(). | |
Public Member Functions inherited from ezMcpToolProvider | |
| virtual void | OnActivate () |
| Called once, right after the provider was instantiated. Use it to hook into the editor. | |
| virtual void | OnDeactivate () |
| Called once, before the provider is destroyed. | |
Public Member Functions inherited from ezReflectedClass | |
| virtual const ezRTTI * | GetDynamicRTTI () const |
| bool | IsInstanceOf (const ezRTTI *pType) const |
| Returns whether the type of this instance is of the given type or derived from it. | |
| template<typename T > | |
| EZ_ALWAYS_INLINE bool | IsInstanceOf () const |
| Returns whether the type of this instance is of the given type or derived from it. | |
Additional Inherited Members | |
Static Public Member Functions inherited from ezNoBase | |
| static const ezRTTI * | GetStaticRTTI () |
Exposes the reflection data, so an agent can find out which types exist and what they look like.
Split into four narrow tools rather than one, because the codebase has well over a thousand reflected types: a single 'dump everything' call would cost more tokens than a client can spend and would bury whatever was actually asked for. The intended flow is rtti_find_types to narrow down to a few names, then the detail tools for those.
Host independent, hence concrete and living in the Mcp library: reflection is the same system in a game as in the editor, and it is how an agent finds out what a component or a game's own types look like. Whatever the host has registered by the time of the call is what gets reported - in the editor that includes the phantom types ezPhantomRttiManager puts into ezRTTI, which the same traversal picks up without having to know about them.
|
overridevirtual |
Executes one of the tools returned by GetSupportedTools().
| sToolName | The tool to run. A provider with a single tool may ignore this. |
| arguments | The 'arguments' object of the call. Missing and mistyped values are normal - the client is an AI and will get this wrong. Validate and report through out_result. |
Implements ezMcpToolProvider.
|
overridevirtual |
Appends the description of every tool that this provider implements.
Implements ezMcpToolProvider.