atlas

Agent-design pattern guidance via 5 hosted read-only tools; Streamable HTTP, no auth, one Release.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
85%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,407Tokens (tool definitions)
~4.2 KBTypical response size
Moderate attention impact (1.88% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "atlas": {
      "url": "https://agentic-atlas.dev/mcp/"
    }
  }
}

Remote endpoints

https://agentic-atlas.dev/mcp/streamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢atlas_orient(query, kind, bound, cursor, expected_revision)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "anyOf": [
        {
          "examples": [
            "keep bulky context out of the window"
          ],
          "type": "string"
        },
        {
          "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."
    },
    "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": {
      "default": 8,
      "description": "How many ranked candidates this call returns; raise it to compare more matches at once, and continue past it with cursor.",
      "maximum": 8,
      "minimum": 1,
      "type": "integer"
    },
    "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": [
        {
          "pattern": "^v\\d+\\.\\d+\\.\\d+$",
          "type": "string"
        },
        {
          "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
}

Output Schema

{
  "type": "object",
  "properties": {
    "projection": {
      "const": "agent-projection/v8"
    },
    "coherence": {
      "type": "string"
    },
    "scope": {
      "type": "object"
    },
    "data": {
      "type": "object",
      "description": "candidates, ranked. A Node candidate has id, hook, and disclosure ('full', or 'roadmap' with its title); a Decision or term candidate has id, which is its atlas_read address, and hook. A related Node also has via: seed id, reference direction relative to that seed, and the source Section address."
    }
  },
  "required": [
    "projection",
    "coherence",
    "scope",
    "data"
  ]
}
🟢atlas_cards(ids, provenance, expected_revision)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "ids": {
      "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.",
      "items": {
        "type": "string"
      },
      "maxItems": 8,
      "minItems": 1,
      "type": "array",
      "uniqueItems": true
    },
    "provenance": {
      "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.",
      "type": "boolean"
    },
    "expected_revision": {
      "anyOf": [
        {
          "pattern": "^v\\d+\\.\\d+\\.\\d+$",
          "type": "string"
        },
        {
          "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."
    }
  },
  "required": [
    "ids"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "properties": {
    "projection": {
      "const": "agent-projection/v8"
    },
    "coherence": {
      "type": "string"
    },
    "scope": {
      "type": "object"
    },
    "data": {
      "type": "object",
      "description": "cards, one per requested id in request order: id, title, kind, hook, and claims (id, text, field, sources as 'node-id#section-slug'). With provenance=true, also provenance: release (version and digests) and addresses, each with address, dependency_digest, distillation, and attestation (publisher, attested_on)."
    }
  },
  "required": [
    "projection",
    "coherence",
    "scope",
    "data"
  ]
}
🟢atlas_read(address, expected_revision)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "address": {
      "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.",
      "type": "string"
    },
    "expected_revision": {
      "anyOf": [
        {
          "pattern": "^v\\d+\\.\\d+\\.\\d+$",
          "type": "string"
        },
        {
          "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."
    }
  },
  "required": [
    "address"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "properties": {
    "projection": {
      "const": "agent-projection/v8"
    },
    "coherence": {
      "type": "string"
    },
    "scope": {
      "type": "object"
    },
    "data": {
      "type": "object",
      "description": "node: identity (id, title, kind), hierarchy (ancestors, sibling_position, sibling_count), hook, and sections (slug, heading, position, content). section: section. decision: decision (id, title, content). definition: term and definition."
    }
  },
  "required": [
    "projection",
    "coherence",
    "scope",
    "data"
  ]
}
🟢atlas_links(subject, bound, cursor, expected_revision)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "subject": {
      "description": "A bare Node id (no '#section'), e.g. an atlas_orient candidate id or a Card id.",
      "type": "string"
    },
    "bound": {
      "default": 12,
      "description": "How many relationship occurrences this call returns; continue with cursor until the page is no longer truncated.",
      "maximum": 50,
      "minimum": 1,
      "type": "integer"
    },
    "cursor": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "scope.next_cursor from a prior atlas_links page; repeat the same other arguments."
    },
    "expected_revision": {
      "anyOf": [
        {
          "pattern": "^v\\d+\\.\\d+\\.\\d+$",
          "type": "string"
        },
        {
          "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."
    }
  },
  "required": [
    "subject"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "properties": {
    "projection": {
      "const": "agent-projection/v8"
    },
    "coherence": {
      "type": "string"
    },
    "scope": {
      "type": "object"
    },
    "data": {
      "type": "object",
      "description": "links: per occurrence, class ('in-slice', 'roadmap-disclosed', 'undisclosed'), direction, occurrence (section slug, ordinal), the far end's target id and title unless undisclosed, and its hook."
    }
  },
  "required": [
    "projection",
    "coherence",
    "scope",
    "data"
  ]
}
🟢atlas_navigate(view, expected_revision)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "view": {
      "default": "tree",
      "description": "Choose tree to survey every published Node in canonical order, or tour to follow the publisher's guided first learning path.",
      "enum": [
        "tree",
        "tour"
      ],
      "type": "string"
    },
    "expected_revision": {
      "anyOf": [
        {
          "pattern": "^v\\d+\\.\\d+\\.\\d+$",
          "type": "string"
        },
        {
          "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
}

Output Schema

{
  "type": "object",
  "properties": {
    "projection": {
      "const": "agent-projection/v8"
    },
    "coherence": {
      "type": "string"
    },
    "scope": {
      "type": "object"
    },
    "data": {
      "type": "object",
      "description": "tree: tree entries (id, title, depth). tour: path (id, title, intro, steps of node id, narration), or null when the Release seals no tour."
    }
  },
  "required": [
    "projection",
    "coherence",
    "scope",
    "data"
  ]
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools