Sasha MCP reference

getBlueprint

Read a blueprint

A blueprint is the plan for a kind of brain (business, site): the full list of documents it should have. With no type, lists the blueprints. With a type, returns its documents (file, title, ring, spine domains, out-of-date rule, what it asks).

Arguments

ArgumentTypeRequiredDescription
typestringoptionalBlueprint id, for example "business" or "site" (the latest version), or "site@1" for one version; omit to list the blueprints

Scopes

knowledge:read

Annotations

  • Read only: yes
  • Destructive: no

When to use

Call getBlueprint to learn what a kind of brain should contain, for example before you draft a missing document that getBrain reported.

A blueprint is the plan for one kind of brain, such as a business or a website. It has a version (site@1) and the full list of documents that kind of brain should have. A brain's own brain.md names its blueprint and lists only its differences: documents it adds and documents it drops.

The tool needs the knowledge:read scope.

  • Without type, it lists the latest version of each blueprint: id, ref (id and version, the value a card puts in blueprint), version, versions (every version this release has), title, parent (the kind of brain this one sits under), description, the number of documents and the rings used.
  • With type, it returns one blueprint: site gives the latest version, site@1 gives that version. Each document has its file name, title, ring, deepens (the Context Spine domains it covers, by number), outOfDateAfterDays (null means never) and asks (one line on what it should contain). latest is the newest version of that kind, and text is the whole blueprint.md.
  • This release has two blueprints. business is the Context Spine: twenty documents in five named rings. site describes one website and sits under a business brain.
  • Blueprints ship with Sasha and change only with a new release.

Example

{ "type": "site" }

The response below shows 2 of the 14 documents, and the text value is shortened.

{
  "blueprint": {
    "id": "site",
    "ref": "site@1",
    "version": 1,
    "latest": "site@1",
    "title": "Website",
    "parent": "business",
    "description": "The site blueprint describes one website. Each document takes a Context Spine domain deeper for this site, so a site brain sits under a business brain. Where the site has no document of its own, the parent business brain may cover the same domain.",
    "rings": [
      { "ring": "Public Context", "stage": "Scope" },
      { "ring": "System Integration", "stage": "Embed" },
      { "ring": "Flow", "stage": "Flow" }
    ],
    "documents": [
      {
        "id": "about", "file": "about.md", "title": "About", "ring": "Public Context", "deepens": [1, 4],
        "outOfDateAfterDays": 365,
        "asks": "Who is behind the site, what they do, and the story the site tells about them"
      },
      {
        "id": "voice", "file": "voice.md", "title": "Voice", "ring": "Public Context", "deepens": [13],
        "outOfDateAfterDays": 365,
        "asks": "How the site sounds: tone, words to use, and words never to use"
      }
    ],
    "text": "---\nblueprint:\n  id: site\n  version: 1\n  title: Website\n  parent: business\ndocuments:\n  - id: about\n..."
  }
}

Refusals and what to do

  • Error in getBlueprint: Unknown blueprint. Call getBlueprint with no type for the list.: there is no blueprint with that type, or not that version. Call it with no arguments and use a ref from the list.
  • If the connection does not hold knowledge:read, the tool is not in your tool list, and a call to it returns MCP error -32602: Tool getBlueprint not found. Read the permissions section of getDocs. A scope is never added to an existing connection: the person must reconnect, or mint a new token, with knowledge:read.

Related

  • listBrains shows which blueprint each brain uses.
  • getBrain shows the state of each document in one brain.
  • getDocs explains brains in its brains section.
made with bernard

Cookie settings