# Agent-ready schemas

[](/en/rag/agent-ready-schemas.html.md "View as Markdown") 

Agents will increasingly be the users of search applications. They differ from the typical human user in two ways:

- they need all the information on how to use a particular application in their context
- they can use that information to generate complex, high-precision queries to solve tasks

Vespa provides the information agents need as a skill available on container endpoints. To enable it, add the `schemas` skill to `services.xml` in your search container cluster:

```xml
<services>
    <container id="...">
        <search/>
        <skills><schemas/></skills>
    </container>
</services>
```

With this in place, you can point agents to `[endpoint]/skills/v1/schemas` so they can build precise queries against your search application. The skill provides information on which schemas, fields, rank profiles, and inputs are available, their types, match modes, and which embedder to use for fields whose embeddings are created by Vespa during indexing.

## Schema explanations

In addition to the default information in the skill, you can provide _explanations_ to give agents information that can't be derived from the schema itself:

```vespa-schema-language
schema article {

    explanation {
        Scientific articles imported from pdf archives. 
        Individual fields denote whether the article is peer
        reviewed, when it was published, by whom and so on. Titles,
        abstracts and full text are searchable
        both lexically and as multi-vector representations, 
        see fields for details.
    }

    document {
        field publish_date type long {
            indexing: attribute
            explanation: Publish date as an epoch seconds timestamp.
        }
        …
    }

    rank-profile topical {
        explanation {
            Orders articles by broad relevance to the described concept,
            emphasizing semantic matching while ranking exact lexical
            matches higher.

            @input query(embedding) the concept as a single embedding 
            @input query(freshness) the weight (0-1) to give to recency
                                    among topical matches
        }
        …
    }

}
```

Explanations can be added on schemas, fields, and rank profiles, and on rank profiles they can also contain explanations for the inputs to the profile. See the [schema reference](../reference/schemas/schemas.html).

Explanations should be used when there is _additional relevant information to provide_, such as the range and unit of values of a field, what are suitable use cases for a rank profile, and similar. They should not explain what's obvious, or repeat information that is provided automatically, such as the type.

 Copyright © 2026 - [Cookie Preferences](#)

