Agent Template · MCP from OpenAPI (REST) · MCP from GraphQL · tool as step vs LLM-driven

Tool belt: Step Tools vs. LLM-Driven Tools

The two ways to use a tool, in one agent: a GraphQL API turned into an MCP server runs as a flow STEP (it always executes), while a REST API turned into an MCP server is WIRED TO the local model as a capability the model decides to call. A rate-limit gate protects the whole flow.

How It Works

Two ways to use a tool, side by side, behind a rate limit. A GraphQL API turned into an MCP server runs as a fixed step — it always executes, with arguments bound from the input. A REST API turned into an MCP server from its OpenAPI spec is wired to the model's tools port instead, so the model decides whether to call it.

Ask about the weather and the model calls the weather tool; ask about the currency and it doesn't. Pick a local model with tool calling.

Try It

  1. In TheYgent, open Settings → Samples.
  2. Fill the model slots below with models from your registry, then click Install on Tool belt.
  3. Open the installed agent and run it with the example input.
{"code": "DE", "question": "Should I pack a jacket for the capital right now?"}

The Graph

Every node in the agent and where its output goes, read from the template itself.

sample-tool-belt

Node Type Sends its output to
Request input Rate limit
Rate limit ratelimit GraphQL variables (on allow); Assistant (local) (on allow, into req); Rate limited (on deny)
GraphQL variables transform Country facts (step)
Country facts (step) mcp_tool Assistant (local) (into country)
Assistant (local) llm Answer
Weather (LLM-driven) mcp_tool Assistant (local) (on use, as a tool)
Answer output —
Rate limited output —

More Templates

two models in one run

Hybrid reasoner

Two Models in One Run — Two models in one run: a local triage model classifies every request and a router sends easy ones to your local model and hard ones (coding, analysis, long-form) to an API model.

See the template →
data privacy

Private SQL analyst

Data Privacy by Construction — A data-privacy pattern: the API model sees ONLY the database schema and your question — never a single row — and writes a SELECT statement; a deterministic guardrail refuses any statement that does not start with SELECT; the query then runs on a local SQLite MCP server and a LOCAL model reads the rows and answers.

See the template →
human in the loop

Expense approver

Human in the Loop — Human in the loop with a real approve/reject: a local model assesses the risk of an expense request, the run then WAITS durably for a human decision, and a router either executes the (placeholder) payment step or refuses.

See the template →
multi-model consensus

Second opinion

Multi-Model Consensus — Ask a local model AND an API model the same question independently, then a local judge reconciles the two answers into one — flagging any disagreement.

See the template →
PII firewall

PII firewall

Privacy as a Router — A privacy router: a deterministic PII guardrail inspects every request BEFORE any model runs.

See the template →
vision in a pipeline

Visual inspector

Vision in a Pipeline — Vision inside a pipeline, not a chat window: a local vision model inspects an image against your acceptance criteria, emits a structured pass/fail verdict, and a router sends the run down the matching branch — the skeleton of a visual QC line.

See the template →
speech-to-text

Voice desk

Voice In, Voice Out — Voice in, voice out: speech-to-text transcribes the audio, a model answers in spoken prose, text-to-speech reads it back.

See the template →
local image generation

Art department

Local Image Generation — Local image generation in a pipeline: a local model turns your rough brief into one vivid, concrete image prompt, and a local diffusion model paints it.

See the template →
local RAG (pgvector)

Handbook Q&A

Retrieval as a Model Capability — Retrieval as a model capability, fully local: the installer creates a retrieval source in your own Postgres (pgvector), seeds it with a fictional TheYgent company handbook, and wires it to a local model as a search tool the model decides to call — answers cite the handbook section they came from.

See the template →
self-correcting loop

Editorial loop

A Self-Correcting Agent — A self-correcting agent: a bounded LOOP re-runs a writer-critic child agent — draft, harsh self-critique, rewrite — until the child approves its own draft or three rounds are up.

See the template →
parallel fan-out (map)

Batch briefing

Durable Fan-Out with a Cost Ceiling — Durable parallel fan-out with a cost ceiling: a MAP node fans one child agent out per topic (two at a time), collecting a brief for each — a crashed worker resumes only the unfinished branches.

See the template →