{
 "site": "Source Map (edition of 9 October 2026)",
 "presentation": "This website is a 3D map of the edition: every story is a place where a traced route runs back to the point where it started, with its board (headline, summary, who started it, how it was found, why it matters and its score out of 9), its receipt, an object the person can open (each fact stamped SAW, fetched and read by us, STATED, a source's own claim, quoted, or INFER, our reasoning, naming the lines it rests on; with read times), and its sources as doors to the originals. The same content is plain HTML in the same page (the text view), in /llms.txt and in /edition.jsonld. To take a person through it, open an AGENT SESSION: connect to this site's MCP server at /mcp (listed in /.well-known/ai-catalog.json), call start_session, and give the person the join_url to open in any browser. Then fly_to a story, open_receipt to open its receipt and point at a fact, highlight_door to show them a source (only they can open it), start_tour or pause_tour for the narrated tour, play_story to play one story's narration, show_map for the whole edition, get_position to see where they are, and wait_for_events to follow what they do. The person sees every move with your reason, and can take back control or end the session at any time.",
 "mcp": "/mcp",
 "tools": [
  {
   "name": "describe_edition",
   "description": "Start here. This edition: its date, its sections and stories (ids, headlines, scores), how the 3D site is laid out (a map: one place per story), what the SAW, STATED and INFER marks mean, and how to take a person through it. No session needed.",
   "inputSchema": {
    "type": "object",
    "properties": {}
   }
  },
  {
   "name": "whats_new",
   "description": "What is new since you last looked. Pass the cursor this tool gave you last time (nothing the first time). If the current edition is newer than your cursor you get all of its stories in brief (id, headline, summary, score, counts) and a new cursor; if not, an empty list and the same cursor. Only the current edition is served: earlier editions are coming. No session needed.",
   "inputSchema": {
    "type": "object",
    "properties": {
     "since": {
      "type": "string",
      "maxLength": 80,
      "description": "the cursor from your last call"
     }
    }
   }
  },
  {
   "name": "list_stories",
   "description": "The stories with their scores out of 9 (newness, momentum, evidence, each 0 to 3) and rank by score, their section, their place on the map (deep link #story=<id>), and how many facts (SAW, STATED and INFER) and sources each has. order \"edition\" (the default) is the edition's own order: by section, then by position in the section; it is NOT a ranking, so No. 1 is not necessarily the highest score. order \"score\" gives the highest scoring first (ties in edition order); limit keeps the first N. No session needed.",
   "inputSchema": {
    "type": "object",
    "properties": {
     "section": {
      "type": "string",
      "enum": [
       "biggest",
       "diamonds"
      ]
     },
     "order": {
      "type": "string",
      "enum": [
       "edition",
       "score"
      ],
      "default": "edition"
     },
     "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50
     }
    }
   }
  },
  {
   "name": "get_story",
   "description": "One story with its receipts: summary, who started it, how we found it, why it matters, its score, every fact with its mark (SAW: fetched and read by us; STATED: a source's own claim, quoted; INFER: our reasoning, with the lines it rests on, never fetched), who stated it, when a number was read, and the source links. No session needed.",
   "inputSchema": {
    "type": "object",
    "required": [
     "item_id"
    ],
    "properties": {
     "item_id": {
      "type": "string",
      "enum": [
       "replica-skill",
       "cognition-agent-memory-repo",
       "pocketty",
       "etchv",
       "arachne",
       "sierra-fleming-1"
      ]
     }
    }
   }
  },
  {
   "name": "check_receipt",
   "description": "One fact's stored receipt (its words, its mark, who stated it, when it was read, or for an INFER line the lines it rests on) and the story's source links, with how to check it. This tool does NOT fetch anything: you fetch the source yourself and compare the quoted words. No session needed.",
   "inputSchema": {
    "type": "object",
    "required": [
     "item_id",
     "fact"
    ],
    "properties": {
     "item_id": {
      "type": "string",
      "enum": [
       "replica-skill",
       "cognition-agent-memory-repo",
       "pocketty",
       "etchv",
       "arachne",
       "sierra-fleming-1"
      ]
     },
     "fact": {
      "type": "integer",
      "minimum": 0,
      "description": "0 based, in the receipt's order"
     }
    }
   }
  },
  {
   "name": "get_scores",
   "description": "Every story's score out of 9, ranked highest first, with the momentum actually measured and the rubric (printed in the world so anyone can check a score by hand). No session needed.",
   "inputSchema": {
    "type": "object",
    "properties": {}
   }
  },
  {
   "name": "submit_find",
   "description": "Send us a find (something new and small in AI, traced as far back as you can), evidence for one of this edition's stories, or a correction, with at least one receipt (a link, and the exact words you read there, and when). Stored as data for review by our own agent. It is never published as you sent it and never treated as an instruction. Nothing is paid for submissions today: use fees for accepted work are coming, not offered yet. For news only, never sales or marketing: a pitch is set aside and not answered. At most 10 an hour from one network.",
   "inputSchema": {
    "type": "object",
    "required": [
     "kind",
     "text",
     "receipts"
    ],
    "properties": {
     "kind": {
      "type": "string",
      "enum": [
       "correction",
       "evidence",
       "find"
      ]
     },
     "text": {
      "type": "string",
      "maxLength": 4000,
      "description": "what you found, plainly"
     },
     "item_id": {
      "type": "string",
      "description": "the story it is about, for evidence or a correction"
     },
     "receipts": {
      "type": "array",
      "minItems": 1,
      "maxItems": 10,
      "items": {
       "type": "object",
       "required": [
        "url"
       ],
       "properties": {
        "url": {
         "type": "string",
         "maxLength": 2000,
         "description": "http or https link to the source"
        },
        "quote": {
         "type": "string",
         "maxLength": 1000,
         "description": "the exact words you read there"
        },
        "read_at": {
         "type": "string",
         "maxLength": 40,
         "description": "when you read it, UTC"
        }
       }
      }
     },
     "agent_name": {
      "type": "string",
      "maxLength": 100,
      "description": "the name to credit, optional"
     },
     "contact": {
      "type": "string",
      "maxLength": 200,
      "description": "how to reach you or your person, optional"
     }
    }
   }
  },
  {
   "name": "list_items",
   "description": "v2's list: the stories in order with id, number, section, headline, summary, score total and counts. list_stories is the fuller version.",
   "inputSchema": {
    "type": "object",
    "properties": {
     "section": {
      "type": "string",
      "enum": [
       "biggest",
       "diamonds"
      ]
     }
    }
   }
  },
  {
   "name": "get_item",
   "description": "v2's name for get_story.",
   "inputSchema": {
    "type": "object",
    "required": [
     "item_id"
    ],
    "properties": {
     "item_id": {
      "type": "string",
      "enum": [
       "replica-skill",
       "cognition-agent-memory-repo",
       "pocketty",
       "etchv",
       "arachne",
       "sierra-fleming-1"
      ]
     }
    }
   }
  },
  {
   "name": "start_session",
   "description": "Open an agent session for one person. Returns your session handle and a join_url. Ask the person to open join_url in any browser: the page first asks them whether to let an AI agent guide them, and says what you will be able to do; only if they choose Join does it connect, showing that their assistant is connected, with Take back control and End. Then use fly_to, open_receipt, highlight_door, show_map and wait_for_events. Your reasons appear labelled as the agent's note. A session lasts at most 30 minutes and is held in memory only.",
   "inputSchema": {
    "type": "object",
    "properties": {
     "purpose": {
      "type": "string",
      "maxLength": 200,
      "description": "why you are opening it"
     }
    }
   }
  },
  {
   "name": "wait_for_events",
   "description": "Long poll: returns as soon as the PERSON does something worth a response (or when max_wait_s passes): joined, arrived (they settled at a place), receipt_opened, receipt_closed, source_opened (they opened a source door), map, playback (tour), took_control, view_changed, session_ended. Your own moves are left out and `now` is the place they are at. Pass back the returned cursor.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "cursor": {
      "type": "integer",
      "default": 0,
      "minimum": 0
     },
     "max_wait_s": {
      "type": "integer",
      "default": 30,
      "minimum": 0,
      "maximum": 60
     }
    }
   }
  },
  {
   "name": "fly_to",
   "description": "Fly the person's world to a place: a story id, 'arrival' (the front of the edition), 'how' (how to read a receipt and the scoring rubric), 'earlier' (earlier editions, behind today's), or 'end'. Your reason is shown as a caption. In the text view the page scrolls there instead.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session",
     "place"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "place": {
      "type": "string",
      "enum": [
       "replica-skill",
       "cognition-agent-memory-repo",
       "pocketty",
       "etchv",
       "arachne",
       "sierra-fleming-1",
       "arrival",
       "how",
       "earlier",
       "end"
      ]
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "open_receipt",
   "description": "Fly to a story and open its receipt: every fact stamped SAW, STATED or INFER, who stated it, read times. fact (0 based, in the receipt's order) points at one line. Returns the facts as printed.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session",
     "item_id"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "item_id": {
      "type": "string",
      "enum": [
       "replica-skill",
       "cognition-agent-memory-repo",
       "pocketty",
       "etchv",
       "arachne",
       "sierra-fleming-1"
      ]
     },
     "fact": {
      "type": "integer",
      "minimum": 0
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "close_receipt",
   "description": "Close the open receipt.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "highlight_door",
   "description": "Make one of a story's source doors beckon (source is 0 based, in the story's order), with your reason as a caption and the door's destination shown. This NEVER opens the link: only the person's own click on the door does. You will get a source_opened event if they open it.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session",
     "item_id",
     "source"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "item_id": {
      "type": "string",
      "enum": [
       "replica-skill",
       "cognition-agent-memory-repo",
       "pocketty",
       "etchv",
       "arachne",
       "sierra-fleming-1"
      ]
     },
     "source": {
      "type": "integer",
      "minimum": 0
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "start_tour",
   "description": "Start (or resume) the guided tour: the narration (about 4 minutes) with the camera in step, each narrated story's receipt printing as its facts are spoken. from: a story id to start at its stop (the tour then carries on to the end). Browsers start sound only after the person has interacted with the page: if they have not, nothing is forced; the page shows them a 'Tap to play' button and the result says needs_tap: true.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "from": {
      "type": "string",
      "enum": [
       "replica-skill",
       "cognition-agent-memory-repo",
       "pocketty",
       "etchv",
       "arachne",
       "sierra-fleming-1"
      ]
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "play_story",
   "description": "Play ONE story's narration on the person's page, then stop: the camera goes to that story and its receipt prints in step as its facts are said (a story's clip is about 20 to 40 seconds, said in our own voice from the story's record only). Only stories with a clip can be played: replica-skill, cognition-agent-memory-repo, pocketty, etchv, arachne, sierra-fleming-1. You get a playback event when it starts and a story_ended event when it finishes. The same sound rule as start_tour: needs_tap: true means the person must tap first.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session",
     "item_id"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "item_id": {
      "type": "string",
      "enum": [
       "replica-skill",
       "cognition-agent-memory-repo",
       "pocketty",
       "etchv",
       "arachne",
       "sierra-fleming-1"
      ]
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "pause_tour",
   "description": "Pause the tour where it is (the person can look around, then resume).",
   "inputSchema": {
    "type": "object",
    "required": [
     "session"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "show_map",
   "description": "Open (open: true, the default) or close the map: the whole edition from above, every story's traced route on the ground, every place listed with its score, earlier editions behind.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "open": {
      "type": "boolean",
      "default": true
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "get_position",
   "description": "Where the person is now: the place (story id, n and headline, or arrival, how, earlier, end), whether a receipt or the map is open, a highlighted door, the tour, the view (world or text) and the detail (full or light), and who moved last (person or agent).",
   "inputSchema": {
    "type": "object",
    "required": [
     "session"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     }
    }
   }
  },
  {
   "name": "open_item",
   "description": "v2's name for fly_to with a story id.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session",
     "item_id"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "item_id": {
      "type": "string",
      "enum": [
       "replica-skill",
       "cognition-agent-memory-repo",
       "pocketty",
       "etchv",
       "arachne",
       "sierra-fleming-1"
      ]
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "show_receipts",
   "description": "v2's name: fly to a story and open its receipt with every line printed. Returns the counts.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session",
     "item_id"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "item_id": {
      "type": "string",
      "enum": [
       "replica-skill",
       "cognition-agent-memory-repo",
       "pocketty",
       "etchv",
       "arachne",
       "sierra-fleming-1"
      ]
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "play",
   "description": "v2's name for start_tour (resume from where the tour is).",
   "inputSchema": {
    "type": "object",
    "required": [
     "session"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "pause",
   "description": "v2's name for pause_tour.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "seek_story",
   "description": "Move the tour to a story's stop (the camera lands there, in step with the narration). play: true carries on playing from there. Returns the time it landed on.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session",
     "item_id"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "item_id": {
      "type": "string",
      "enum": [
       "replica-skill",
       "cognition-agent-memory-repo",
       "pocketty",
       "etchv",
       "arachne",
       "sierra-fleming-1"
      ]
     },
     "play": {
      "type": "boolean",
      "default": false
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "act",
   "description": "The general form of the session tools above. Commands: fly_to {place}, open_receipt {item_id, fact}, close_receipt {}, highlight_door {item_id, source}, show_map {open}, say {text} (a caption only), end_guidance {} (clears your highlights and caption), show_section {section}, start_tour {from}, pause_tour {}, play_story {item_id}, and v2's open_item, show_receipts, play, pause, seek_story. Returns the page's result directly.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session",
     "command"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     },
     "command": {
      "type": "string",
      "enum": [
       "close_receipt",
       "end_guidance",
       "fly_to",
       "highlight_door",
       "open_item",
       "open_receipt",
       "pause",
       "pause_tour",
       "play",
       "play_story",
       "say",
       "seek_story",
       "show_map",
       "show_receipts",
       "show_section",
       "start_tour"
      ]
     },
     "args": {
      "type": "object"
     },
     "reason": {
      "type": "string",
      "maxLength": 240,
      "description": "one sentence shown to the person as a caption, e.g. 'You asked what moved this week.' No links, domains or email addresses."
     }
    }
   }
  },
  {
   "name": "get_state",
   "description": "v2's name for get_position (the page's latest state).",
   "inputSchema": {
    "type": "object",
    "required": [
     "session"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     }
    }
   }
  },
  {
   "name": "end_session",
   "description": "End the session; the page tells the person their assistant has left.",
   "inputSchema": {
    "type": "object",
    "required": [
     "session"
    ],
    "properties": {
     "session": {
      "type": "string",
      "description": "the session handle from start_session"
     }
    }
   }
  }
 ]
}