Tools and MCP servers
By default a Tares agent has two tools, both routed through the same Tares read path and both
covering the sources of the projects its run is for, unless it names others with sources:
read: one correlated timeline for an entity.stats: counts per value of one label, this window against the window before, largest change first. For a busy stream where reading lines would only show the latest few.
When a project the run is for has skills, the agent also gets the
skill tool, which loads one skill’s instructions by name. Each run records the skills it loaded.
The agent can also end its runs with the conclude tool.
The boundary
By default a Tares agent reads and concludes; it does not act (no restarting, deploying, or ticketing). Connecting external tools moves that boundary for that one agent: tools from an MCP server can act on whatever the server exposes, so you decide per agent which servers it may touch, and every run records what it actually called.
External tools (MCP)
An agent can use tools from external MCP servers alongside its built-in reads. Two steps:
- Register the server under Settings → MCP servers in a project’s Advanced setup; any
project’s agents can then use it: a name, a streamable-HTTP URL, and an
optional auth header (the value is stored as a secret, never shown again; stdio servers are not
supported). The auth value can also point at a stored GitHub credential
(
credential:github/<name>, see Settings), so rotating the token in one place rotates the server too. Under Advanced: extra headers you can add non-secret headers sent with every request; GitHub’s hosted MCP server takesX-MCP-Toolsets: repos,pull_requeststo limit the tools it offers andX-MCP-Readonly: truefor a read-only agent. Test connects live and lists the server’s tools. - Opt the agent in on its form, under External tools: pick any registered server; each selection shows as a removable tag.
At run time, the selected servers’ tools are offered to the model alongside read and stats,
prefixed by server name (github__create_issue). Guardrails:
- A tool result is capped at 8,000 characters, so a verbose server cannot crowd out the evidence.
- A server that is down when the run starts is skipped and logged; the run continues with the tools that remain, and a failed call is returned to the model as an error to reason about.
- Each run records the external tools it called, shown on the run under Runs & findings. That is the audit trail for what an agent touched outside Tares.