Description
JSON key: description
Plain-language meaning of the field — what business fact it captures, units, or constraints agents should respect.
AI metadata is optional, human-readable context on each entity field — stored with your record-type schema and returned to extraction pipelines, MCP agents, and integrators when they fetch entity definitions.
In AnythingGraph, every record type (entity) has fields with a name, type, and required flag. Beyond that, you can attach AI metadata: three text properties that describe the field for machines and humans building extraction or agent workflows.
AI metadata does not change validation rules or storage. It is documentation embedded in the schema so VLMs, MCP tools, and your own ETL jobs know what each column means and where to find values in source material.
All three are optional strings. Empty values are omitted or stored as blank; they do not block ingest or row creation.
| Source | When to use |
|---|---|
| Dashboard → Entity structure | Custom record types; edit anytime; best for iterative VLM tuning |
| Playbook JSON (catalog) | Ship defaults with starter packs under playbook/playbooks/ |
| Data-layer API / MCP |
POST /entities, PUT /entities/:id, or MCP
create_entity / update_entity with
description, example, extraction_hint in each field object
|
get_entity returns full field definitions including AI
metadata for tool-using assistants.
GET /api/entities/:id (dashboard) or
GET /entities/:id (data-layer) expose the same properties.
{
"field_name": "invoice_number",
"field_type": "TEXT",
"is_required": true,
"is_identifier": true,
"description": "Unique invoice identifier from the vendor",
"example": "INV-2024-0042",
"extraction_hint": "Top-right of page 1, labeled Invoice #"
}
# Full entity with AI metadata on every field
curl -s http://127.0.0.1:5180/api/entities/1
# MCP (agent host)
# list_entities → get_entity(entity_id)