# create-toolset

> Claude/Codex skill by [@epicgames](https://omgskills.com/library/epicgames/index.md) · 1.6k stars · Updated 2026-09-17

Use this skill when authoring or extending an Unreal Engine toolset, a class of static, AI-callable functions registered with \`ToolsetRegistry\` and exposed through the unreal-mcp server. Trigger when the user wants to add, expose, or register a new tool method, create a new toolset, or extend an existing one such as \`BlueprintTools\`, \`StaticMeshTools\`, \`ObjectTools\`, \`LevelTools\`, or \`MaterialTools\`. Concrete triggers: 'add a tool to X', 'expose this via MCP', 'register a function so Claude/the agent can call it', 'wire this into the toolset registry', 'create a new toolset for Y', 'add a Python toolset', 'make this AI-callable'; adding a \`static\` method to a \`\*Tools.cpp/.h/.py\` file; editing files under a \`Toolsets/\` folder; designing tool parameters, return types, or struct schemas for a toolset. SKIP for: invoking existing tools at runtime (use unreal-mcp instead), authoring an Agent Skill (use unreal-skill), generic refactors that happen to touch a toolset file but don't add or redesign a tool, or unrelated uses of the word 'toolset'.

## Install

```sh
git clone https://github.com/EpicGames/unreal-engine-skills-for-claude-code-plugin /tmp/unreal-engine-skills-for-claude-code-plugin && ln -s /tmp/unreal-engine-skills-for-claude-code-plugin/skills/create-toolset ~/.claude/skills/create-toolset
```

## From README

Create Toolset You are authoring or extending an Unreal Engine toolset: a collection of static, AI-callable functions registered with the ToolsetRegistry and exposed through the MCP server. The goal is to expand the surface of things Claude can do inside the editor. Principles A good toolset is: Clean: Design the simplest API that can do useful work in the domain. Don't mirror Unreal's existing APIs directly; they're often unnecessarily complex. A good heuristic: would a technical artist understand this without reading the implementation? Complete: Support CRUD symmetry. If you can set a thing, you should be able to get it. If there's a create, there should be a delete. Getters without setters are fine when mutation isn't possible or useful. Composable: Use consistent types for the same kinds of operation across the toolset. If getgraph() returns a Graph, then getgraphnodes() should accept a Graph. Functions should combine naturally to produce more complex results.

## Links

- HTML page: https://omgskills.com/library/epicgames/unreal-engine-skills-for-claude-code-plugin/skills/create-toolset/
- GitHub: https://github.com/EpicGames/unreal-engine-skills-for-claude-code-plugin
- Author: [@epicgames](https://omgskills.com/library/epicgames/index.md)

## More from this repo

- [unreal-mcp](https://omgskills.com/library/epicgames/unreal-engine-skills-for-claude-code-plugin/skills/unreal-mcp/index.md) — Used to perform actions inside an Unreal Engine project via a live-editor MCP connection.
   - [@epicgames](https://omgskills.com/library/epicgames/index.md) · 1.6k stars
- [unreal-skill](https://omgskills.com/library/epicgames/unreal-engine-skills-for-claude-code-plugin/skills/unreal-skill/index.md) — Used when creating, editing, or reviewing an Unreal Engine Agent Skill, a named bundle of instructions registered with...
   - [@epicgames](https://omgskills.com/library/epicgames/index.md) · 1.6k stars
