Agent-design pattern guidance via 5 hosted read-only tools; Streamable HTTP, no auth, one Release.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Get one summary Card per Atlas Node id: its Hook (one-line summary) and the publisher's claims (thesis, law, when-to-reach, or claim), each citing its source Sections. Use when you hold ids and want their guidance without full text, such as to compare entries. Cards return in request order. Atomic: one unknown or Roadmap-only (unpublished) id refuses the whole batch as batch_not_atomic, naming the rejected ids.
The Nodes to summarize, as bare ids (no '#section') such as atlas_orient candidate ids or atlas_navigate tree ids; Cards return in this order.
true also returns each cited source's content digest and publisher attestation (who, when), plus the Release's digests: a larger response.
Pins this call to the Release (published edition) a prior payload named in 'coherence'; refused as 'revision_changed' if the active Release has changed. Omit for the active Release.
Get one summary Card per Atlas Node id: its Hook (one-line summary) and the publisher's claims (thesis, law, when-to-reach, or claim), each citing its source Sections. Use when you hold ids and want their guidance without full text, such as to compare entries. Cards return in request order. Atomic: one unknown or Roadmap-only (unpublished) id refuses the whole batch as batch_not_atomic, naming the rejected ids.
| Argument | Type | Description |
|---|---|---|
| ids* | array | The Nodes to summarize, as bare ids (no '#section') such as atlas_orient candidate ids or atlas_navigate tree ids; Cards return in this order. |
| provenance | boolean | true also returns each cited source's content digest and publisher attestation (who, when), plus the Release's digests: a larger response. |
| expected_revision | any | Pins this call to the Release (published edition) a prior payload named in 'coherence'; refused as 'revision_changed' if the active Release has changed. Omit for the active Release. |
{
"type": "object",
"required": [
"ids"
],
"properties": {
"ids": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 8,
"minItems": 1,
"description": "The Nodes to summarize, as bare ids (no '#section') such as atlas_orient candidate ids or atlas_navigate tree ids; Cards return in this order.",
"uniqueItems": true
},
"provenance": {
"type": "boolean",
"default": false,
"description": "true also returns each cited source's content digest and publisher attestation (who, when), plus the Release's digests: a larger response."
},
"expected_revision": {
"anyOf": [
{
"type": "string",
"pattern": "^v\\d+\\.\\d+\\.\\d+$"
},
{
"type": "null"
}
],
"default": null,
"description": "Pins this call to the Release (published edition) a prior payload named in 'coherence'; refused as 'revision_changed' if the active Release has changed. Omit for the active Release."
}
},
"additionalProperties": false
}List where one Atlas Node references other entries (outbound) and where they reference it (inbound), outbound first. Use to find related entries or what points at this one. Each occurrence gives direction, class, source Section, and the far end's Hook (one-line summary), plus its id and title unless the class is 'undisclosed' (unpublished and unannounced). Results are paged: follow the cursor to the end before concluding nothing points here. An unknown or Roadmap-only (unpublished) subject is refused as invalid_argument.
| Argument | Type | Description |
|---|---|---|
| bound | integer | How many relationship occurrences this call returns; continue with cursor until the page is no longer truncated. |
| cursor | any | scope.next_cursor from a prior atlas_links page; repeat the same other arguments. |
| subject* | string | A bare Node id (no '#section'), e.g. an atlas_orient candidate id or a Card id. |
| expected_revision | any | Pins this call to the Release (published edition) a prior payload named in 'coherence'; refused as 'revision_changed' if the active Release has changed. Omit for the active Release. |
{
"type": "object",
"required": [
"subject"
],
"properties": {
"bound": {
"type": "integer",
"default": 12,
"maximum": 50,
"minimum": 1,
"description": "How many relationship occurrences this call returns; continue with cursor until the page is no longer truncated."
},
"cursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "scope.next_cursor from a prior atlas_links page; repeat the same other arguments."
},
"subject": {
"type": "string",
"description": "A bare Node id (no '#section'), e.g. an atlas_orient candidate id or a Card id."
},
"expected_revision": {
"anyOf": [
{
"type": "string",
"pattern": "^v\\d+\\.\\d+\\.\\d+$"
},
{
"type": "null"
}
],
"default": null,
"description": "Pins this call to the Release (published edition) a prior payload named in 'coherence'; refused as 'revision_changed' if the active Release has changed. Omit for the active Release."
}
},
"additionalProperties": false
}Browse the whole Atlas in the publisher's order: the canonical tree of every published Node, or the guided first learning path, an introduction then steps each naming a Node id with narration. Use to survey what exists or to start learning with no topic in mind. Neither view carries entry text or claims; the tour is null if none is published.
| Argument | Type | Description |
|---|---|---|
| view | string | Choose tree to survey every published Node in canonical order, or tour to follow the publisher's guided first learning path. |
| expected_revision | any | Pins this call to the Release (published edition) a prior payload named in 'coherence'; refused as 'revision_changed' if the active Release has changed. Omit for the active Release. |
{
"type": "object",
"properties": {
"view": {
"enum": [
"tree",
"tour"
],
"type": "string",
"default": "tree",
"description": "Choose tree to survey every published Node in canonical order, or tour to follow the publisher's guided first learning path."
},
"expected_revision": {
"anyOf": [
{
"type": "string",
"pattern": "^v\\d+\\.\\d+\\.\\d+$"
},
{
"type": "null"
}
],
"default": null,
"description": "Pins this call to the Release (published edition) a prior payload named in 'coherence'; refused as 'revision_changed' if the active Release has changed. Omit for the active Release."
}
},
"additionalProperties": false
}Find Atlas entries by topic when you hold no id; an id you already hold can be read directly. Searches Nodes (patterns, concepts, examples) and Roadmap entries (announced, unpublished); kind narrows it to one Node kind, Decisions, or glossary terms. Node discovery preserves leading lexical matches and adds related entries with task vocabulary, using references in either direction. Related candidates explain their connection; direct matches have no via. Empty listings and exact id/title lookups stay lexical. Returns ranked ids with Hooks (one-line summaries; a term's is its whole definition), paged with a cursor. A miss is an empty page; invalid arguments are refused as invalid_argument.
| Argument | Type | Description |
|---|---|---|
| kind | any | Narrows the search to one Node kind, to Decision records, or to glossary terms. Omit it to search every Node kind plus Roadmap entries (announced, unpublished); setting it leaves Roadmap entries out. |
| bound | integer | How many ranked candidates this call returns; raise it to compare more matches at once, and continue past it with cursor. |
| query | any | A topic or question in ordinary design vocabulary. Lexical matches use canonical ids, titles, Hooks, claims, then Section headings and bodies, with rarer words weighing more; a word of four or more characters also matches longer tokens it begins. Section text supplies direct candidates only when no subject matches an identity field. Node discovery also includes neighbors matching query terms through references in either direction; via explains the connection, and total counts the candidates. kind='decision' searches Decision ids, titles, and bodies; kind='term', keys and definitions. Empty lists every subject of the kind. |
Read the full text at one exact Atlas address. A bare Node id returns the whole entry: identity, tree position, Hook (one-line summary), and every Section; relationship occurrences are omitted. A Section, Decision, or glossary term address returns that one item. Use when a summary is not enough or you need exact wording to cite. An unknown or malformed address is refused as invalid_argument; a wrong slug's refusal lists the real ones.
| Argument | Type | Description |
|---|---|---|
| address* | string | A bare Node id, 'node-id#section-slug', 'decision:<decision-id>', or 'term:<key>'. Slugs are not guessable: read them off a Node's sections, a Card claim's sources, or a Link's occurrence. |
| expected_revision | any | Pins this call to the Release (published edition) a prior payload named in 'coherence'; refused as 'revision_changed' if the active Release has changed. Omit for the active Release. |
{
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"description": "A bare Node id, 'node-id#section-slug', 'decision:<decision-id>', or 'term:<key>'. Slugs are not guessable: read them off a Node's sections, a Card claim's sources, or a Link's occurrence."
},
"expected_revision": {
"anyOf": [
{
"type": "string",
"pattern": "^v\\d+\\.\\d+\\.\\d+$"
},
{
"type": "null"
}
],
"default": null,
"description": "Pins this call to the Release (published edition) a prior payload named in 'coherence'; refused as 'revision_changed' if the active Release has changed. Omit for the active Release."
}
},
"additionalProperties": false
}| cursor |
| any |
| scope.next_cursor from a prior atlas_orient page; repeat the same other arguments. |
| expected_revision | any | Pins this call to the Release (published edition) a prior payload named in 'coherence'; refused as 'revision_changed' if the active Release has changed. Omit for the active Release. |
{
"type": "object",
"properties": {
"kind": {
"anyOf": [
{
"enum": [
"concept",
"pattern",
"example",
"decision",
"term"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Narrows the search to one Node kind, to Decision records, or to glossary terms. Omit it to search every Node kind plus Roadmap entries (announced, unpublished); setting it leaves Roadmap entries out."
},
"bound": {
"type": "integer",
"default": 8,
"maximum": 8,
"minimum": 1,
"description": "How many ranked candidates this call returns; raise it to compare more matches at once, and continue past it with cursor."
},
"query": {
"anyOf": [
{
"type": "string",
"examples": [
"keep bulky context out of the window"
]
},
{
"type": "null"
}
],
"default": null,
"description": "A topic or question in ordinary design vocabulary. Lexical matches use canonical ids, titles, Hooks, claims, then Section headings and bodies, with rarer words weighing more; a word of four or more characters also matches longer tokens it begins. Section text supplies direct candidates only when no subject matches an identity field. Node discovery also includes neighbors matching query terms through references in either direction; via explains the connection, and total counts the candidates. kind='decision' searches Decision ids, titles, and bodies; kind='term', keys and definitions. Empty lists every subject of the kind."
},
"cursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "scope.next_cursor from a prior atlas_orient page; repeat the same other arguments."
},
"expected_revision": {
"anyOf": [
{
"type": "string",
"pattern": "^v\\d+\\.\\d+\\.\\d+$"
},
{
"type": "null"
}
],
"default": null,
"description": "Pins this call to the Release (published edition) a prior payload named in 'coherence'; refused as 'revision_changed' if the active Release has changed. Omit for the active Release."
}
},
"additionalProperties": false
}