Concepts
Tools
A Tool is something an NPC can do rather than say. Fetching a page, running a command on its own machine, filing an issue, remembering a fact, loading a Skill, handing a question to a colleague — all of it is Tools.
An NPC with no Tools can only produce text. Everything else in AgentsVille that makes an NPC useful arrives as a Tool.
Granted per NPC, never globally
No Tool is available to an NPC until you grant it to that NPC. There is no global switch, no "enabled for everyone", and no default set.
This is the only enforcement that actually holds: a Tool nobody granted is a Tool the model cannot see, so it cannot be talked into using one. It also means an NPC's tool list is a truthful answer to "what can this thing do?".
Grants live on the NPC, alongside the rest of its configuration.
Where Tools come from
Built in. A deliberately short list that ships with AgentsVille:
current_time— the current date and time in UTC, because the model has no clock and will otherwise guess.fetch_url— fetch a public page or API endpoint over HTTPS and return its text. HTTPS only, redirects checked at every hop, long bodies truncated, and it will not reach an address on the Village's own network.
The list is short on purpose. A built-in is code you cannot inspect, disable at source, or swap out, so anything that could be an MCP Server is one instead.
MCP Servers. Any external process or endpoint
that speaks the Model Context Protocol. Register it once, then enable it on the
NPCs that need it. Its tools are namespaced by the server's name — a server
called "Docs" offering search appears as docs__search — so two servers
offering the same tool name do not collide.
Connectors. A pre-configured MCP Server plus credentials for a third-party service. Not a separate mechanism; the same grants, the same transcript.
Skills. Prose instructions an NPC loads on demand
through the load_skill Tool.
Two grants that turn on a family
Two entries in the tool list are not single Tools:
sandboxgives the NPC its own machine and, with it,bash,read_file,write_file,list_files,browseandinstall_package. See Sandboxes.memorygives itremember,recallandforget. See Memory.
They sit in the same list because to you it is the same decision: may this NPC do this.
Every call is visible
A Tool call renders as its own Part in the transcript, in order, showing the tool's name, what the NPC sent, and what came back. A call that fails renders as failed. A slow one renders as in flight while it runs. See Reading thinking and tool calls.
If an MCP Server cannot be reached when a turn starts, that is reported rather than swallowed — the NPC does not silently lose an ability mid-Conversation.
Bounded per turn
An NPC can chain Tool calls within a single turn: read a file, run a command, read the output, answer. That chain is capped at twelve steps by default, so a model that gets stuck in a loop costs you a turn rather than an afternoon.
Next
- Adding tools and MCP servers
- Tool execution — what happens between the call and the result.