[{"data":1,"prerenderedAt":1280},["ShallowReactive",2],{"docs-sidebar-source":3,"content-query-5DYy6Jww5m":301},[4,8,11,14,17,21,25,29,32,35,39,43,47,51,55,59,63,67,70,73,77,81,85,88,91,94,98,102,106,110,114,117,120,124,128,132,136,140,144,148,151,154,157,160,163,166,169,172,175,178,181,184,187,190,193,196,199,202,205,208,211,214,217,220,223,226,229,232,235,238,241,244,247,250,253,256,259,262,265,268,271,274,277,280,283,286,289,292,295,298],{"_path":5,"title":6,"order":7},"/docs/getting-started","Getting Started",1,{"_path":9,"title":10,"order":7},"/docs/self-hosting/all-in-one","All-in-One Setup",{"_path":12,"title":13,"order":7},"/docs/api/server","Server API",{"_path":15,"title":16,"order":7},"/docs/views/grid","Grid View",{"_path":18,"title":19,"order":20},"/docs/core-concepts","Core Concepts",10,{"_path":22,"title":23,"order":24},"/docs/crdt","What is a CRDT?",11,{"_path":26,"title":27,"order":28},"/docs/self-hosting/separate-containers","Separate Containers Setup",2,{"_path":30,"title":31,"order":28},"/docs/api/client-http","Client HTTP API",{"_path":33,"title":34,"order":28},"/docs/views/table","Table View",{"_path":36,"title":37,"order":38},"/docs/interface-overview","Interface Overview",20,{"_path":40,"title":41,"order":42},"/docs/global-search","Global Search",22,{"_path":44,"title":45,"order":46},"/docs/filters","Filters",24,{"_path":48,"title":49,"order":50},"/docs/sorting","Sorting",25,{"_path":52,"title":53,"order":54},"/docs/tagging-and-selection","Tagging & Selection",26,{"_path":56,"title":57,"order":58},"/docs/properties","Properties",27,{"_path":60,"title":61,"order":62},"/docs/quick-view","Quick View",28,{"_path":64,"title":65,"order":66},"/docs/self-hosting/updating","Updating Heaper",3,{"_path":68,"title":69,"order":66},"/docs/api/cli","CLI",{"_path":71,"title":72,"order":66},"/docs/views/list","List View",{"_path":74,"title":75,"order":76},"/docs/block-actions","Block Actions",30,{"_path":78,"title":79,"order":80},"/docs/deleting-blocks","Deleting Blocks & Trash",32,{"_path":82,"title":83,"order":84},"/docs/self-hosting/remote-access-tailscale","Remote Access with Tailscale",4,{"_path":86,"title":87,"order":84},"/docs/self-hosting","Self-Hosting",{"_path":89,"title":90,"order":84},"/docs/api/agents-mcp","Agent and MCP Access",{"_path":92,"title":93,"order":84},"/docs/views/tasks","Tasks View",{"_path":95,"title":96,"order":97},"/docs/managing-heaps","Managing Heaps",40,{"_path":99,"title":100,"order":101},"/docs/file-scanning","File Scanning & Importing",42,{"_path":103,"title":104,"order":105},"/docs/storage-management","Storage Management",44,{"_path":107,"title":108,"order":109},"/docs/daily-notes","Daily Notes & Calendar",46,{"_path":111,"title":112,"order":113},"/docs/api/cli-reference","CLI Reference",5,{"_path":115,"title":116,"order":113},"/docs/api","API",{"_path":118,"title":119,"order":113},"/docs/views/kanban-board","Board View",{"_path":121,"title":122,"order":123},"/docs/views/calendar","Calendar View",6,{"_path":125,"title":126,"order":127},"/docs/views","Views",60,{"_path":129,"title":130,"order":131},"/docs/views/graph","Graph View",7,{"_path":133,"title":134,"order":135},"/docs/authentication","Authentication & User Management",70,{"_path":137,"title":138,"order":139},"/docs/licenses-privacy","Licenses & Privacy",72,{"_path":141,"title":142,"order":143},"/docs/faq","FAQ",80,{"_path":145,"title":146,"order":147},"/docs/changelog","Changelog",99,{"_path":149,"title":150},"/docs/changelog/v16.16.25","v16.16.25",{"_path":152,"title":153},"/docs/changelog/v16.16.39","v16.16.39",{"_path":155,"title":156},"/docs/changelog/v16.10.0","v16.10.0",{"_path":158,"title":159},"/docs/changelog/v16.17.8","v16.17.8",{"_path":161,"title":162},"/docs/changelog/v16.11.0","v16.11.0",{"_path":164,"title":165},"/docs/changelog/v16.16.2","v16.16.2",{"_path":167,"title":168},"/docs/changelog/v16.16.11","v16.16.11",{"_path":170,"title":171},"/docs/changelog/v16.16.27","v16.16.27",{"_path":173,"title":174},"/docs/changelog/v16.16.22","v16.16.22",{"_path":176,"title":177},"/docs/changelog/v16.16.14","v16.16.14",{"_path":179,"title":180},"/docs/changelog/v16.16.6","v16.16.6",{"_path":182,"title":183},"/docs/changelog/v16.16.36","v16.16.36",{"_path":185,"title":186},"/docs/changelog/v16.16.33","v16.16.33",{"_path":188,"title":189},"/docs/changelog/v16.19","v16.19",{"_path":191,"title":192},"/docs/changelog/v16.16.16","v16.16.16",{"_path":194,"title":195},"/docs/changelog/v16.16.8","v16.16.8",{"_path":197,"title":198},"/docs/changelog/v16.16.40","v16.16.40",{"_path":200,"title":201},"/docs/changelog/v16.16.0","v16.16.0",{"_path":203,"title":204},"/docs/changelog/v16.16.32","v16.16.32",{"_path":206,"title":207},"/docs/changelog/v16.16.28","v16.16.28",{"_path":209,"title":210},"/docs/changelog/v16.16.15","v16.16.15",{"_path":212,"title":213},"/docs/changelog/v16.16.9","v16.16.9",{"_path":215,"title":216},"/docs/changelog/v16.16.38","v16.16.38",{"_path":218,"title":219},"/docs/changelog/v16.6.0","v16.6.0",{"_path":221,"title":222},"/docs/changelog/v16.16.7","v16.16.7",{"_path":224,"title":225},"/docs/changelog/v16.9.0","v16.9.0",{"_path":227,"title":228},"/docs/changelog/v16.8.0","v16.8.0",{"_path":230,"title":231},"/docs/changelog/v16.16.17","v16.16.17",{"_path":233,"title":234},"/docs/changelog/v16.16.12","v16.16.12",{"_path":236,"title":237},"/docs/changelog/v16.7.0","v16.7.0",{"_path":239,"title":240},"/docs/changelog/v16.16.20","v16.16.20",{"_path":242,"title":243},"/docs/changelog/v16.16.23","v16.16.23",{"_path":245,"title":246},"/docs/changelog/v16.16.41","v16.16.41",{"_path":248,"title":249},"/docs/changelog/v16.16.30","v16.16.30",{"_path":251,"title":252},"/docs/changelog/v16.16.34","v16.16.34",{"_path":254,"title":255},"/docs/changelog/v16.16.4","v16.16.4",{"_path":257,"title":258},"/docs/changelog/v16.16.19","v16.16.19",{"_path":260,"title":261},"/docs/changelog/v16.16.43","v16.16.43",{"_path":263,"title":264},"/docs/changelog/v16.16.13","v16.16.13",{"_path":266,"title":267},"/docs/changelog/v16.16.26","v16.16.26",{"_path":269,"title":270},"/docs/changelog/v16.16.18","v16.16.18",{"_path":272,"title":273},"/docs/changelog/v16.16.10","v16.16.10",{"_path":275,"title":276},"/docs/changelog/v16.16.35","v16.16.35",{"_path":278,"title":279},"/docs/changelog/v16.16.21","v16.16.21",{"_path":281,"title":282},"/docs/changelog/v16.16.37","v16.16.37",{"_path":284,"title":285},"/docs/changelog/v16.16.31","v16.16.31",{"_path":287,"title":288},"/docs/changelog/v16.16.3","v16.16.3",{"_path":290,"title":291},"/docs/changelog/v16.16.29","v16.16.29",{"_path":293,"title":294},"/docs/changelog/v16.16.24","v16.16.24",{"_path":296,"title":297},"/docs/changelog/v16.16.1","v16.16.1",{"_path":299,"title":300},"/docs/changelog/v16.16.5","v16.16.5",{"_path":89,"_dir":302,"_draft":303,"_partial":303,"_locale":304,"title":90,"description":305,"order":84,"body":306,"_type":1274,"_id":1275,"_source":1276,"_file":1277,"_stem":1278,"_extension":1279},"api",false,"","Connect AI agents to a hosted, self-hosted, or local Heaper instance through the Heaper CLI and MCP.",{"type":307,"children":308,"toc":1262},"root",[309,317,341,346,353,489,494,500,505,517,522,531,536,571,577,590,601,606,615,652,659,664,673,692,698,703,755,760,769,774,809,815,836,1017,1038,1044,1049,1093,1106,1119,1125,1224,1230],{"type":310,"tag":311,"props":312,"children":314},"element","h1",{"id":313},"agent-and-mcp-access",[315],{"type":316,"value":90},"text",{"type":310,"tag":318,"props":319,"children":320},"p",{},[321,323,339],{"type":316,"value":322},"The ",{"type":310,"tag":324,"props":325,"children":329},"a",{"href":326,"rel":327},"https://www.npmjs.com/package/heaper-cli",[328],"nofollow",[330,337],{"type":310,"tag":331,"props":332,"children":334},"code",{"className":333},[],[335],{"type":316,"value":336},"heaper-cli",{"type":316,"value":338}," npm package",{"type":316,"value":340}," includes a typed MCP server. It lets an MCP-compatible agent work with heaps, blocks, documents, relations, properties, history, files, and invites without implementing the Heaper HTTP APIs itself.",{"type":310,"tag":318,"props":342,"children":343},{},[344],{"type":316,"value":345},"MCP is an agent-facing layer over the same connections used by normal CLI commands. It is not a separate data service or a separate Agent API.",{"type":310,"tag":347,"props":348,"children":350},"h2",{"id":349},"choose-a-connection",[351],{"type":316,"value":352},"Choose a Connection",{"type":310,"tag":354,"props":355,"children":356},"table",{},[357,381],{"type":310,"tag":358,"props":359,"children":360},"thead",{},[361],{"type":310,"tag":362,"props":363,"children":364},"tr",{},[365,371,376],{"type":310,"tag":366,"props":367,"children":368},"th",{},[369],{"type":316,"value":370},"Goal",{"type":310,"tag":366,"props":372,"children":373},{},[374],{"type":316,"value":375},"Recommended connection",{"type":310,"tag":366,"props":377,"children":378},{},[379],{"type":316,"value":380},"Requirements",{"type":310,"tag":382,"props":383,"children":384},"tbody",{},[385,417,448,471],{"type":310,"tag":362,"props":386,"children":387},{},[388,394,405],{"type":310,"tag":389,"props":390,"children":391},"td",{},[392],{"type":316,"value":393},"Let an agent access a remote or self-hosted Heaper server",{"type":310,"tag":389,"props":395,"children":396},{},[397,403],{"type":310,"tag":331,"props":398,"children":400},{"className":399},[],[401],{"type":316,"value":402},"heaper mcp --stdio",{"type":316,"value":404}," with a saved remote login",{"type":310,"tag":389,"props":406,"children":407},{},[408,410,415],{"type":316,"value":409},"Node.js, ",{"type":310,"tag":331,"props":411,"children":413},{"className":412},[],[414],{"type":316,"value":336},{"type":316,"value":416},", and server credentials",{"type":310,"tag":362,"props":418,"children":419},{},[420,425,438],{"type":310,"tag":389,"props":421,"children":422},{},[423],{"type":316,"value":424},"Run Heaper commands from a shell-based agent",{"type":310,"tag":389,"props":426,"children":427},{},[428,430,436],{"type":316,"value":429},"Normal ",{"type":310,"tag":331,"props":431,"children":433},{"className":432},[],[434],{"type":316,"value":435},"heaper",{"type":316,"value":437}," commands",{"type":310,"tag":389,"props":439,"children":440},{},[441,442,447],{"type":316,"value":409},{"type":310,"tag":331,"props":443,"children":445},{"className":444},[],[446],{"type":316,"value":336},{"type":316,"value":416},{"type":310,"tag":362,"props":449,"children":450},{},[451,456,466],{"type":310,"tag":389,"props":452,"children":453},{},[454],{"type":316,"value":455},"Access local-only data such as read-only SQL and saved views",{"type":310,"tag":389,"props":457,"children":458},{},[459,464],{"type":310,"tag":331,"props":460,"children":462},{"className":461},[],[463],{"type":316,"value":402},{"type":316,"value":465}," through Electron Local API discovery",{"type":310,"tag":389,"props":467,"children":468},{},[469],{"type":316,"value":470},"Running desktop app with Local API enabled",{"type":310,"tag":362,"props":472,"children":473},{},[474,479,484],{"type":310,"tag":389,"props":475,"children":476},{},[477],{"type":316,"value":478},"Build a hosted agent integration",{"type":310,"tag":389,"props":480,"children":481},{},[482],{"type":316,"value":483},"Server API or a separately hosted HTTPS MCP endpoint",{"type":310,"tag":389,"props":485,"children":486},{},[487],{"type":316,"value":488},"A deployed service and server bearer tokens",{"type":310,"tag":318,"props":490,"children":491},{},[492],{"type":316,"value":493},"The local stdio MCP server is intended for desktop agents. Browser-hosted agents cannot launch it directly and require a separately hosted HTTPS MCP endpoint.",{"type":310,"tag":347,"props":495,"children":497},{"id":496},"install-and-log-in",[498],{"type":316,"value":499},"Install and Log In",{"type":310,"tag":318,"props":501,"children":502},{},[503],{"type":316,"value":504},"Install the CLI:",{"type":310,"tag":506,"props":507,"children":512},"pre",{"className":508,"code":510,"language":511,"meta":304},[509],"language-bash","npm install -g heaper-cli\nheaper --version\n","bash",[513],{"type":310,"tag":331,"props":514,"children":515},{"__ignoreMap":304},[516],{"type":316,"value":510},{"type":310,"tag":318,"props":518,"children":519},{},[520],{"type":316,"value":521},"Log in to a hosted or self-hosted server with an agent identity:",{"type":310,"tag":506,"props":523,"children":526},{"className":524,"code":525,"language":511,"meta":304},[509],"heaper auth login https://your-heaper.example \\\n  --agent codex \\\n  --insecure-save-key\n\nheaper auth status\nheaper heaps\n",[527],{"type":310,"tag":331,"props":528,"children":529},{"__ignoreMap":304},[530],{"type":316,"value":525},{"type":310,"tag":318,"props":532,"children":533},{},[534],{"type":316,"value":535},"This creates or reuses an Ed25519 agent identity, completes the server challenge, and saves the selected server and refreshable session locally.",{"type":310,"tag":318,"props":537,"children":538},{},[539,545,547,553,555,561,563,569],{"type":310,"tag":331,"props":540,"children":542},{"className":541},[],[543],{"type":316,"value":544},"--insecure-save-key",{"type":316,"value":546}," stores the reusable private key in ",{"type":310,"tag":331,"props":548,"children":550},{"className":549},[],[551],{"type":316,"value":552},"~/.heaper/cli/identities/\u003Cagent>.json",{"type":316,"value":554}," with ",{"type":310,"tag":331,"props":556,"children":558},{"className":557},[],[559],{"type":316,"value":560},"0600",{"type":316,"value":562}," permissions. Omit that option for stricter environments and provide ",{"type":310,"tag":331,"props":564,"children":566},{"className":565},[],[567],{"type":316,"value":568},"HEAPER_AGENT_PRIVATE_KEY",{"type":316,"value":570}," to the process instead.",{"type":310,"tag":347,"props":572,"children":574},{"id":573},"configure-an-mcp-client",[575],{"type":316,"value":576},"Configure an MCP Client",{"type":310,"tag":318,"props":578,"children":579},{},[580,582,588],{"type":316,"value":581},"For a client that accepts an ",{"type":310,"tag":331,"props":583,"children":585},{"className":584},[],[586],{"type":316,"value":587},"mcpServers",{"type":316,"value":589}," JSON configuration:",{"type":310,"tag":506,"props":591,"children":596},{"className":592,"code":594,"language":595,"meta":304},[593],"language-json","{\n  \"mcpServers\": {\n    \"heaper\": {\n      \"command\": \"heaper\",\n      \"args\": [\n        \"--server\",\n        \"https://your-heaper.example\",\n        \"mcp\",\n        \"--stdio\"\n      ]\n    }\n  }\n}\n","json",[597],{"type":310,"tag":331,"props":598,"children":599},{"__ignoreMap":304},[600],{"type":316,"value":594},{"type":310,"tag":318,"props":602,"children":603},{},[604],{"type":316,"value":605},"Restart the agent after changing its MCP configuration. If the correct saved server is already the default, the shorter argument list also works:",{"type":310,"tag":506,"props":607,"children":610},{"className":608,"code":609,"language":595,"meta":304},[593],"{\n  \"command\": \"heaper\",\n  \"args\": [\"mcp\", \"--stdio\"]\n}\n",[611],{"type":310,"tag":331,"props":612,"children":613},{"__ignoreMap":304},[614],{"type":316,"value":609},{"type":310,"tag":318,"props":616,"children":617},{},[618,620,626,628,634,636,642,644,650],{"type":316,"value":619},"Put global options such as ",{"type":310,"tag":331,"props":621,"children":623},{"className":622},[],[624],{"type":316,"value":625},"--server",{"type":316,"value":627},", ",{"type":310,"tag":331,"props":629,"children":631},{"className":630},[],[632],{"type":316,"value":633},"--port",{"type":316,"value":635},", and ",{"type":310,"tag":331,"props":637,"children":639},{"className":638},[],[640],{"type":316,"value":641},"--token",{"type":316,"value":643}," before ",{"type":310,"tag":331,"props":645,"children":647},{"className":646},[],[648],{"type":316,"value":649},"mcp",{"type":316,"value":651},".",{"type":310,"tag":653,"props":654,"children":656},"h3",{"id":655},"codex-plugin-from-a-repository-checkout",[657],{"type":316,"value":658},"Codex Plugin From a Repository Checkout",{"type":310,"tag":318,"props":660,"children":661},{},[662],{"type":316,"value":663},"This repository also contains a Codex plugin that starts the same MCP server:",{"type":310,"tag":506,"props":665,"children":668},{"className":666,"code":667,"language":511,"meta":304},[509],"codex plugin marketplace add /absolute/path/to/heaper\ncodex plugin add heaper@personal\n",[669],{"type":310,"tag":331,"props":670,"children":671},{"__ignoreMap":304},[672],{"type":316,"value":667},{"type":310,"tag":318,"props":674,"children":675},{},[676,678,683,685,691],{"type":316,"value":677},"Install ",{"type":310,"tag":331,"props":679,"children":681},{"className":680},[],[682],{"type":316,"value":336},{"type":316,"value":684}," first, then restart Codex so the desktop process receives the updated ",{"type":310,"tag":331,"props":686,"children":688},{"className":687},[],[689],{"type":316,"value":690},"PATH",{"type":316,"value":651},{"type":310,"tag":347,"props":693,"children":695},{"id":694},"authentication-options",[696],{"type":316,"value":697},"Authentication Options",{"type":310,"tag":318,"props":699,"children":700},{},[701],{"type":316,"value":702},"The CLI selects an active connection in this order:",{"type":310,"tag":704,"props":705,"children":706},"ol",{},[707,720,731,743],{"type":310,"tag":708,"props":709,"children":710},"li",{},[711,713,719],{"type":316,"value":712},"Explicit ",{"type":310,"tag":331,"props":714,"children":716},{"className":715},[],[717],{"type":316,"value":718},"--server \u003Curl-or-public-key>",{"type":316,"value":651},{"type":310,"tag":708,"props":721,"children":722},{},[723,729],{"type":310,"tag":331,"props":724,"children":726},{"className":725},[],[727],{"type":316,"value":728},"HEAPER_SERVER_URL",{"type":316,"value":730}," with remote environment credentials.",{"type":310,"tag":708,"props":732,"children":733},{},[734,736,742],{"type":316,"value":735},"Stored credentials created by ",{"type":310,"tag":331,"props":737,"children":739},{"className":738},[],[740],{"type":316,"value":741},"heaper auth login",{"type":316,"value":651},{"type":310,"tag":708,"props":744,"children":745},{},[746,748,754],{"type":316,"value":747},"Electron Local API discovery through ",{"type":310,"tag":331,"props":749,"children":751},{"className":750},[],[752],{"type":316,"value":753},"~/.heaper/api.json",{"type":316,"value":651},{"type":310,"tag":318,"props":756,"children":757},{},[758],{"type":316,"value":759},"For a non-interactive remote agent:",{"type":310,"tag":506,"props":761,"children":764},{"className":762,"code":763,"language":511,"meta":304},[509],"export HEAPER_SERVER_URL=\"https://your-heaper.example\"\nexport HEAPER_ACCESS_TOKEN=\"...\"\nexport HEAPER_REFRESH_TOKEN=\"...\"\n\nheaper mcp --stdio\n",[765],{"type":310,"tag":331,"props":766,"children":767},{"__ignoreMap":304},[768],{"type":316,"value":763},{"type":310,"tag":318,"props":770,"children":771},{},[772],{"type":316,"value":773},"Do not commit bearer tokens or private keys to agent configuration, plugin manifests, or repository files. Supply them through the agent application's environment configuration.",{"type":310,"tag":318,"props":775,"children":776},{},[777,779,785,787,793,795,800,802,807],{"type":316,"value":778},"For local Electron access, enable ",{"type":310,"tag":780,"props":781,"children":782},"strong",{},[783],{"type":316,"value":784},"Settings → Local API",{"type":316,"value":786}," in the desktop app. Set ",{"type":310,"tag":331,"props":788,"children":790},{"className":789},[],[791],{"type":316,"value":792},"HEAPER_TOKEN",{"type":316,"value":794}," when Local API authentication is enabled. Use ",{"type":310,"tag":331,"props":796,"children":798},{"className":797},[],[799],{"type":316,"value":633},{"type":316,"value":801}," only when discovery through ",{"type":310,"tag":331,"props":803,"children":805},{"className":804},[],[806],{"type":316,"value":753},{"type":316,"value":808}," is unavailable.",{"type":310,"tag":347,"props":810,"children":812},{"id":811},"capabilities-by-connection",[813],{"type":316,"value":814},"Capabilities by Connection",{"type":310,"tag":318,"props":816,"children":817},{},[818,820,826,828,834],{"type":316,"value":819},"Use the MCP ",{"type":310,"tag":331,"props":821,"children":823},{"className":822},[],[824],{"type":316,"value":825},"connection_status",{"type":316,"value":827}," tool to inspect the active mode, ",{"type":310,"tag":331,"props":829,"children":831},{"className":830},[],[832],{"type":316,"value":833},"apiContractVersion",{"type":316,"value":835},", and available capabilities.",{"type":310,"tag":354,"props":837,"children":838},{},[839,860],{"type":310,"tag":358,"props":840,"children":841},{},[842],{"type":310,"tag":362,"props":843,"children":844},{},[845,850,855],{"type":310,"tag":366,"props":846,"children":847},{},[848],{"type":316,"value":849},"Capability",{"type":310,"tag":366,"props":851,"children":852},{},[853],{"type":316,"value":854},"Remote server",{"type":310,"tag":366,"props":856,"children":857},{},[858],{"type":316,"value":859},"Electron Local API",{"type":310,"tag":382,"props":861,"children":862},{},[863,880,896,912,935,952,969,985,1001],{"type":310,"tag":362,"props":864,"children":865},{},[866,871,876],{"type":310,"tag":389,"props":867,"children":868},{},[869],{"type":316,"value":870},"Heap and block search",{"type":310,"tag":389,"props":872,"children":873},{},[874],{"type":316,"value":875},"Yes",{"type":310,"tag":389,"props":877,"children":878},{},[879],{"type":316,"value":875},{"type":310,"tag":362,"props":881,"children":882},{},[883,888,892],{"type":310,"tag":389,"props":884,"children":885},{},[886],{"type":316,"value":887},"Bounded block metadata",{"type":310,"tag":389,"props":889,"children":890},{},[891],{"type":316,"value":875},{"type":310,"tag":389,"props":893,"children":894},{},[895],{"type":316,"value":875},{"type":310,"tag":362,"props":897,"children":898},{},[899,904,908],{"type":310,"tag":389,"props":900,"children":901},{},[902],{"type":316,"value":903},"Structured document read and patch",{"type":310,"tag":389,"props":905,"children":906},{},[907],{"type":316,"value":875},{"type":310,"tag":389,"props":909,"children":910},{},[911],{"type":316,"value":875},{"type":310,"tag":362,"props":913,"children":914},{},[915,926,931],{"type":310,"tag":389,"props":916,"children":917},{},[918,920],{"type":316,"value":919},"Saved-view evaluation through ",{"type":310,"tag":331,"props":921,"children":923},{"className":922},[],[924],{"type":316,"value":925},"get_block(view=...)",{"type":310,"tag":389,"props":927,"children":928},{},[929],{"type":316,"value":930},"Not yet",{"type":310,"tag":389,"props":932,"children":933},{},[934],{"type":316,"value":875},{"type":310,"tag":362,"props":936,"children":937},{},[938,943,947],{"type":310,"tag":389,"props":939,"children":940},{},[941],{"type":316,"value":942},"Provenance history",{"type":310,"tag":389,"props":944,"children":945},{},[946],{"type":316,"value":875},{"type":310,"tag":389,"props":948,"children":949},{},[950],{"type":316,"value":951},"When the local provenance table is available",{"type":310,"tag":362,"props":953,"children":954},{},[955,960,965],{"type":310,"tag":389,"props":956,"children":957},{},[958],{"type":316,"value":959},"Read-only SQL",{"type":310,"tag":389,"props":961,"children":962},{},[963],{"type":316,"value":964},"No",{"type":310,"tag":389,"props":966,"children":967},{},[968],{"type":316,"value":875},{"type":310,"tag":362,"props":970,"children":971},{},[972,977,981],{"type":310,"tag":389,"props":973,"children":974},{},[975],{"type":316,"value":976},"File upload",{"type":310,"tag":389,"props":978,"children":979},{},[980],{"type":316,"value":875},{"type":310,"tag":389,"props":982,"children":983},{},[984],{"type":316,"value":964},{"type":310,"tag":362,"props":986,"children":987},{},[988,993,997],{"type":310,"tag":389,"props":989,"children":990},{},[991],{"type":316,"value":992},"File download",{"type":310,"tag":389,"props":994,"children":995},{},[996],{"type":316,"value":875},{"type":310,"tag":389,"props":998,"children":999},{},[1000],{"type":316,"value":875},{"type":310,"tag":362,"props":1002,"children":1003},{},[1004,1009,1013],{"type":310,"tag":389,"props":1005,"children":1006},{},[1007],{"type":316,"value":1008},"Resumable upload for files larger than 32 MiB",{"type":310,"tag":389,"props":1010,"children":1011},{},[1012],{"type":316,"value":875},{"type":310,"tag":389,"props":1014,"children":1015},{},[1016],{"type":316,"value":964},{"type":310,"tag":318,"props":1018,"children":1019},{},[1020,1022,1028,1030,1036],{"type":316,"value":1021},"Remote block reads intentionally omit raw YDocument and encrypted-blob fields. Use ",{"type":310,"tag":331,"props":1023,"children":1025},{"className":1024},[],[1026],{"type":316,"value":1027},"get_document",{"type":316,"value":1029}," for structured collaborative content and ",{"type":310,"tag":331,"props":1031,"children":1033},{"className":1032},[],[1034],{"type":316,"value":1035},"list_files",{"type":316,"value":1037}," for file metadata.",{"type":310,"tag":347,"props":1039,"children":1041},{"id":1040},"safe-agent-writes",[1042],{"type":316,"value":1043},"Safe Agent Writes",{"type":310,"tag":318,"props":1045,"children":1046},{},[1047],{"type":316,"value":1048},"Document writes use structured operations instead of replacing Markdown blindly:",{"type":310,"tag":704,"props":1050,"children":1051},{},[1052,1063,1068,1088],{"type":310,"tag":708,"props":1053,"children":1054},{},[1055,1057,1062],{"type":316,"value":1056},"Call ",{"type":310,"tag":331,"props":1058,"children":1060},{"className":1059},[],[1061],{"type":316,"value":1027},{"type":316,"value":651},{"type":310,"tag":708,"props":1064,"children":1065},{},[1066],{"type":316,"value":1067},"Copy the returned document hash.",{"type":310,"tag":708,"props":1069,"children":1070},{},[1071,1073,1079,1081,1087],{"type":316,"value":1072},"Pass it as ",{"type":310,"tag":331,"props":1074,"children":1076},{"className":1075},[],[1077],{"type":316,"value":1078},"base_hash",{"type":316,"value":1080}," to ",{"type":310,"tag":331,"props":1082,"children":1084},{"className":1083},[],[1085],{"type":316,"value":1086},"patch_document",{"type":316,"value":651},{"type":310,"tag":708,"props":1089,"children":1090},{},[1091],{"type":316,"value":1092},"Fetch the document again if the hash no longer matches.",{"type":310,"tag":318,"props":1094,"children":1095},{},[1096,1098,1104],{"type":316,"value":1097},"Full document replacement is more destructive and additionally requires ",{"type":310,"tag":331,"props":1099,"children":1101},{"className":1100},[],[1102],{"type":316,"value":1103},"confirm_rebuild=true",{"type":316,"value":1105},". File tools require explicit local paths, and downloads do not overwrite existing files unless explicitly allowed.",{"type":310,"tag":318,"props":1107,"children":1108},{},[1109,1111,1117],{"type":316,"value":1110},"For Codex, keep the plugin's default approval mode on ",{"type":310,"tag":331,"props":1112,"children":1114},{"className":1113},[],[1115],{"type":316,"value":1116},"prompt",{"type":316,"value":1118},". Pre-approve read tools only if desired, while document mutations, relation changes, property changes, uploads, and filesystem writes continue to require approval.",{"type":310,"tag":347,"props":1120,"children":1122},{"id":1121},"troubleshooting",[1123],{"type":316,"value":1124},"Troubleshooting",{"type":310,"tag":1126,"props":1127,"children":1128},"ul",{},[1129,1150,1168,1197,1214],{"type":310,"tag":708,"props":1130,"children":1131},{},[1132,1142,1144,1149],{"type":310,"tag":780,"props":1133,"children":1134},{},[1135,1140],{"type":310,"tag":331,"props":1136,"children":1138},{"className":1137},[],[1139],{"type":316,"value":435},{"type":316,"value":1141}," is not found:",{"type":316,"value":1143}," install the package globally and restart the agent so it receives the updated ",{"type":310,"tag":331,"props":1145,"children":1147},{"className":1146},[],[1148],{"type":316,"value":690},{"type":316,"value":651},{"type":310,"tag":708,"props":1151,"children":1152},{},[1153,1158,1160,1166],{"type":310,"tag":780,"props":1154,"children":1155},{},[1156],{"type":316,"value":1157},"No active connection:",{"type":316,"value":1159}," run ",{"type":310,"tag":331,"props":1161,"children":1163},{"className":1162},[],[1164],{"type":316,"value":1165},"heaper auth status",{"type":316,"value":1167},", log in to a remote server, or start Electron with the Local API enabled.",{"type":310,"tag":708,"props":1169,"children":1170},{},[1171,1176,1177,1183,1185,1190,1191,1196],{"type":310,"tag":780,"props":1172,"children":1173},{},[1174],{"type":316,"value":1175},"Wrong server selected:",{"type":316,"value":1159},{"type":310,"tag":331,"props":1178,"children":1180},{"className":1179},[],[1181],{"type":316,"value":1182},"heaper auth servers",{"type":316,"value":1184},", then pass ",{"type":310,"tag":331,"props":1186,"children":1188},{"className":1187},[],[1189],{"type":316,"value":718},{"type":316,"value":643},{"type":310,"tag":331,"props":1192,"children":1194},{"className":1193},[],[1195],{"type":316,"value":649},{"type":316,"value":651},{"type":310,"tag":708,"props":1198,"children":1199},{},[1200,1205,1207,1212],{"type":310,"tag":780,"props":1201,"children":1202},{},[1203],{"type":316,"value":1204},"A capability is unsupported:",{"type":316,"value":1206}," call ",{"type":310,"tag":331,"props":1208,"children":1210},{"className":1209},[],[1211],{"type":316,"value":825},{"type":316,"value":1213},"; remote SQL and Electron-local uploads are intentionally unavailable.",{"type":310,"tag":708,"props":1215,"children":1216},{},[1217,1222],{"type":310,"tag":780,"props":1218,"children":1219},{},[1220],{"type":316,"value":1221},"MCP protocol parse errors:",{"type":316,"value":1223}," avoid shell wrappers that print banners to stdout because stdout is reserved for MCP protocol messages.",{"type":310,"tag":347,"props":1225,"children":1227},{"id":1226},"related-documentation",[1228],{"type":316,"value":1229},"Related Documentation",{"type":310,"tag":1126,"props":1231,"children":1232},{},[1233,1241,1248,1255],{"type":310,"tag":708,"props":1234,"children":1235},{},[1236],{"type":310,"tag":324,"props":1237,"children":1238},{"href":68},[1239],{"type":316,"value":1240},"Heaper CLI",{"type":310,"tag":708,"props":1242,"children":1243},{},[1244],{"type":310,"tag":324,"props":1245,"children":1246},{"href":111},[1247],{"type":316,"value":112},{"type":310,"tag":708,"props":1249,"children":1250},{},[1251],{"type":310,"tag":324,"props":1252,"children":1253},{"href":12},[1254],{"type":316,"value":13},{"type":310,"tag":708,"props":1256,"children":1257},{},[1258],{"type":310,"tag":324,"props":1259,"children":1260},{"href":30},[1261],{"type":316,"value":31},{"title":304,"searchDepth":28,"depth":28,"links":1263},[1264,1265,1266,1269,1270,1271,1272,1273],{"id":349,"depth":28,"text":352},{"id":496,"depth":28,"text":499},{"id":573,"depth":28,"text":576,"children":1267},[1268],{"id":655,"depth":66,"text":658},{"id":694,"depth":28,"text":697},{"id":811,"depth":28,"text":814},{"id":1040,"depth":28,"text":1043},{"id":1121,"depth":28,"text":1124},{"id":1226,"depth":28,"text":1229},"markdown","content:docs:api:agents-mcp.md","content","docs/api/agents-mcp.md","docs/api/agents-mcp","md",1785777128383]