Skip to main content

Built-in Tools

Give an agent (or squad member) access beyond its uploaded files.

ToolDoes
web_searchSearch the web for current information.
scrape_urlFetch and read a specific page.
parse_documentExtract text from a document at a URL.
from custodian_labs import Custodian

app = Custodian(
model="gpt-4o",
system_prompt="Answer using current web results when they help. Cite sources.",
tools=["web_search", "scrape_url"],
).deploy()

print(app.chat("What changed in the latest OpenAI API release?").response)

.with_tools([...]) sets the same list with a chained call. On a squad member, pass tools= to that Custodian.

Tools vs. data sources

Data sourceTool
Stable knowledge you have as filesCurrent or external information
Retrieval grounded in specific docsLook something up on demand

Combine both on one agent if you need to. Each tool call is an extra round trip — tell the agent in its prompt when to reach for one.

External connections

Gmail (read / send / reply) is coming soon.

Next

Custodian Squads · Guide: Use built-in tools