# Context injection

> Add context to a route's Markdown for agents, without touching the page or redeploying.

Source: https://docs.buildonto.dev/control-plane/injection
Section: Dashboard

---

Context injection\[01\]

## Context injection

Say something to agents about a page — terms, caveats, what's changed — without touching the page or redeploying. It's added to the end of the Markdown they get.

### Try it

\[02\]

Route

/

Label _optional — becomes a heading_ContentPrices are in USD and exclude tax. Annual plans get two months free.

 Live Serve Pro or above

What an agent gets for /pricing

\# Pricing
> What this page is about.

\*\*Source:\*\* /pricing

---

…the page's content…

---

### For agents

Prices are in USD and exclude tax. Annual plans get two months free.

Added to every agent request for this route, from the next one.

### Add one

\[03\]

In the dashboard, **Serve → Inject → New injection**. Pick the route, write the content, and save it live or paused. Your site has to be verified first.

FieldWhat it does

RouteThe exact path, after the fixed `/`. `/pricing` and `/pricing/` are different; the home page can't be targeted.

LabelOptional. Becomes a heading above your text in the Markdown.

ContentWhat agents read. No length limit — keep it short anyway.

Live on saveOn by default. Pause it any time without deleting.

One injection per route.

### When it's added

\[04\]

On every Markdown response for that route — agents, and your own `?onto` checks — as long as the site key is set. The middleware asks Onto for it each time; nothing is cached, so an edit is live on the next request.

**It adds a round trip.** The middleware waits for Onto's answer before replying, on every Markdown response for a site with a key — even on Free, where the answer is empty.

### Plans

\[05\]

PlanInjections

FreeYou can see, edit, pause and delete existing ones — agents don't get them

Pro ($19 a month), Business, EnterpriseAdded to agents' Markdown

Copy as Markdown[](/control-plane/injection.md "Open the raw Markdown")

---
## Structured Data (JSON-LD)
```json
{
  "@context": "https://schema.org",
  "@type": "WebSite",
  "name": "Onto Docs",
  "url": "https://docs.buildonto.dev",
  "description": "How to use Onto: serve AI agents Markdown from your Next.js site, call the Read API, connect over MCP, and read the AIO score.",
  "inLanguage": "en",
  "publisher": {
    "@type": "Organization",
    "name": "Onto",
    "url": "https://buildonto.dev"
  }
}
```