What this shows
An agent composed from the three tool sources a real embedding uses:
- a custom function tool (
add, defined inline with ADK's
functiontool.New),
- MCP servers loaded from
.agents/mcp.json in the working directory
(if present), and
SKILL.md skills from .agents/skills/ (if any).
The agent is asked "What is 17 + 25?" and calls the add tool; the
function-call name prints to stderr, the streamed answer to stdout.
Run it
Needs real Anthropic credentials (the example pins
provider=anthropic):
ANTHROPIC_API_KEY=... go run ./examples/with-tools
MCP + skills loading is best-effort — with no .agents/ directory in
your cwd it just logs and continues.
Key APIs
functiontool.New — google.golang.org/adk/tool/functiontool
agent.WithTools / agent.WithToolsets — github.com/go-steer/core-agent/v2/pkg/agent
mcp.Build — github.com/go-steer/core-agent/v2/pkg/mcp
skills.Load — github.com/go-steer/core-agent/v2/pkg/skills
permissions.FromConfig — github.com/go-steer/core-agent/v2/pkg/permissions
What you should see
→ add
The sum of 17 and 25 is 42.
(the → add line is the model's function call, printed to stderr).
Next