Graphory logo

Graphory Labs

Ontology

Graphory's knowledge graph is built on a small, deliberately fixed vocabulary: six generic node types and a curated set of edge names. Industry nuance lives in properties, not in new types. This page is the narrative reference. The authoritative version is whatever describe_schema returns for your org.

Principles

Node types

Six generic types cover the full entity space. Capitalized names are canonical and case-sensitive in the schema.

TypeDefinitionExamples
Person Any individual. Employee, customer, contact, founder, candidate, author.
Organization Any company, team, agency, or group. Customer company, vendor, agency, internal team, trade group.
Activity Any event or action that occurs at a point in time. Email sent, meeting held, invoice issued, transaction booked, deployment shipped.
Asset Any document, file, or resource. Contract PDF, video, spreadsheet, Notion page, physical property, product SKU.
Account Any account, project, or deal. Customer account, sales opportunity, project engagement, bank account, ad account.
Thread A conversation or sequence of related messages. Email thread, Slack channel conversation, support ticket, chat session.
Identifier is a structural type used to attach stable keys such as email addresses, phone numbers, and external handles to a Person or Organization. It exists at the ontology level for identity resolution and is usually hidden from user-facing views.

At runtime, the schema also exposes a few operational types that arise from how the data is built:

These appear in the operational schema returned by describe_schema but are not part of what you create directly. Writes flow into the six generic types; operational types are derived.

Edge vocabulary

Every edge is directional, typed, and carries provenance plus a confidence score. The vocabulary is fixed. To express a more specific relationship, set properties on the existing edge rather than inventing a new name.

Structural

EdgeMeaning
hasContainment or ownership between two graph objects (an Account has an Asset, a Thread has an Activity).
usesOne entity uses or depends on another (a Person uses an Asset).
attached_toAn Asset is attached to an Activity or Thread (for example, a file on an email).
shared_withAn Asset was shared with a Person or Organization.

Employment

EdgeMeaning
works_forA Person is employed by an Organization.
assigned_toA Person is assigned to an Account or Activity.
reports_toA Person reports to another Person in the org chart.
managesA Person manages another Person, an Account, or a team.
ownsA Person or Organization owns an Account or Asset.

Business

EdgeMeaning
works_withGeneric vendor, partner, or collaborator link between an Organization and another party.
customer_ofA Person or Organization is a customer of another Organization.

Activity

EdgeMeaning
sentA Person sent an Activity (an email, a message, a transaction).
receivedA Person received an Activity.
createdA Person created an Asset, Account, or Activity.
modifiedA Person modified an Asset or Account.
involvesAn Activity involves a Person, Organization, Asset, or Account without implying a sender or recipient role.
co_recipientTwo Person nodes appeared together on the same Activity or Thread.

Association

EdgeMeaning
associated_withA meaningful but unspecified link between two entities. Used sparingly; prefer a more specific edge where possible.
knowsTwo Person nodes have evidence of direct interaction.

Identity

EdgeMeaning
has_identifierA Person or Organization has a stable Identifier (email, phone, handle, external ID).

Trust tiers

Every edge carries a confidence score. The platform applies qualitative trust tiers so that stronger claims require stronger evidence:

Specific numeric gates are not published here. They move as the platform learns from corrections, and publishing static numbers would invite adversarial calibration. Your agent sees the live tier configuration for your org via describe_schema.

Authority ordering

Every node and edge records who produced it. When two sources disagree, higher-authority sources win. Authority is ordered from lowest to highest as:

  1. Deterministic rules (the extractor reading structured frontmatter).
  2. AI inference (your agent writing back via write_to_graph).
  3. User corrections (a human explicitly fixing a fact).
  4. Admin overrides (org admins setting ground truth for their graph).

A user correction overrides an AI inference, even when the AI has high confidence. An admin override is final within an org. The full conflict resolution logic is not published; it is part of the schema contract returned by the API.

The canonical source

This page is the narrative reference. The live schema your agent actually uses is whatever describe_schema returns. Call it from any MCP client, or hit GET /schema on the Graph API with your org's API key.

curl
curl https://api.graphory.io/org/YOUR_ORG_ID/schema \
  -H "Authorization: Bearer gs_ak_your_api_key"

The response lists the node types, edge names, and trust tiers currently active for your org. Extraction rules are versioned; when the master ontology accumulates a new pattern, your schema reflects it automatically.