Tools
Tools let an AI mob find things out and do things, instead of guessing. CraftGPT 2.0 has 13 built-in tools, all named craftgpt:…. Mobs use them in ordinary player chat (not in event reactions).
The built-in tools
| Tool | What it does | Works on |
|---|---|---|
get_world_time |
Time of day, as dawn, noon, dusk, midnight and so on | any mob |
get_weather |
Clear, raining or thundering (the world’s weather, which can differ from what you see in a desert or under cover) | any mob |
get_self |
Its own type, health, world, coordinates and biome | any mob |
get_nearby |
Living things within 30 blocks, nearest first | any mob |
get_location_context |
Biome, dimension, height and light level | any mob |
get_player_info |
The chatting player’s held item, armour and health | needs a chatting player |
get_real_datetime |
The real-world date and time | — |
get_server_stats |
Uptime, players online and TPS | — |
look_at_player |
Turns to face a player | mobs that can walk |
follow_player |
Follows a player for a while (10 seconds by default, 30 max) | mobs that can walk |
stop_following |
Stops following | mobs that can walk |
wander_to |
Walks to a random spot up to 16 blocks away | mobs that can walk |
emote |
A burst of particles above its head: happy, angry, heart or note |
any mob |
- Movement tools don’t work on player-type Citizens NPCs. The mob says it can’t, rather than pretending.
/cg stopends a chat but not a follow; the mob gives up on its own within 30 seconds.- Smaller models sometimes answer from a guess instead of using a tool.
- If a tool fails or times out, the chat carries on; the model is just told it didn’t work.
Owner settings
| Key | Default | What it does |
|---|---|---|
tools.enabled |
true |
Master switch |
tools.per-inference-budget |
5 |
Most tool calls in one reply. Past it, the model is told it’s out and finishes the reply |
tools.tool-timeout-ms |
2000 |
Time limit for one tool |
tools.default-policy.allow |
["craftgpt:*"] |
Which tools are allowed (* is a wildcard; an empty list allows nothing) |
tools.default-policy.deny |
[] |
Which tools are blocked. Deny wins over allow |
tools.real-world.timezone |
"" |
Time zone for get_real_datetime (like Europe/London). Blank = the server’s. An invalid zone is a config error |
tools.actions.follow-max-seconds |
30 |
Longest follow, 1–30 |
tools.actions.wander-max-blocks |
16 |
Furthest wander, 1–16 |
- Blocked tools are named to the model, so it can say “I can’t do that” honestly.
- There’s one policy for the whole server. There’s no per-mob tool setting or
/cg toolscommand in 2.0. /cg reloadupdatesenabled, the budget, the timeout and the policy. The time zone, follow and wander limits, and the nearby radius are only read at startup./cg debugshows each tool call on your action bar.
Other plugins can add their own tools through the API.