CompanyGraph
CompanyGraph: Written once, read by both
¿Debería usar esto?
Calidad y seguridad
Hallazgos (1)
- LOWen list_rules
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"mental-model": {
"url": "https://mcp.companygraph.io/mcp"
}
}
}Puntos de conexión remotos
https://mcp.companygraph.io/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (14)
🟢list_types
Every type the model's schemas declare. Use first, to learn which types exist before listing or describing one. No input. Returns `types`, each with `type`, `name`, `tagline`, `owner` (the type it nests under, or null) and `count`, the entities it holds.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"types": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"name": {
"type": "string"
},
"tagline": {
"type": "string"
},
"owner": {
"type": [
"string",
"null"
]
},
"count": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"type",
"name",
"tagline",
"owner",
"count"
],
"additionalProperties": false
}
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"types",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢describe_schema(type)
One type's schema: its sections as written and its declared relations as data. Use to learn what an entity of the type may hold; for the whole vocabulary use describe_relations. Input: `type`. Returns `url`, the schema's own file, `sections`, and `relations`: owner, owns, references both ways, enums, joins and lists.
Esquema de entrada
{
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "A type name from list_types, such as skill"
}
},
"required": [
"type"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"type": {
"type": "string"
},
"name": {
"type": "string"
},
"tagline": {
"type": "string"
},
"url": {
"type": [
"string",
"null"
]
},
"sections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"heading": {
"type": "string"
},
"text": {
"type": "string"
},
"tables": {
"type": "array",
"items": {
"type": "object",
"properties": {
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"rows": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"required": [
"columns",
"rows"
],
"additionalProperties": {}
}
}
},
"required": [
"heading",
"text",
"tables"
],
"additionalProperties": {}
}
},
"relations": {
"type": "object",
"properties": {
"owner": {
"type": [
"string",
"null"
]
},
"owns": {
"type": "array",
"items": {
"type": "string"
}
},
"references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"via": {
"type": "string"
},
"to": {
"type": [
"string",
"null"
]
},
"form": {
"type": "string",
"enum": [
"ref",
"ref?",
"qualifier"
]
},
"by": {
"type": [
"string",
"null"
]
},
"in": {
"type": [
"string",
"null"
]
},
"array": {
"type": "boolean"
},
"required": {
"type": "boolean"
},
"min": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"max": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
}
},
"required": [
"via",
"to",
"form",
"by",
"in",
"array",
"required",
"min",
"max"
],
"additionalProperties": false
}
},
"referencedBy": {
"type": "array",
"items": {
"type": "object",
"properties": {
"from": {
"type": "string"
},
"via": {
"type": "string"
},
"form": {
"type": "string",
"enum": [
"ref",
"ref?",
"qualifier"
]
},
"by": {
"type": [
"string",
"null"
]
},
"in": {
"type": [
"string",
"null"
]
},
"array": {
"type": "boolean"
},
"required": {
"type": "boolean"
},
"min": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"max": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
}
},
"required": [
"from",
"via",
"form",
"by",
"in",
"array",
"required",
"min",
"max"
],
"additionalProperties": false
}
},
"enums": {
"type": "array",
"items": {
"type": "object",
"properties": {
"via": {
"type": "string"
},
"tokens": {
"type": "array",
"items": {
"type": "string"
}
},
"required": {
"type": "boolean"
}
},
"required": [
"via",
"tokens",
"required"
],
"additionalProperties": {}
}
},
"joins": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kind": {
"type": "string"
},
"section": {
"type": "string"
}
},
"required": [
"kind",
"section"
],
"additionalProperties": {}
}
},
"lists": {
"type": "array",
"items": {
"type": "object",
"properties": {
"section": {
"type": "string"
},
"kind": {
"type": "string"
},
"required": {
"type": "boolean"
},
"min": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"section",
"kind",
"required",
"min"
],
"additionalProperties": {}
}
}
},
"required": [
"owner",
"owns",
"references",
"referencedBy",
"enums",
"joins",
"lists"
],
"additionalProperties": false
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"type",
"name",
"tagline",
"url",
"sections",
"relations",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢describe_relations(type, direction, via)
What the schemas declare between types: references with form and cardinality, ownership, enums, joins, list kinds. Use for a diagram or audit; for one type's full schema use describe_schema. Optional `type` narrows every list, `direction` (declares, declared-to, both; needs `type`) one side of relations, `via` relations and enums. Returns those lists, with `forms` and `reading` explaining every term. Not paged.
Esquema de entrada
{
"type": "object",
"properties": {
"type": {
"type": "string"
},
"direction": {
"type": "string",
"enum": [
"declares",
"declared-to",
"both"
]
},
"via": {
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"relations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"from": {
"type": "string"
},
"via": {
"type": "string"
},
"to": {
"type": [
"string",
"null"
]
},
"form": {
"type": "string",
"enum": [
"ref",
"ref?",
"qualifier"
]
},
"by": {
"type": [
"string",
"null"
]
},
"in": {
"type": [
"string",
"null"
]
},
"array": {
"type": "boolean"
},
"required": {
"type": "boolean"
},
"min": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"max": {
"anyOf": [
{
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
{
"type": "null"
}
]
}
},
"required": [
"from",
"via",
"to",
"form",
"by",
"in",
"array",
"required",
"min",
"max"
],
"additionalProperties": false
}
},
"ownership": {
"type": "array",
"items": {
"type": "object",
"properties": {
"owner": {
"type": "string"
},
"owned": {
"type": "string"
}
},
"required": [
"owner",
"owned"
],
"additionalProperties": false
}
},
"enums": {
"type": "array",
"items": {
"type": "object",
"properties": {
"via": {
"type": "string"
},
"tokens": {
"type": "array",
"items": {
"type": "string"
}
},
"required": {
"type": "boolean"
},
"type": {
"type": "string"
}
},
"required": [
"via",
"tokens",
"required",
"type"
],
"additionalProperties": {}
}
},
"joins": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kind": {
"type": "string"
},
"section": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"kind",
"section",
"type"
],
"additionalProperties": {}
}
},
"lists": {
"type": "array",
"items": {
"type": "object",
"properties": {
"section": {
"type": "string"
},
"kind": {
"type": "string"
},
"required": {
"type": "boolean"
},
"min": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"type": {
"type": "string"
}
},
"required": [
"section",
"kind",
"required",
"min",
"type"
],
"additionalProperties": {}
}
},
"forms": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
},
"reading": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "string"
}
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"relations",
"ownership",
"enums",
"joins",
"lists",
"forms",
"reading",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_rules
The rules the model is held to, from the CONVENTIONS.md its core vendors. Use to resolve a rule number that a schema or a refusal cites, such as R9. No input. Returns `tagline`, the file's `url`, and `rules`, each with `rule`, `title` and `part`; describe_rule gives one rule's text.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"tagline": {
"type": "string"
},
"url": {
"type": [
"string",
"null"
]
},
"rules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"rule": {
"type": "string"
},
"title": {
"type": "string"
},
"part": {
"type": [
"string",
"null"
]
}
},
"required": [
"rule",
"title",
"part"
],
"additionalProperties": false
}
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"tagline",
"url",
"rules",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢describe_rule(rule)
One rule as written. Input: `rule`, a number from list_rules such as R9, in either case. Returns `rule`, `title`, `part`, `text` and the file's `url`. An unknown number is refused with the known ones listed.
Esquema de entrada
{
"type": "object",
"properties": {
"rule": {
"type": "string",
"description": "A rule's number from list_rules, such as R9"
}
},
"required": [
"rule"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"rule": {
"type": "string"
},
"title": {
"type": "string"
},
"part": {
"type": [
"string",
"null"
]
},
"text": {
"type": "string"
},
"url": {
"type": [
"string",
"null"
]
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"rule",
"title",
"part",
"text",
"url",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_checks
The checks the model's own gate runs, from the checker release this server was built with. Use to see which rules a script enforces and which are left to a reader. No input. Returns `checks`, each with `name`, `rule` and that rule's `title`, and `ranBy`. A list and no verdict: this server runs none of them.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"checks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"rule": {
"type": "string"
},
"title": {
"type": [
"string",
"null"
]
}
},
"required": [
"name",
"rule",
"title"
],
"additionalProperties": {}
}
},
"ranBy": {
"type": "string"
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"checks",
"ranBy",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢describe_errors
What a refused call looks like. A tool's output schema covers its answers only, so use this once, to branch on refusals or validate them. No input. Returns `errors`, every `code` with `when` it is raised and the JSON Schema of its `details`, and `schema`, the JSON Schema of a whole refusal: `error` with `code`, `message`, `rule`, `details`, beside `model`.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"errors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"code": {
"type": "string",
"enum": [
"unknown_type",
"unknown_entity",
"ambiguous_name",
"unknown_rule",
"invalid_argument",
"invalid_cursor",
"unsupported_snapshot",
"cannot_draw"
]
},
"when": {
"type": "string"
},
"details": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"code",
"when",
"details"
],
"additionalProperties": false
}
},
"schema": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"errors",
"schema",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_entities(type, owner, limit, cursor)
The entities of one type, by id. Use to browse a type; to find an entity by words or by name use search. Input: `type`, optional `owner` (an id) to keep one owner's entities, `limit` (default 50, at most 200) and `cursor`. Returns `entities` with `id`, `type`, `name`, `tagline`, `owner`, and `page`; follow `page.nextCursor` while `page.hasMore`.
Esquema de entrada
{
"type": "object",
"properties": {
"type": {
"type": "string"
},
"owner": {
"description": "An owner's id, to keep its entities",
"type": "string"
},
"limit": {
"description": "Entries per page: 50 by default, clamped to 1–200, so 0 returns one entry and 1000 returns 200.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"cursor": {
"description": "`page.nextCursor` from the previous answer, sent with the same arguments; omit it for the first page.",
"type": "string"
}
},
"required": [
"type"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"type": {
"type": "string"
},
"entities": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
},
"tagline": {
"type": "string"
},
"owner": {
"type": [
"string",
"null"
]
}
},
"required": [
"id",
"type",
"name",
"tagline",
"owner"
],
"additionalProperties": false
}
},
"page": {
"type": "object",
"properties": {
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"returned": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"hasMore": {
"type": "boolean"
},
"nextCursor": {
"type": [
"string",
"null"
]
}
},
"required": [
"total",
"returned",
"hasMore",
"nextCursor"
],
"additionalProperties": false
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"type",
"entities",
"page",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_entity(id, type, name)
One entity as structured data: fields, sections, tables and its references both ways. Use to reason over an entity; for its page as written use fetch. Input: `id`, or `type` and `name`; an ambiguous name is refused with candidate ids. Returns `entity`. Each reference list holds at most 50 edges; `referenceCounts` gives the totals and list_references the rest.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"description": "The entity's id, as any answer gives it",
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"description": "The canonical name, the entity's H1; needs type",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"entity": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
},
"tagline": {
"type": "string"
},
"owner": {
"type": [
"string",
"null"
]
},
"path": {
"type": "string"
},
"url": {
"type": [
"string",
"null"
]
},
"image_url": {
"type": "string"
},
"fields": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"sections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"heading": {
"type": "string"
},
"text": {
"type": "string"
},
"tables": {
"type": "array",
"items": {
"type": "object",
"properties": {
"columns": {
"type": "array",
"items": {
"type": "string"
}
},
"rows": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"required": [
"columns",
"rows"
],
"additionalProperties": {}
}
}
},
"required": [
"heading",
"text",
"tables"
],
"additionalProperties": {}
}
},
"stamp": {
"type": "object",
"properties": {
"kind": {
"type": [
"string",
"null"
]
},
"start": {
"type": [
"string",
"null"
]
},
"end": {
"type": [
"string",
"null"
]
}
},
"required": [
"kind",
"start",
"end"
],
"additionalProperties": {}
},
"references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"from": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"type",
"name"
],
"additionalProperties": false
},
"via": {
"type": "string"
},
"to": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"type",
"name"
],
"additionalProperties": false
},
"attrs": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"type",
"name"
],
"additionalProperties": false
}
]
}
}
},
"required": [
"from",
"via",
"to",
"attrs"
],
"additionalProperties": false
}
},
"referencedBy": {
"type": "array",
"items": {
"type": "object",
"properties": {
"from": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"type",
"name"
],
"additionalProperties": false
},
"via": {
"type": "string"
},
"to": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"type",
"name"
],
"additionalProperties": false
},
"attrs": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"type",
"name"
],
"additionalProperties": false
}
]
}
}
},
"required": [
"from",
"via",
"to",
"attrs"
],
"additionalProperties": false
}
},
"referenceCounts": {
"type": "object",
"properties": {
"references": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"referencedBy": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"references",
"referencedBy"
],
"additionalProperties": false
}
},
"required": [
"id",
"type",
"name",
"tagline",
"owner",
"path",
"url",
"fields",
"sections",
"references",
"referencedBy",
"referenceCounts"
],
"additionalProperties": {}
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"entity",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_references(entity, direction, via, type, limit, ...)
The model's edges, filtered and paged. Use to inspect one entity's relations or one kind of reference without taking whole entities. Optional `entity` (an id), `direction` (out, in, both; needs `entity`), `via`, `type` (the far end's type, or either end's without `entity`), `limit`, `cursor`. Returns `edges`, each `from`, `via`, `to`, `attrs`, and `page`.
Esquema de entrada
{
"type": "object",
"properties": {
"entity": {
"type": "string"
},
"direction": {
"type": "string",
"enum": [
"out",
"in",
"both"
]
},
"via": {
"type": "string"
},
"type": {
"type": "string"
},
"limit": {
"description": "Entries per page: 50 by default, clamped to 1–200, so 0 returns one entry and 1000 returns 200.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"cursor": {
"description": "`page.nextCursor` from the previous answer, sent with the same arguments; omit it for the first page.",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"edges": {
"type": "array",
"items": {
"type": "object",
"properties": {
"from": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"type",
"name"
],
"additionalProperties": false
},
"via": {
"type": "string"
},
"to": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"type",
"name"
],
"additionalProperties": false
},
"attrs": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"type",
"name"
],
"additionalProperties": false
}
]
}
}
},
"required": [
"from",
"via",
"to",
"attrs"
],
"additionalProperties": false
}
},
"page": {
"type": "object",
"properties": {
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"returned": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"hasMore": {
"type": "boolean"
},
"nextCursor": {
"type": [
"string",
"null"
]
}
},
"required": [
"total",
"returned",
"hasMore",
"nextCursor"
],
"additionalProperties": false
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"edges",
"page",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢find_evidence(skill, limit, cursor)
Every edge into one skill, grouped by the type of the page that drew it. Use to check a claimed skill against its evidence. Input: `skill`, an id or canonical name; optional `limit`, `cursor`. Returns `skill`, `evidence` and `page`; a profile's claim arrives via Skills.Skill with its level, an evidence row via Evidence.Skill. Attributes are verbatim.
Esquema de entrada
{
"type": "object",
"properties": {
"skill": {
"type": "string",
"description": "The skill's id or canonical name"
},
"limit": {
"description": "Entries per page: 50 by default, clamped to 1–200, so 0 returns one entry and 1000 returns 200.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"cursor": {
"description": "`page.nextCursor` from the previous answer, sent with the same arguments; omit it for the first page.",
"type": "string"
}
},
"required": [
"skill"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"skill": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
},
"tagline": {
"type": "string"
}
},
"required": [
"id",
"type",
"name",
"tagline"
],
"additionalProperties": false
},
"evidence": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"type": "array",
"items": {
"type": "object",
"properties": {
"from": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"type",
"name"
],
"additionalProperties": false
},
"via": {
"type": "string"
},
"to": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"type",
"name"
],
"additionalProperties": false
},
"attrs": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"type",
"name"
],
"additionalProperties": false
}
]
}
},
"owner": {
"type": [
"string",
"null"
]
},
"stamp": {
"type": "object",
"properties": {
"kind": {
"type": [
"string",
"null"
]
},
"start": {
"type": [
"string",
"null"
]
},
"end": {
"type": [
"string",
"null"
]
}
},
"required": [
"kind",
"start",
"end"
],
"additionalProperties": {}
}
},
"required": [
"from",
"via",
"to",
"attrs",
"owner"
],
"additionalProperties": false
}
}
},
"page": {
"type": "object",
"properties": {
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"returned": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"hasMore": {
"type": "boolean"
},
"nextCursor": {
"type": [
"string",
"null"
]
}
},
"required": [
"total",
"returned",
"hasMore",
"nextCursor"
],
"additionalProperties": false
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"skill",
"evidence",
"page",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢search(query, match, type, owner, limit, ...)
Find entities by words, substring or exact name. `match: "words"` needs every query word's stem in name, tagline, fields, sections or cells; `"text"` (default) is a case-insensitive substring over the same; `"name"` the exact canonical name. Optional `type`, `owner`, `limit`, `cursor`. Returns `results` with `id`, `title`, `type`, `matched`, `words` in words mode, and `page`: name matches first, then a listing.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"match": {
"type": "string",
"enum": [
"text",
"name",
"words"
]
},
"type": {
"type": "string"
},
"owner": {
"description": "An owner's id, to keep its entities",
"type": "string"
},
"limit": {
"description": "Entries per page: 50 by default, clamped to 1–200, so 0 returns one entry and 1000 returns 200.",
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"cursor": {
"description": "`page.nextCursor` from the previous answer, sent with the same arguments; omit it for the first page.",
"type": "string"
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"match": {
"type": "string",
"enum": [
"text",
"name",
"words"
]
},
"words": {
"type": "array",
"items": {
"type": "object",
"properties": {
"word": {
"type": "string"
},
"stem": {
"type": "string"
},
"common": {
"type": "boolean"
}
},
"required": [
"word",
"stem",
"common"
],
"additionalProperties": false
}
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
},
"owner": {
"type": [
"string",
"null"
]
},
"tagline": {
"type": "string"
},
"url": {
"type": [
"string",
"null"
]
},
"matched": {
"type": "array",
"items": {
"type": "object",
"properties": {
"where": {
"type": "string",
"enum": [
"name",
"tagline",
"field",
"section",
"table"
]
},
"key": {
"type": [
"string",
"null"
]
}
},
"required": [
"where",
"key"
],
"additionalProperties": false
}
}
},
"required": [
"id",
"title",
"type",
"owner",
"tagline",
"url",
"matched"
],
"additionalProperties": false
}
},
"page": {
"type": "object",
"properties": {
"total": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"returned": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"hasMore": {
"type": "boolean"
},
"nextCursor": {
"type": [
"string",
"null"
]
}
},
"required": [
"total",
"returned",
"hasMore",
"nextCursor"
],
"additionalProperties": false
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"query",
"match",
"results",
"page",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢fetch(id)
One entity's page as written. Use to quote or display the source; for structured fields and references use get_entity. Input: `id`, from search, list_entities or any reference. Returns `id`, `title`, `type`, `url` and `text`, the Markdown source. Takes no name: search with match "name" finds the id.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
},
"url": {
"type": [
"string",
"null"
]
},
"text": {
"type": "string"
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"id",
"title",
"type",
"url",
"text",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢diagram(shape, id, domain, type)
A picture of the model as Mermaid, from its edges or its schemas. Use to show connections; for edges as data use list_references. Input: `shape`; `id`, `domain` or `type` narrow it. Returns `mermaid`, `nodes`, `links`, `title`, `edges`, `omitted`, schema's `everyType`. A process draws each gate's failure dashed, to a phase or one Stop node, outside `nodes`. At most 50 nodes.
Esquema de entrada
{
"type": "object",
"properties": {
"shape": {
"type": "string",
"enum": [
"concepts",
"process",
"neighborhood",
"schema"
]
},
"id": {
"description": "The process to draw, or the entity at the middle of a neighborhood",
"type": "string"
},
"domain": {
"description": "A domain's id, to draw its concepts",
"type": "string"
},
"type": {
"description": "A type, to draw its schema and the types it is declared with",
"type": "string"
}
},
"required": [
"shape"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Esquema de salida
{
"type": "object",
"properties": {
"shape": {
"type": "string",
"enum": [
"concepts",
"process",
"neighborhood",
"schema"
]
},
"title": {
"type": [
"string",
"null"
]
},
"mermaid": {
"type": "string"
},
"nodes": {
"type": "array",
"items": {
"type": "object",
"properties": {
"node": {
"type": "string"
},
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
},
"url": {
"type": [
"string",
"null"
]
}
},
"required": [
"node",
"id",
"title",
"type"
],
"additionalProperties": false
}
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"from": {
"type": "string"
},
"to": {
"type": "string"
},
"label": {
"type": "string"
}
},
"required": [
"from",
"to",
"label"
],
"additionalProperties": false
}
},
"everyType": {
"type": "array",
"items": {
"type": "object",
"properties": {
"via": {
"type": "string"
},
"to": {
"type": "string"
},
"multiplicity": {
"type": "string"
}
},
"required": [
"via",
"to",
"multiplicity"
],
"additionalProperties": false
}
},
"edges": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"omitted": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"model": {
"type": "object",
"properties": {
"commit": {
"type": [
"string",
"null"
]
},
"repo": {
"type": [
"string",
"null"
]
},
"core": {
"type": "string"
},
"parser": {
"type": "string"
}
},
"required": [
"commit",
"repo",
"core",
"parser"
],
"additionalProperties": false
}
},
"required": [
"shape",
"title",
"mermaid",
"nodes",
"links",
"edges",
"omitted",
"model"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Prompts recomendados
find_evidenceget_entitylist_typesfind_evidenceget_entityComunidad
Evidencia