Your agents get the same access you do.
Every GNKG install ships a local bridge that speaks three dialects. Whatever your agent is — Claude Code, Claude Desktop, Cursor, Windsurf, Codex, a claude.ai or ChatGPT connector, an OpenAI-style function-calling loop, LangChain, n8n, OmniLad — it can read, extend and query your notebooks as knowledge graphs. The extension keeps the session; the bridge only ever runs on your machine.
Desktop agent hosts
npx -y @metaphyllc/gnkg-bridge — ready configs for Claude Desktop, Claude Code, Cursor, Windsurf and Codex are in the harness.
Cloud connectors & remote agents
http://127.0.0.1:7802/mcp (Streamable HTTP, JSON-RPC). Tunnel it with a token for claude.ai / ChatGPT connectors or agents on other machines.
Any tool-calling model
/openapi.json turns all 22 tools into function specs; /llms.txt tells the model how to use them. Python and JS clients included.
Two commands, or one sentence.
PowerShell
irm https://gnkg.vercel.app/harness/install.ps1 | iexbash
curl -fsSL https://gnkg.vercel.app/harness/install.sh | bashTell your agent:
“Install the GNKG harness from https://gnkg.vercel.app/llms.txt and connect to my Gemini Notebook notebooks.”
The llms.txt file is written for machines: transports, tool list, workflow and rules. The installer downloads gnkg-agent-harness.zip, merges an MCP stdio entry (npx -y @metaphyllc/gnkg-bridge) into Claude Desktop / Claude Code / Cursor / Windsurf, and copies the /gnkg skill. It does not download the Chrome extension or the bridge zip. Until the Web Store listing is approved, load the extension unpacked from this repo's extension/ folder.
Twenty-two tools, one dispatcher.
| Tool | What it does |
|---|---|
gn_health | Extension/auth/transport health. Call first. |
gn_list_notebooks | List Gemini Notebook notebooks (most-recently-viewed first) with ids and source counts. |
gn_create_notebook | Create a notebook (a new mini knowledge graph). |
gn_delete_notebook | Delete a notebook permanently (irreversible). Only for notebooks the user asked to delete. |
gn_get_notebook | Get a notebook with its sources (id, title, kind, wordCount, status). |
gn_add_text_source | Add a text source (≤500k words). Use for bins, notes, transcripts. |
gn_add_url_source | Add a web page or YouTube URL as a source. |
gn_delete_source | Delete a source. |
gn_refresh_source | Re-sync a web/Drive source (the legacy B.I.F.R.O.S.T. feed trigger). |
gn_get_source | Read a source's indexed full text and AI summary. |
gn_ask | Ask the notebook a grounded question (uses Gemini Notebook's own retrieval). Optional sourceIds subset. |
gn_list_artifacts | List Studio artifacts (audio/video/report/slides/infographic/data table/mind map/quiz/flashcards) with status + media URLs. |
gn_create_artifact | Generate a Studio artifact remotely. kind: audio|video|report|slide_deck|infographic|data_table|mind_map|flashcards|quiz. wait=true polls until done (up to 15 min). |
gn_wait_artifact | Poll an artifact until completed/failed. |
gn_download_artifact | Download a completed artifact's media via Chrome downloads (TIWY handoff if enabled). |
gn_graph | Knowledge-graph view of a notebook (gnkg-graph-v1 JSON + Mermaid). |
bifrost_plan_bins | Plan B.I.F.R.O.S.T. bins locally: weighted FFD packing at 450k words, pre-chunk >400k, Bin 0 master index preview. files=[{name,text}]. |
bifrost_push_bins | Pack files and push Bin 0 + bins into a notebook as text sources (waits for each to index). Returns jobId; poll with gn_job. |
gn_job | Get a background job (pushBins) with progress/steps/result. |
gn_events | Recent extension events (jobs, logs, downloads). |
gn_dom_read | Fallback: read the open Gemini Notebook tab's DOM (sources, artifacts, chat) when RPC drifts. |
gn_open_notebook | Open a notebook in a new Chrome tab. |
Local by default
The bridge binds to 127.0.0.1. Set GNKG_TOKEN to require a bearer token; --lan refuses to start without one. Nothing of Google's is ever shared; revoke by stopping the bridge.
Tunnel with a token
Cloudflare Tunnel, ngrok or Tailscale expose only the bridge. Point the connector at https://<tunnel>/mcp with Authorization: Bearer. Guide in the harness.
One bridge per person
GNKG never centralises notebooks. Each person runs their own extension and bridge; their agents connect to theirs. A team shares notebooks the normal way, inside Gemini Notebook.
“The bridge was never the server. The bridge was the session.”