{"type":"advanced","internalDocumentIDStore":{"internalIdToId":["/docs/authentication/api-key","/docs/authentication/api-key-0","/docs/authentication/api-key-1","/docs/authentication/api-key-2","/docs/authentication/api-key-3","/docs/authentication/api-key-4","/docs/authentication/api-key-5","/docs/authentication/api-key-6","/docs/authentication/api-key-7","/docs/authentication/api-key-8","/docs/authentication/api-key-9","/docs/authentication/api-key-10","/docs/authentication/api-key-11","/docs/authentication/api-key-12","/docs/authentication/api-key-13","/docs/authentication/api-key-14","/docs/authentication/api-key-15","/docs/authentication/api-key-16","/docs/authentication/auth0","/docs/authentication/auth0-0","/docs/authentication/auth0-1","/docs/authentication/auth0-2","/docs/authentication/auth0-3","/docs/authentication/auth0-4","/docs/authentication/auth0-5","/docs/authentication/auth0-6","/docs/authentication/auth0-7","/docs/authentication/auth0-8","/docs/authentication/auth0-9","/docs/authentication/auth0-10","/docs/authentication/auth0-11","/docs/authentication/auth0-12","/docs/authentication/auth0-13","/docs/authentication/auth0-14","/docs/authentication/auth0-15","/docs/authentication/auth0-16","/docs/authentication/auth0-17","/docs/authentication/auth0-18","/docs/authentication/auth0-19","/docs/authentication/auth0-20","/docs/authentication/auth0-21","/docs/authentication/auth0-22","/docs/authentication/auth0-23","/docs/authentication/auth0-24","/docs/authentication/auth0-25","/docs/authentication/auth0-26","/docs/authentication/auth0-27","/docs/authentication/auth0-28","/docs/authentication/auth0-29","/docs/authentication/better-auth","/docs/authentication/better-auth-0","/docs/authentication/better-auth-1","/docs/authentication/better-auth-2","/docs/authentication/better-auth-3","/docs/authentication/better-auth-4","/docs/authentication/better-auth-5","/docs/authentication/better-auth-6","/docs/authentication/better-auth-7","/docs/authentication/better-auth-8","/docs/authentication/better-auth-9","/docs/authentication/better-auth-10","/docs/authentication/better-auth-11","/docs/authentication/better-auth-12","/docs/authentication/better-auth-13","/docs/authentication/better-auth-14","/docs/authentication/better-auth-15","/docs/authentication/better-auth-16","/docs/authentication/better-auth-17","/docs/authentication/better-auth-18","/docs/authentication/better-auth-19","/docs/authentication/better-auth-20","/docs/authentication/better-auth-21","/docs/authentication/better-auth-22","/docs/authentication/better-auth-23","/docs/authentication/better-auth-24","/docs/authentication/custom","/docs/authentication/custom-0","/docs/authentication/custom-1","/docs/authentication/custom-2","/docs/authentication/custom-3","/docs/authentication/custom-4","/docs/authentication/custom-5","/docs/authentication/custom-6","/docs/authentication/custom-7","/docs/authentication/custom-8","/docs/authentication/custom-9","/docs/authentication/custom-10","/docs/authentication/custom-11","/docs/authentication/custom-12","/docs/authentication/custom-13","/docs/authentication/custom-14","/docs/authentication/custom-15","/docs/authentication/custom-16","/docs/authentication/supabase","/docs/authentication/supabase-0","/docs/authentication/supabase-1","/docs/authentication/supabase-2","/docs/authentication/supabase-3","/docs/authentication/supabase-4","/docs/authentication/supabase-5","/docs/authentication/supabase-6","/docs/authentication/supabase-7","/docs/authentication/supabase-8","/docs/authentication/supabase-9","/docs/authentication/supabase-10","/docs/authentication/supabase-11","/docs/authentication/supabase-12","/docs/authentication/supabase-13","/docs/authentication/supabase-14","/docs/authentication/supabase-15","/docs/authentication/supabase-16","/docs/authentication/supabase-17","/docs/authentication/supabase-18","/docs/authentication/supabase-19","/docs/authentication/supabase-20","/docs/authentication/supabase-21","/docs/authentication/supabase-22","/docs/authentication/supabase-23","/docs/authentication/supabase-24","/docs/authentication/supabase-25","/docs/authentication/supabase-26","/docs/authentication/supabase-27","/docs/authentication/supabase-28","/docs/authentication/supabase-29","/docs/authentication/supabase-30","/docs/authentication/supabase-31","/docs/authentication/supabase-32","/docs/core-concepts/actions","/docs/core-concepts/actions-0","/docs/core-concepts/actions-1","/docs/core-concepts/actions-2","/docs/core-concepts/actions-3","/docs/core-concepts/actions-4","/docs/core-concepts/actions-5","/docs/core-concepts/actions-6","/docs/core-concepts/actions-7","/docs/core-concepts/actions-8","/docs/core-concepts/actions-9","/docs/core-concepts/actions-10","/docs/core-concepts/confirmations","/docs/core-concepts/confirmations-0","/docs/core-concepts/confirmations-1","/docs/core-concepts/confirmations-2","/docs/core-concepts/confirmations-3","/docs/core-concepts/confirmations-4","/docs/core-concepts/confirmations-5","/docs/core-concepts/confirmations-6","/docs/core-concepts/confirmations-7","/docs/core-concepts/confirmations-8","/docs/core-concepts/confirmations-9","/docs/core-concepts/confirmations-10","/docs/core-concepts/confirmations-11","/docs/core-concepts/confirmations-12","/docs/core-concepts/confirmations-13","/docs/core-concepts/confirmations-14","/docs/core-concepts/confirmations-15","/docs/core-concepts/handles","/docs/core-concepts/handles-0","/docs/core-concepts/handles-1","/docs/core-concepts/handles-2","/docs/core-concepts/handles-3","/docs/core-concepts/handles-4","/docs/core-concepts/handles-5","/docs/core-concepts/handles-6","/docs/core-concepts/handles-7","/docs/core-concepts/handles-8","/docs/core-concepts/handles-9","/docs/core-concepts/handles-10","/docs/core-concepts/handles-11","/docs/core-concepts/handles-12","/docs/core-concepts/handles-13","/docs/core-concepts/handles-14","/docs/core-concepts/handles-15","/docs/core-concepts/handles-16","/docs/core-concepts/handles-17","/docs/core-concepts/tools","/docs/core-concepts/tools-0","/docs/core-concepts/tools-1","/docs/core-concepts/tools-2","/docs/core-concepts/tools-3","/docs/core-concepts/tools-4","/docs/core-concepts/tools-5","/docs/core-concepts/tools-6","/docs/core-concepts/tools-7","/docs/core-concepts/tools-8","/docs/core-concepts/tools-9","/docs/core-concepts/tools-10","/docs/core-concepts/tools-11","/docs/core-concepts/tools-12","/docs/core-concepts/tools-13","/docs/core-concepts/tools-14","/docs/core-concepts/tools-15","/docs/core-concepts/tools-16","/docs/core-concepts/tools-17","/docs/core-concepts/tools-18","/docs/core-concepts/tools-19","/docs/core-concepts/tools-20","/docs/core-concepts/tools-21","/docs/core-concepts/tools-22","/docs/core-concepts/tools-23","/docs/core-concepts/tools-24","/docs/core-concepts/tools-25","/docs/core-concepts/tools-26","/docs/core-concepts/tools-27","/docs/core-concepts/tools-28","/docs/core-concepts/tools-29","/docs/core-concepts/tools-30","/docs/core-concepts/tools-31","/docs/core-concepts/tools-32","/docs/core-concepts/tools-33","/docs/core-concepts/tools-34","/docs/core-concepts/tools-35","/docs/core-concepts/tools-36","/docs/core-concepts/tools-37","/docs/core-concepts/tools-38","/docs/core-concepts/tools-39","/docs/core-concepts/views","/docs/core-concepts/views-0","/docs/core-concepts/views-1","/docs/core-concepts/views-2","/docs/core-concepts/views-3","/docs/core-concepts/views-4","/docs/core-concepts/views-5","/docs/core-concepts/views-6","/docs/core-concepts/views-7","/docs/core-concepts/views-8","/docs/core-concepts/views-9","/docs/core-concepts/views-10","/docs/core-concepts/views-11","/docs/core-concepts/views-12","/docs/core-concepts/views-13","/docs/core-concepts/views-14","/docs/core-concepts/views-15","/docs/core-concepts/views-16","/docs/core-concepts/views-17","/docs/core-concepts/views-18","/docs/core-concepts/views-19","/docs/core-concepts/views-20","/docs/core-concepts/views-21","/docs/core-concepts/views-22","/docs/core-concepts/views-23","/docs/core-concepts/views-24","/docs/core-concepts/views-25","/docs/core-concepts/views-26","/docs/core-concepts/views-27","/docs/core-concepts/views-28","/docs/core-concepts/views-29","/docs/core-concepts/views-30","/docs/core-concepts/views-31","/docs/core-concepts/views-32","/docs/core-concepts/views-33","/docs/core-concepts/views-34","/docs/core-concepts/views-35","/docs/core-concepts/views-36","/docs/core-concepts/views-37","/docs/core-concepts/views-38","/docs/core-concepts/views-39","/docs/core-concepts/views-40","/docs/core-concepts/views-41","/docs/core-concepts/views-42","/docs/core-concepts/views-43","/docs/core-concepts/views-44","/docs/core-concepts/views-45","/docs/core-concepts/views-46","/docs/core-concepts/views-47","/docs/core-concepts/views-48","/docs/core-concepts/views-49","/docs/core-concepts/views-50","/docs/core-concepts/views-51","/docs/core-concepts/views-52","/docs/core-concepts/views-53","/docs/core-concepts/views-54","/docs/core-concepts/views-55","/docs/core-concepts/views-56","/docs/core-concepts/views-57","/docs/core-concepts/views-58","/docs/core-concepts/views-59","/docs/core-concepts/views-60","/docs/core-concepts/views-61","/docs/deployment/cloudflare","/docs/deployment/cloudflare-0","/docs/deployment/cloudflare-1","/docs/deployment/cloudflare-2","/docs/deployment/cloudflare-3","/docs/deployment/cloudflare-4","/docs/deployment/cloudflare-5","/docs/deployment/cloudflare-6","/docs/deployment/cloudflare-7","/docs/deployment/cloudflare-8","/docs/deployment/cloudflare-9","/docs/deployment/cloudflare-10","/docs/deployment/cloudflare-11","/docs/deployment/cloudflare-12","/docs/deployment/cloudflare-13","/docs/deployment/cloudflare-14","/docs/deployment/node","/docs/deployment/node-0","/docs/deployment/node-1","/docs/deployment/node-2","/docs/deployment/node-3","/docs/deployment/node-4","/docs/deployment/node-5","/docs/deployment/node-6","/docs/deployment/node-7","/docs/deployment/node-8","/docs/deployment/node-9","/docs/deployment/node-10","/docs/deployment/node-11","/docs/deployment/node-12","/docs/deployment/node-13","/docs/deployment/node-14","/docs/deployment/node-15","/docs/deployment/node-16","/docs/deployment/node-17","/docs/deployment/node-18","/docs/deployment/node-19","/docs/deployment/node-20","/docs/deployment/node-21","/docs/deployment/node-22","/docs/deployment/node-23","/docs/deployment/node-24","/docs/deployment/node-25","/docs/deployment/node-26","/docs/deployment/node-27","/docs/deployment/node-28","/docs/deployment/node-29","/docs/deployment/vercel","/docs/deployment/vercel-0","/docs/deployment/vercel-1","/docs/deployment/vercel-2","/docs/deployment/vercel-3","/docs/deployment/vercel-4","/docs/deployment/vercel-5","/docs/deployment/vercel-6","/docs/deployment/vercel-7","/docs/deployment/vercel-8","/docs/deployment/vercel-9","/docs/deployment/vercel-10","/docs/deployment/vercel-11","/docs/deployment/vercel-12","/docs/deployment/vercel-13","/docs/deployment/vercel-14","/docs/deployment/vercel-15","/docs/discoverability/server-card","/docs/discoverability/server-card-0","/docs/discoverability/server-card-1","/docs/discoverability/server-card-2","/docs/discoverability/server-card-3","/docs/discoverability/server-card-4","/docs/discoverability/server-card-5","/docs/discoverability/server-card-6","/docs/discoverability/server-card-7","/docs/discoverability/server-card-8","/docs/discoverability/server-card-9","/docs/discoverability/server-card-10","/docs/discoverability/server-card-11","/docs/discoverability/server-card-12","/docs/discoverability/server-card-13","/docs/discoverability/server-card-14","/docs/discoverability/server-card-15","/docs/discoverability/server-card-16","/docs/discoverability/server-card-17","/docs/discoverability/server-card-18","/docs/discoverability/server-card-19","/docs/discoverability/server-card-20","/docs/discoverability/server-card-21","/docs/discoverability/server-card-22","/docs/discoverability/server-card-23","/docs/discoverability/server-card-24","/docs/discoverability/server-card-25","/docs/discoverability/server-card-26","/docs/discoverability/server-card-27","/docs/discoverability/server-card-28","/docs/discoverability/server-card-29","/docs/discoverability/server-card-30","/docs/discoverability/server-card-31","/docs/discoverability/server-card-32","/docs/discoverability/server-card-33","/docs/discoverability/server-card-34","/docs/discoverability/server-card-35","/docs/discoverability/server-card-36","/docs/discoverability/server-card-37","/docs/discoverability/server-card-38","/docs/discoverability/server-card-39","/docs/discoverability/server-card-40","/docs/discoverability/server-card-41","/docs/getting-started/connecting","/docs/getting-started/connecting-0","/docs/getting-started/connecting-1","/docs/getting-started/connecting-2","/docs/getting-started/connecting-3","/docs/getting-started/connecting-4","/docs/getting-started/connecting-5","/docs/getting-started/connecting-6","/docs/getting-started/connecting-7","/docs/getting-started/connecting-8","/docs/getting-started/connecting-9","/docs/getting-started/connecting-10","/docs/getting-started/connecting-11","/docs/getting-started/connecting-12","/docs/getting-started/connecting-13","/docs/getting-started/connecting-14","/docs/getting-started/connecting-15","/docs/getting-started/connecting-16","/docs/getting-started/connecting-17","/docs/getting-started/connecting-18","/docs/getting-started/connecting-19","/docs/getting-started/connecting-20","/docs/getting-started/connecting-21","/docs/getting-started/connecting-22","/docs/getting-started/connecting-23","/docs/getting-started/connecting-24","/docs/getting-started/connecting-25","/docs/getting-started/connecting-26","/docs/getting-started/connecting-27","/docs/getting-started/connecting-28","/docs/getting-started/connecting-29","/docs/getting-started/connecting-30","/docs/getting-started/connecting-31","/docs/getting-started/connecting-32","/docs/getting-started/connecting-33","/docs/getting-started/connecting-34","/docs/getting-started/connecting-35","/docs/getting-started/connecting-36","/docs/getting-started/connecting-37","/docs/getting-started/connecting-38","/docs/getting-started/connecting-39","/docs/getting-started/connecting-40","/docs/getting-started/connecting-41","/docs/getting-started/connecting-42","/docs/getting-started/connecting-43","/docs/getting-started/connecting-44","/docs/getting-started/installation","/docs/getting-started/installation-0","/docs/getting-started/installation-1","/docs/getting-started/installation-2","/docs/getting-started/installation-3","/docs/getting-started/installation-4","/docs/getting-started/installation-5","/docs/getting-started/installation-6","/docs/getting-started/installation-7","/docs/getting-started/installation-8","/docs/getting-started/installation-9","/docs/getting-started/installation-10","/docs/getting-started/installation-11","/docs/getting-started/installation-12","/docs/getting-started/installation-13","/docs/getting-started/installation-14","/docs/getting-started/installation-15","/docs/getting-started/installation-16","/docs/getting-started/installation-17","/docs/getting-started/installation-18","/docs/getting-started/installation-19","/docs/getting-started/installation-20","/docs/getting-started/installation-21","/docs/getting-started/installation-22","/docs/getting-started/installation-23","/docs/getting-started/installation-24","/docs/getting-started/installation-25","/docs/getting-started/installation-26","/docs/getting-started/installation-27","/docs/getting-started/installation-28","/docs/getting-started/installation-29","/docs/getting-started/installation-30","/docs/getting-started/installation-31","/docs/getting-started/installation-32","/docs/getting-started/installation-33","/docs/getting-started/installation-34","/docs/getting-started/installation-35","/docs/getting-started/installation-36","/docs/getting-started/installation-37","/docs/getting-started/installation-38","/docs/getting-started/installation-39","/docs/getting-started/installation-40","/docs/getting-started/installation-41","/docs/getting-started/installation-42","/docs/getting-started/installation-43","/docs/getting-started/installation-44","/docs/getting-started/installation-45","/docs/getting-started/installation-46","/docs/getting-started/installation-47","/docs/getting-started/installation-48","/docs/getting-started/installation-49","/docs/getting-started/installation-50","/docs/getting-started/installation-51","/docs/getting-started/installation-52","/docs/getting-started/installation-53","/docs/getting-started/installation-54","/docs/getting-started/installation-55","/docs/getting-started/installation-56","/docs/getting-started/installation-57","/docs/getting-started/installation-58","/docs/getting-started/installation-59","/docs/getting-started/installation-60","/docs/getting-started/installation-61","/docs/getting-started/installation-62","/docs/getting-started/installation-63","/docs/getting-started/installation-64","/docs/getting-started/project-structure","/docs/getting-started/project-structure-0","/docs/getting-started/project-structure-1","/docs/getting-started/project-structure-2","/docs/getting-started/project-structure-3","/docs/getting-started/project-structure-4","/docs/getting-started/project-structure-5","/docs/getting-started/project-structure-6","/docs/getting-started/project-structure-7","/docs/getting-started/project-structure-8","/docs/getting-started/project-structure-9","/docs/getting-started/project-structure-10","/docs/getting-started/project-structure-11","/docs/getting-started/project-structure-12","/docs/getting-started/project-structure-13","/docs/getting-started/project-structure-14","/docs/getting-started/project-structure-15","/docs/getting-started/project-structure-16","/docs/getting-started/project-structure-17","/docs/getting-started/project-structure-18","/docs/getting-started/project-structure-19","/docs/getting-started/project-structure-20","/docs/getting-started/project-structure-21","/docs/getting-started/project-structure-22","/docs/getting-started/project-structure-23","/docs/getting-started/project-structure-24","/docs/getting-started/project-structure-25","/docs/getting-started/project-structure-26","/docs/getting-started/project-structure-27","/docs/getting-started/project-structure-28","/docs/getting-started/project-structure-29","/docs/getting-started/project-structure-30","/docs/getting-started/project-structure-31","/docs/getting-started/project-structure-32","/docs/getting-started/project-structure-33"]},"index":{"indexes":{"content":{"type":"Radix","node":{"w":"","s":"","e":false,"k":"","c":[["a",{"w":"a","s":"a","e":true,"k":"a","c":[["p",{"w":"ap","s":"p","e":false,"k":"p","c":[["i",{"w":"api","s":"i","e":true,"k":"i","c":[["k",{"w":"apikey","s":"key","e":true,"k":"k","c":[]}],["_",{"w":"api_key","s":"_key","e":true,"k":"_","c":[]}]]}],["p",{"w":"app","s":"p","e":true,"k":"p","c":[[".",{"w":"app.","s":".","e":false,"k":".","c":[["e",{"w":"app.example.com","s":"example.com","e":true,"k":"e","c":[]}],["s",{"w":"app.stdio","s":"stdio","e":true,"k":"s","c":[]}],["f",{"w":"app.fetch","s":"fetch","e":true,"k":"f","c":[]}],["v",{"w":"app.vercel.app","s":"vercel.app","e":true,"k":"v","c":[]}]]}],["s",{"w":"apps","s":"s","e":true,"k":"s","c":[["h",{"w":"appshell","s":"hell","e":true,"k":"h","c":[]}]]}],["l",{"w":"appl","s":"l","e":false,"k":"l","c":[["i",{"w":"appli","s":"i","e":false,"k":"i","c":[["c",{"w":"application","s":"cation","e":true,"k":"c","c":[]}],["e",{"w":"applies","s":"es","e":true,"k":"e","c":[]}]]}],["y",{"w":"apply","s":"y","e":true,"k":"y","c":[]}]]}],["e",{"w":"appear","s":"ear","e":true,"k":"e","c":[]}],["i",{"w":"appinfo","s":"info","e":true,"k":"i","c":[]}]]}]]}],["n",{"w":"an","s":"n","e":true,"k":"n","c":[["d",{"w":"and","s":"d","e":true,"k":"d","c":[]}],["y",{"w":"any","s":"y","e":true,"k":"y","c":[]}],["o",{"w":"another","s":"other","e":true,"k":"o","c":[]}],["n",{"w":"annotations","s":"notations","e":true,"k":"n","c":[]}],["s",{"w":"answers","s":"swers","e":true,"k":"s","c":[]}]]}],["u",{"w":"au","s":"u","e":false,"k":"u","c":[["t",{"w":"aut","s":"t","e":false,"k":"t","c":[["h",{"w":"auth","s":"h","e":true,"k":"h","c":[["0",{"w":"auth0","s":"0","e":true,"k":"0","c":[["_",{"w":"auth0_","s":"_","e":false,"k":"_","c":[["a",{"w":"auth0_audience","s":"audience","e":true,"k":"a","c":[]}],["d",{"w":"auth0_domain","s":"domain","e":true,"k":"d","c":[]}]]}]]}],["e",{"w":"authenticat","s":"enticat","e":false,"k":"e","c":[["i",{"w":"authentication","s":"ion","e":true,"k":"i","c":[]}],["e",{"w":"authenticated","s":"ed","e":true,"k":"e","c":[]}]]}],["o",{"w":"author","s":"or","e":true,"k":"o","c":[["i",{"w":"authorization","s":"ization","e":true,"k":"i","c":[]}],["s",{"w":"authors","s":"s","e":true,"k":"s","c":[]}]]}],["'",{"w":"auth's","s":"'s","e":true,"k":"'","c":[]}],["u",{"w":"authurl","s":"url","e":true,"k":"u","c":[]}]]}],["o",{"w":"automatically","s":"omatically","e":true,"k":"o","c":[]}]]}],["d",{"w":"audience","s":"dience","e":true,"k":"d","c":[]}]]}],["c",{"w":"ac","s":"c","e":false,"k":"c","c":[["c",{"w":"acce","s":"ce","e":false,"k":"c","c":[["s",{"w":"access","s":"ss","e":true,"k":"s","c":[]}],["p",{"w":"accept","s":"pt","e":true,"k":"p","c":[["s",{"w":"accepts","s":"s","e":true,"k":"s","c":[]}],["a",{"w":"acceptance","s":"ance","e":true,"k":"a","c":[]}]]}]]}],["t",{"w":"action","s":"tion","e":true,"k":"t","c":[["s",{"w":"actions","s":"s","e":true,"k":"s","c":[[".",{"w":"actions.ts","s":".ts","e":true,"k":".","c":[]}]]}]]}],["r",{"w":"across","s":"ross","e":true,"k":"r","c":[]}]]}],["s",{"w":"as","s":"s","e":true,"k":"s","c":[["k",{"w":"ask","s":"k","e":true,"k":"k","c":[]}],["s",{"w":"ass","s":"s","e":false,"k":"s","c":[["u",{"w":"assume","s":"ume","e":true,"k":"u","c":[]}],["e",{"w":"asset","s":"et","e":true,"k":"e","c":[]}]]}]]}],["r",{"w":"ar","s":"r","e":false,"k":"r","c":[["e",{"w":"are","s":"e","e":true,"k":"e","c":[]}],["g",{"w":"arg","s":"g","e":true,"k":"g","c":[["u",{"w":"argument","s":"ument","e":true,"k":"u","c":[["s",{"w":"arguments","s":"s","e":true,"k":"s","c":[]}]]}],["s",{"w":"args","s":"s","e":true,"k":"s","c":[]}]]}],["r",{"w":"arrives","s":"rives","e":true,"k":"r","c":[]}],["t",{"w":"artifact","s":"tifact","e":true,"k":"t","c":[]}]]}],["v",{"w":"ava","s":"va","e":false,"k":"v","c":[["i",{"w":"available","s":"ilable","e":true,"k":"i","c":[]}],["t",{"w":"avatarurl","s":"tarurl","e":true,"k":"t","c":[]}]]}],["g",{"w":"against","s":"gainst","e":true,"k":"g","c":[]}],["t",{"w":"at","s":"t","e":true,"k":"t","c":[["t",{"w":"attach","s":"tach","e":true,"k":"t","c":[["e",{"w":"attaches","s":"es","e":true,"k":"e","c":[]}]]}]]}],["l",{"w":"al","s":"l","e":false,"k":"l","c":[["s",{"w":"also","s":"so","e":true,"k":"s","c":[]}],["l",{"w":"all","s":"l","e":true,"k":"l","c":[["o",{"w":"allow","s":"ow","e":true,"k":"o","c":[["l",{"w":"allowlist","s":"list","e":true,"k":"l","c":[["s",{"w":"allowlists","s":"s","e":true,"k":"s","c":[]}]]}],["e",{"w":"allowedhosts","s":"edhosts","e":true,"k":"e","c":[]}]]}]]}],["w",{"w":"always","s":"ways","e":true,"k":"w","c":[]}],["r",{"w":"already","s":"ready","e":true,"k":"r","c":[]}],["i",{"w":"ali","s":"i","e":false,"k":"i","c":[["a",{"w":"alias","s":"as","e":true,"k":"a","c":[]}],["g",{"w":"aligned","s":"gned","e":true,"k":"g","c":[]}]]}]]}],["a",{"w":"aal","s":"al","e":true,"k":"a","c":[]}],["m",{"w":"amr","s":"mr","e":true,"k":"m","c":[]}],["f",{"w":"after","s":"fter","e":true,"k":"f","c":[]}],["w",{"w":"away","s":"way","e":true,"k":"w","c":[]}],["d",{"w":"ad","s":"d","e":false,"k":"d","c":[["a",{"w":"adapter","s":"apter","e":true,"k":"a","c":[]}],["d",{"w":"add","s":"d","e":true,"k":"d","c":[["r",{"w":"address","s":"ress","e":true,"k":"r","c":[["e",{"w":"addressed","s":"ed","e":true,"k":"e","c":[]}]]}]]}],["v",{"w":"advertise","s":"vertise","e":true,"k":"v","c":[["s",{"w":"advertises","s":"s","e":true,"k":"s","c":[]}]]}]]}]]}],["k",{"w":"k","s":"k","e":false,"k":"k","c":[["e",{"w":"ke","s":"e","e":false,"k":"e","c":[["y",{"w":"key","s":"y","e":true,"k":"y","c":[["s",{"w":"keys","s":"s","e":true,"k":"s","c":[]}]]}],["e",{"w":"keep","s":"ep","e":false,"k":"e","c":[["s",{"w":"keeps","s":"s","e":true,"k":"s","c":[]}],["i",{"w":"keeping","s":"ing","e":true,"k":"i","c":[]}]]}]]}],["i",{"w":"kind","s":"ind","e":true,"k":"i","c":[]}],["v",{"w":"kv","s":"v","e":true,"k":"v","c":[]}],["n",{"w":"known","s":"nown","e":true,"k":"n","c":[]}]]}],["s",{"w":"s","s":"s","e":false,"k":"s","c":[["h",{"w":"sh","s":"h","e":false,"k":"h","c":[["a",{"w":"sha","s":"a","e":false,"k":"a","c":[["r",{"w":"shared","s":"red","e":true,"k":"r","c":[]}],["p",{"w":"shape","s":"pe","e":true,"k":"p","c":[["d",{"w":"shaped","s":"d","e":true,"k":"d","c":[]}]]}]]}],["o",{"w":"sho","s":"o","e":false,"k":"o","c":[["u",{"w":"should","s":"uld","e":true,"k":"u","c":[]}],["r",{"w":"short","s":"rt","e":true,"k":"r","c":[]}],["w",{"w":"show","s":"w","e":true,"k":"w","c":[]}]]}],["e",{"w":"shell","s":"ell","e":true,"k":"e","c":[]}],["i",{"w":"ship","s":"ip","e":true,"k":"i","c":[]}]]}],["e",{"w":"se","s":"e","e":false,"k":"e","c":[["c",{"w":"sec","s":"c","e":false,"k":"c","c":[["r",{"w":"secret","s":"ret","e":true,"k":"r","c":[["s",{"w":"secrets","s":"s","e":true,"k":"s","c":[]}]]}],["u",{"w":"security","s":"urity","e":true,"k":"u","c":[]}],["o",{"w":"secondary","s":"ondary","e":true,"k":"o","c":[]}]]}],["t",{"w":"set","s":"t","e":true,"k":"t","c":[["s",{"w":"sets","s":"s","e":true,"k":"s","c":[]}],["u",{"w":"setup","s":"up","e":true,"k":"u","c":[]}]]}],["n",{"w":"sen","s":"n","e":false,"k":"n","c":[["d",{"w":"send","s":"d","e":true,"k":"d","c":[]}],["s",{"w":"sensitive","s":"sitive","e":true,"k":"s","c":[]}]]}],["r",{"w":"serv","s":"rv","e":false,"k":"r","c":[["e",{"w":"serve","s":"e","e":true,"k":"e","c":[["r",{"w":"server","s":"r","e":true,"k":"r","c":[[".",{"w":"server.js","s":".js","e":true,"k":".","c":[]}],["s",{"w":"servers","s":"s","e":true,"k":"s","c":[]}],["c",{"w":"servercard","s":"card","e":true,"k":"c","c":[]}]]}],["d",{"w":"served","s":"d","e":true,"k":"d","c":[]}],["s",{"w":"serves","s":"s","e":true,"k":"s","c":[]}]]}],["i",{"w":"service","s":"ice","e":true,"k":"i","c":[]}]]}],["s",{"w":"session","s":"ssion","e":true,"k":"s","c":[["i",{"w":"sessionid","s":"id","e":true,"k":"i","c":[]}],["s",{"w":"sessions","s":"s","e":true,"k":"s","c":[]}]]}],["l",{"w":"self","s":"lf","e":true,"k":"l","c":[]}],["e",{"w":"see","s":"e","e":true,"k":"e","c":[["s",{"w":"sees","s":"s","e":true,"k":"s","c":[]}]]}]]}],["u",{"w":"su","s":"u","e":false,"k":"u","c":[["p",{"w":"sup","s":"p","e":false,"k":"p","c":[["a",{"w":"supabase","s":"abase","e":true,"k":"a","c":[["_",{"w":"supabase_","s":"_","e":false,"k":"_","c":[["p",{"w":"supabase_project_id","s":"project_id","e":true,"k":"p","c":[]}],["u",{"w":"supabase_url","s":"url","e":true,"k":"u","c":[]}],["j",{"w":"supabase_jwt_secret","s":"jwt_secret","e":true,"k":"j","c":[]}]]}]]}],["p",{"w":"support","s":"port","e":true,"k":"p","c":[["e",{"w":"supported","s":"ed","e":true,"k":"e","c":[]}]]}]]}],["r",{"w":"survive","s":"rvive","e":true,"k":"r","c":[]}],["m",{"w":"summary","s":"mmary","e":true,"k":"m","c":[]}],["b",{"w":"subset","s":"bset","e":true,"k":"b","c":[]}]]}],["t",{"w":"st","s":"t","e":false,"k":"t","c":[["a",{"w":"sta","s":"a","e":false,"k":"a","c":[["r",{"w":"start","s":"rt","e":true,"k":"r","c":[["s",{"w":"starts","s":"s","e":true,"k":"s","c":[]}]]}],["n",{"w":"standard","s":"ndard","e":true,"k":"n","c":[]}],["t",{"w":"stat","s":"t","e":false,"k":"t","c":[["e",{"w":"state","s":"e","e":true,"k":"e","c":[["l",{"w":"stateless","s":"less","e":true,"k":"l","c":[]}]]}],["u",{"w":"status","s":"us","e":true,"k":"u","c":[]}]]}],["b",{"w":"stable","s":"ble","e":true,"k":"b","c":[]}],["y",{"w":"stay","s":"y","e":true,"k":"y","c":[]}]]}],["r",{"w":"str","s":"r","e":false,"k":"r","c":[["u",{"w":"structure","s":"ucture","e":true,"k":"u","c":[["d",{"w":"structuredcontent","s":"dcontent","e":true,"k":"d","c":[]}]]}],["e",{"w":"streamable","s":"eamable","e":true,"k":"e","c":[]}],["i",{"w":"strips","s":"ips","e":true,"k":"i","c":[]}]]}],["i",{"w":"sti","s":"i","e":false,"k":"i","c":[["c",{"w":"sticky","s":"cky","e":true,"k":"c","c":[]}],["l",{"w":"still","s":"ll","e":true,"k":"l","c":[]}]]}],["o",{"w":"stor","s":"or","e":false,"k":"o","c":[["e",{"w":"store","s":"e","e":true,"k":"e","c":[["s",{"w":"stores","s":"s","e":true,"k":"s","c":[]}]]}],["a",{"w":"storage","s":"age","e":true,"k":"a","c":[]}]]}],["y",{"w":"styl","s":"yl","e":false,"k":"y","c":[["e",{"w":"style","s":"e","e":true,"k":"e","c":[["s",{"w":"styles","s":"s","e":true,"k":"s","c":[]}]]}],["i",{"w":"styling","s":"ing","e":true,"k":"i","c":[]}]]}],["d",{"w":"stdio","s":"dio","e":true,"k":"d","c":[]}],["e",{"w":"step","s":"ep","e":true,"k":"e","c":[]}]]}],["p",{"w":"sp","s":"p","e":false,"k":"p","c":[["e",{"w":"spec","s":"ec","e":true,"k":"e","c":[["i",{"w":"specific","s":"ific","e":true,"k":"i","c":[]}]]}],["a",{"w":"spawn","s":"awn","e":true,"k":"a","c":[["s",{"w":"spawns","s":"s","e":true,"k":"s","c":[]}]]}]]}],["a",{"w":"sa","s":"a","e":false,"k":"a","c":[["m",{"w":"same","s":"me","e":true,"k":"m","c":[]}],["f",{"w":"safe","s":"fe","e":true,"k":"f","c":[]}],["n",{"w":"san","s":"n","e":false,"k":"n","c":[["d",{"w":"sandbox","s":"dbox","e":true,"k":"d","c":[]}],["s",{"w":"sans","s":"s","e":true,"k":"s","c":[]}]]}],["t",{"w":"satisfy","s":"tisfy","e":true,"k":"t","c":[]}]]}],["i",{"w":"si","s":"i","e":false,"k":"i","c":[["g",{"w":"sign","s":"gn","e":true,"k":"g","c":[]}],["d",{"w":"side","s":"de","e":true,"k":"d","c":[]}],["n",{"w":"single","s":"ngle","e":true,"k":"n","c":[]}],["b",{"w":"sibling","s":"bling","e":true,"k":"b","c":[]}],["t",{"w":"site","s":"te","e":true,"k":"t","c":[]}],["z",{"w":"sizes","s":"zes","e":true,"k":"z","c":[]}]]}],["o",{"w":"so","s":"o","e":true,"k":"o","c":[["u",{"w":"source","s":"urce","e":true,"k":"u","c":[]}]]}],["c",{"w":"sc","s":"c","e":false,"k":"c","c":[["o",{"w":"scope","s":"ope","e":false,"k":"o","c":[["d",{"w":"scoped","s":"d","e":true,"k":"d","c":[]}],[".",{"w":"scope.package","s":".package","e":true,"k":".","c":[]}]]}],["h",{"w":"schema","s":"hema","e":true,"k":"h","c":[["s",{"w":"schemas","s":"s","e":true,"k":"s","c":[]}]]}],["r",{"w":"script","s":"ript","e":true,"k":"r","c":[["s",{"w":"scripts","s":"s","e":true,"k":"s","c":[]}]]}],["a",{"w":"sca","s":"a","e":false,"k":"a","c":[["n",{"w":"scans","s":"ns","e":true,"k":"n","c":[]}],["f",{"w":"scaffold","s":"ffold","e":true,"k":"f","c":[["e",{"w":"scaffolded","s":"ed","e":true,"k":"e","c":[]}]]}]]}]]}],["s",{"w":"sse","s":"se","e":true,"k":"s","c":[]}],["r",{"w":"src","s":"rc","e":true,"k":"r","c":[]}]]}],["d",{"w":"d","s":"d","e":false,"k":"d","c":[["e",{"w":"de","s":"e","e":false,"k":"e","c":[["v",{"w":"dev","s":"v","e":true,"k":"v","c":[["e",{"w":"development","s":"elopment","e":true,"k":"e","c":[]}]]}],["f",{"w":"def","s":"f","e":false,"k":"f","c":[["a",{"w":"default","s":"ault","e":true,"k":"a","c":[["s",{"w":"defaults","s":"s","e":true,"k":"s","c":[]}],[".",{"w":"default.fetch","s":".fetch","e":true,"k":".","c":[]}]]}],["i",{"w":"define","s":"ine","e":true,"k":"i","c":[["a",{"w":"defineaction","s":"action","e":true,"k":"a","c":[]}],["t",{"w":"definetool","s":"tool","e":true,"k":"t","c":[]}]]}]]}],["s",{"w":"des","s":"s","e":false,"k":"s","c":[["c",{"w":"description","s":"cription","e":true,"k":"c","c":[]}],["t",{"w":"destructive","s":"tructive","e":true,"k":"t","c":[["h",{"w":"destructivehint","s":"hint","e":true,"k":"h","c":[]}]]}],["k",{"w":"desktop","s":"ktop","e":true,"k":"k","c":[]}]]}],["c",{"w":"declare","s":"clare","e":true,"k":"c","c":[]}],["l",{"w":"delete","s":"lete","e":false,"k":"l","c":[["s",{"w":"deletes","s":"s","e":true,"k":"s","c":[]}],["_",{"w":"delete_rows","s":"_rows","e":true,"k":"_","c":[]}]]}],["n",{"w":"deny","s":"ny","e":true,"k":"n","c":[]}],["p",{"w":"dep","s":"p","e":false,"k":"p","c":[["l",{"w":"deploy","s":"loy","e":true,"k":"l","c":[["m",{"w":"deployment","s":"ment","e":true,"k":"m","c":[]}]]}],["e",{"w":"dependencies","s":"endencies","e":true,"k":"e","c":[]}]]}],["g",{"w":"degradation","s":"gradation","e":true,"k":"g","c":[]}]]}],["o",{"w":"do","s":"o","e":true,"k":"o","c":[["e",{"w":"does","s":"es","e":true,"k":"e","c":[]}],["m",{"w":"domain","s":"main","e":true,"k":"m","c":[]}],["c",{"w":"document","s":"cument","e":true,"k":"c","c":[]}]]}],["y",{"w":"dynamic","s":"ynamic","e":true,"k":"y","c":[]}],["i",{"w":"di","s":"i","e":false,"k":"i","c":[["r",{"w":"direct","s":"rect","e":true,"k":"r","c":[["l",{"w":"directly","s":"ly","e":true,"k":"l","c":[]}]]}],["f",{"w":"differ","s":"ffer","e":true,"k":"f","c":[["s",{"w":"differs","s":"s","e":true,"k":"s","c":[]}]]}],["s",{"w":"dis","s":"s","e":false,"k":"s","c":[["c",{"w":"discover","s":"cover","e":true,"k":"c","c":[["s",{"w":"discovers","s":"s","e":true,"k":"s","c":[]}],["y",{"w":"discovery","s":"y","e":true,"k":"y","c":[]}],["e",{"w":"discovered","s":"ed","e":true,"k":"e","c":[]}]]}],["t",{"w":"dist","s":"t","e":true,"k":"t","c":[]}],["a",{"w":"disable","s":"able","e":true,"k":"a","c":[["d",{"w":"disabled","s":"d","e":true,"k":"d","c":[]}]]}],["p",{"w":"display","s":"play","e":true,"k":"p","c":[]}]]}]]}],["a",{"w":"da","s":"a","e":false,"k":"a","c":[["s",{"w":"dashboard","s":"shboard","e":true,"k":"s","c":[]}],["t",{"w":"data","s":"ta","e":true,"k":"t","c":[]}]]}],["1",{"w":"d1","s":"1","e":true,"k":"1","c":[]}]]}],["g",{"w":"g","s":"g","e":false,"k":"g","c":[["a",{"w":"gate","s":"ate","e":true,"k":"a","c":[["s",{"w":"gates","s":"s","e":true,"k":"s","c":[]}],["d",{"w":"gated","s":"d","e":true,"k":"d","c":[]}]]}],["e",{"w":"ge","s":"e","e":false,"k":"e","c":[["t",{"w":"get","s":"t","e":true,"k":"t","c":[]}],["n",{"w":"gener","s":"ner","e":false,"k":"n","c":[["a",{"w":"generat","s":"at","e":false,"k":"a","c":[["e",{"w":"generate","s":"e","e":true,"k":"e","c":[["d",{"w":"generated","s":"d","e":true,"k":"d","c":[]}]]}],["i",{"w":"generation","s":"ion","e":true,"k":"i","c":[]}]]}],["i",{"w":"generic","s":"ic","e":true,"k":"i","c":[]}]]}]]}],["o",{"w":"goes","s":"oes","e":true,"k":"o","c":[]}],["u",{"w":"gu","s":"u","e":false,"k":"u","c":[["a",{"w":"guards","s":"ards","e":true,"k":"a","c":[]}],["i",{"w":"guides","s":"ides","e":true,"k":"i","c":[]}]]}],["i",{"w":"gitignored","s":"itignored","e":true,"k":"i","c":[]}],["r",{"w":"graph","s":"raph","e":true,"k":"r","c":[]}]]}],["w",{"w":"w","s":"w","e":false,"k":"w","c":[["i",{"w":"wi","s":"i","e":false,"k":"i","c":[["t",{"w":"with","s":"th","e":true,"k":"t","c":[["o",{"w":"without","s":"out","e":true,"k":"o","c":[]}]]}],["l",{"w":"will","s":"ll","e":true,"k":"l","c":[]}],["r",{"w":"wire","s":"re","e":true,"k":"r","c":[]}]]}],["h",{"w":"wh","s":"h","e":false,"k":"h","c":[["e",{"w":"whe","s":"e","e":false,"k":"e","c":[["n",{"w":"when","s":"n","e":true,"k":"n","c":[]}],["r",{"w":"where","s":"re","e":true,"k":"r","c":[]}]]}],["y",{"w":"why","s":"y","e":true,"k":"y","c":[]}],["a",{"w":"what","s":"at","e":true,"k":"a","c":[["e",{"w":"whatever","s":"ever","e":true,"k":"e","c":[]}]]}],["i",{"w":"whi","s":"i","e":false,"k":"i","c":[["c",{"w":"which","s":"ch","e":true,"k":"c","c":[]}],["l",{"w":"while","s":"le","e":true,"k":"l","c":[]}]]}]]}],["o",{"w":"work","s":"ork","e":true,"k":"o","c":[["s",{"w":"works","s":"s","e":true,"k":"s","c":[]}],["e",{"w":"worker","s":"er","e":true,"k":"e","c":[["s",{"w":"workers","s":"s","e":true,"k":"s","c":[[".",{"w":"workers.dev","s":".dev","e":true,"k":".","c":[]}]]}]]}]]}],["r",{"w":"wr","s":"r","e":false,"k":"r","c":[["i",{"w":"writ","s":"it","e":false,"k":"i","c":[["e",{"w":"write","s":"e","e":true,"k":"e","c":[["s",{"w":"writes","s":"s","e":true,"k":"s","c":[]}]]}],["t",{"w":"written","s":"ten","e":true,"k":"t","c":[]}]]}],["a",{"w":"wrangler","s":"angler","e":true,"k":"a","c":[[".",{"w":"wrangler.jsonc","s":".jsonc","e":true,"k":".","c":[]}]]}]]}],["e",{"w":"we","s":"e","e":false,"k":"e","c":[["b",{"w":"web","s":"b","e":true,"k":"b","c":[["s",{"w":"websiteurl","s":"siteurl","e":true,"k":"s","c":[]}]]}],["l",{"w":"well","s":"ll","e":true,"k":"l","c":[]}]]}],["a",{"w":"watch","s":"atch","e":true,"k":"a","c":[]}]]}],["n",{"w":"n","s":"n","e":true,"k":"n","c":[["o",{"w":"no","s":"o","e":true,"k":"o","c":[["t",{"w":"not","s":"t","e":true,"k":"t","c":[["e",{"w":"note","s":"e","e":true,"k":"e","c":[]}]]}],["r",{"w":"normal","s":"rmal","e":true,"k":"r","c":[]}],["d",{"w":"node","s":"de","e":true,"k":"d","c":[["j",{"w":"nodejs_compat","s":"js_compat","e":true,"k":"j","c":[]}],["_",{"w":"node_env","s":"_env","e":true,"k":"_","c":[]}]]}]]}],["a",{"w":"nam","s":"am","e":false,"k":"a","c":[["e",{"w":"name","s":"e","e":true,"k":"e","c":[["s",{"w":"namespaced","s":"spaced","e":true,"k":"s","c":[]}],["d",{"w":"named","s":"d","e":true,"k":"d","c":[]}]]}],["i",{"w":"naming","s":"ing","e":true,"k":"i","c":[]}]]}],["i",{"w":"nickname","s":"ickname","e":true,"k":"i","c":[]}],["e",{"w":"ne","s":"e","e":false,"k":"e","c":[["e",{"w":"need","s":"ed","e":true,"k":"e","c":[]}],["w",{"w":"new","s":"w","e":true,"k":"w","c":[]}],["v",{"w":"never","s":"ver","e":true,"k":"v","c":[]}],["x",{"w":"next","s":"xt","e":true,"k":"x","c":[]}],["t",{"w":"network","s":"twork","e":true,"k":"t","c":[]}]]}],["p",{"w":"npm","s":"pm","e":true,"k":"p","c":[]}]]}],["m",{"w":"m","s":"m","e":false,"k":"m","c":[["c",{"w":"mcp","s":"cp","e":true,"k":"c","c":[[".",{"w":"mcp.","s":".","e":false,"k":".","c":[["e",{"w":"mcp.example.com","s":"example.com","e":true,"k":"e","c":[]}],["j",{"w":"mcp.js","s":"js","e":true,"k":"j","c":[]}]]}],["_",{"w":"mcp_","s":"_","e":false,"k":"_","c":[["u",{"w":"mcp_url","s":"url","e":true,"k":"u","c":[]}],["p",{"w":"mcp_p","s":"p","e":false,"k":"p","c":[["o",{"w":"mcp_port","s":"ort","e":true,"k":"o","c":[]}],["a",{"w":"mcp_path","s":"ath","e":true,"k":"a","c":[]}]]}],["h",{"w":"mcp_host","s":"host","e":true,"k":"h","c":[]}],["t",{"w":"mcp_transport","s":"transport","e":true,"k":"t","c":[]}]]}]]}],["a",{"w":"ma","s":"a","e":false,"k":"a","c":[["t",{"w":"match","s":"tch","e":true,"k":"t","c":[["i",{"w":"matching","s":"ing","e":true,"k":"i","c":[]}]]}],["p",{"w":"map","s":"p","e":true,"k":"p","c":[["p",{"w":"mapping","s":"ping","e":true,"k":"p","c":[]}],["s",{"w":"maps","s":"s","e":true,"k":"s","c":[]}]]}],["i",{"w":"main","s":"in","e":true,"k":"i","c":[]}],["y",{"w":"may","s":"y","e":true,"k":"y","c":[]}],["k",{"w":"make","s":"ke","e":true,"k":"k","c":[]}],["n",{"w":"man","s":"n","e":false,"k":"n","c":[["u",{"w":"manually","s":"ually","e":true,"k":"u","c":[]}],["i",{"w":"manifest.json","s":"ifest.json","e":true,"k":"i","c":[]}]]}]]}],["u",{"w":"mu","s":"u","e":false,"k":"u","c":[["s",{"w":"must","s":"st","e":true,"k":"s","c":[]}],["t",{"w":"mut","s":"t","e":false,"k":"t","c":[["a",{"w":"mutat","s":"at","e":false,"k":"a","c":[["i",{"w":"mutation","s":"ion","e":true,"k":"i","c":[]}],["e",{"w":"mutate","s":"e","e":true,"k":"e","c":[]}]]}],["e",{"w":"muted","s":"ed","e":true,"k":"e","c":[]}]]}]]}],["r",{"w":"mrtr","s":"rtr","e":true,"k":"r","c":[]}],["e",{"w":"me","s":"e","e":false,"k":"e","c":[["t",{"w":"met","s":"t","e":false,"k":"t","c":[["h",{"w":"method","s":"hod","e":true,"k":"h","c":[]}],["a",{"w":"metadata","s":"adata","e":true,"k":"a","c":[]}]]}],["s",{"w":"message","s":"ssage","e":true,"k":"s","c":[]}],["m",{"w":"memory","s":"mory","e":true,"k":"m","c":[["h",{"w":"memoryhandlestore","s":"handlestore","e":true,"k":"h","c":[]}]]}]]}],["o",{"w":"mod","s":"od","e":false,"k":"o","c":[["e",{"w":"mode","s":"e","e":true,"k":"e","c":[["l",{"w":"model","s":"l","e":true,"k":"l","c":[["c",{"w":"modelcontextprotocol","s":"contextprotocol","e":true,"k":"c","c":[]}]]}]]}],["u",{"w":"modules","s":"ules","e":true,"k":"u","c":[]}]]}],["i",{"w":"mi","s":"i","e":false,"k":"i","c":[["d",{"w":"mid","s":"d","e":true,"k":"d","c":[]}],["n",{"w":"mint","s":"nt","e":true,"k":"n","c":[["s",{"w":"mints","s":"s","e":true,"k":"s","c":[]}]]}],["m",{"w":"mime","s":"me","e":true,"k":"m","c":[["t",{"w":"mimetype","s":"type","e":true,"k":"t","c":[]}]]}]]}]]}],["o",{"w":"o","s":"o","e":false,"k":"o","c":[["a",{"w":"oauth","s":"auth","e":true,"k":"a","c":[]}],["p",{"w":"op","s":"p","e":false,"k":"p","c":[["t",{"w":"option","s":"tion","e":true,"k":"t","c":[["s",{"w":"options","s":"s","e":true,"k":"s","c":[]}],["a",{"w":"optional","s":"al","e":true,"k":"a","c":[]}]]}],["e",{"w":"ope","s":"e","e":false,"k":"e","c":[["n",{"w":"open","s":"n","e":true,"k":"n","c":[]}],["r",{"w":"operat","s":"rat","e":false,"k":"r","c":[["i",{"w":"operations","s":"ions","e":true,"k":"i","c":[]}],["e",{"w":"operate","s":"e","e":true,"k":"e","c":[]}]]}]]}],["a",{"w":"opaque","s":"aque","e":true,"k":"a","c":[]}]]}],["r",{"w":"or","s":"r","e":true,"k":"r","c":[["i",{"w":"origin","s":"igin","e":true,"k":"i","c":[]}],["d",{"w":"order","s":"der","e":true,"k":"d","c":[]}]]}],["n",{"w":"on","s":"n","e":true,"k":"n","c":[["l",{"w":"only","s":"ly","e":true,"k":"l","c":[]}],["e",{"w":"one","s":"e","e":true,"k":"e","c":[]}],["c",{"w":"once","s":"ce","e":true,"k":"c","c":[]}],["t",{"w":"ontoolresult","s":"toolresult","e":true,"k":"t","c":[]}]]}],["w",{"w":"own","s":"wn","e":false,"k":"w","c":[["s",{"w":"owns","s":"s","e":true,"k":"s","c":[]}],["e",{"w":"owned","s":"ed","e":true,"k":"e","c":[]}]]}],["f",{"w":"of","s":"f","e":true,"k":"f","c":[["f",{"w":"official","s":"ficial","e":true,"k":"f","c":[]}]]}],["v",{"w":"overrid","s":"verrid","e":false,"k":"v","c":[["e",{"w":"override","s":"e","e":true,"k":"e","c":[]}],["d",{"w":"overridden","s":"den","e":true,"k":"d","c":[]}]]}],["t",{"w":"other","s":"ther","e":true,"k":"t","c":[]}],["u",{"w":"out","s":"ut","e":false,"k":"u","c":[["s",{"w":"outside","s":"side","e":true,"k":"s","c":[]}],["p",{"w":"output","s":"put","e":true,"k":"p","c":[]}]]}],["b",{"w":"object","s":"bject","e":true,"k":"b","c":[]}],["k",{"w":"ok","s":"k","e":true,"k":"k","c":[]}],["m",{"w":"omitted","s":"mitted","e":true,"k":"m","c":[]}]]}],["u",{"w":"u","s":"u","e":false,"k":"u","c":[["s",{"w":"us","s":"s","e":false,"k":"s","c":[["e",{"w":"use","s":"e","e":true,"k":"e","c":[["r",{"w":"user","s":"r","e":true,"k":"r","c":[["n",{"w":"username","s":"name","e":true,"k":"n","c":[]}]]}],["d",{"w":"used","s":"d","e":true,"k":"d","c":[]}],["s",{"w":"uses","s":"s","e":true,"k":"s","c":[]}],["a",{"w":"useapp","s":"app","e":true,"k":"a","c":[]}],["h",{"w":"usehoststyles","s":"hoststyles","e":true,"k":"h","c":[]}],["f",{"w":"useful","s":"ful","e":true,"k":"f","c":[]}]]}],["i",{"w":"using","s":"ing","e":true,"k":"i","c":[]}]]}],["r",{"w":"ur","s":"r","e":false,"k":"r","c":[["l",{"w":"url","s":"l","e":true,"k":"l","c":[["s",{"w":"urls","s":"s","e":true,"k":"s","c":[]}]]}],["i",{"w":"uri","s":"i","e":true,"k":"i","c":[]}]]}],["p",{"w":"update","s":"pdate","e":false,"k":"p","c":[["d",{"w":"updatedat","s":"dat","e":true,"k":"d","c":[]}],["s",{"w":"updates","s":"s","e":true,"k":"s","c":[]}]]}],["n",{"w":"un","s":"n","e":false,"k":"n","c":[["a",{"w":"unauthenticated","s":"authenticated","e":true,"k":"a","c":[]}],["d",{"w":"unde","s":"de","e":false,"k":"d","c":[["r",{"w":"under","s":"r","e":true,"k":"r","c":[]}],["f",{"w":"undefined","s":"fined","e":true,"k":"f","c":[]}]]}],["l",{"w":"unless","s":"less","e":true,"k":"l","c":[]}]]}],["i",{"w":"ui","s":"i","e":true,"k":"i","c":[]}],["u",{"w":"uuid","s":"uid","e":true,"k":"u","c":[]}],["t",{"w":"utilities","s":"tilities","e":true,"k":"t","c":[]}]]}],["f",{"w":"f","s":"f","e":false,"k":"f","c":[["o",{"w":"fo","s":"o","e":false,"k":"o","c":[["r",{"w":"for","s":"r","e":true,"k":"r","c":[["e",{"w":"fore","s":"e","e":false,"k":"e","c":[["c",{"w":"forecast","s":"cast","e":true,"k":"c","c":[[".",{"w":"forecast.refresh","s":".refresh","e":true,"k":".","c":[]}]]}],["g",{"w":"foreground","s":"ground","e":true,"k":"g","c":[]}]]}]]}],["l",{"w":"fol","s":"l","e":false,"k":"l","c":[["l",{"w":"follow","s":"low","e":true,"k":"l","c":[]}],["d",{"w":"folder","s":"der","e":true,"k":"d","c":[["s",{"w":"folders","s":"s","e":true,"k":"s","c":[]}]]}]]}],["n",{"w":"font","s":"nt","e":true,"k":"n","c":[]}],["o",{"w":"foo","s":"o","e":true,"k":"o","c":[]}]]}],["u",{"w":"fu","s":"u","e":false,"k":"u","c":[["n",{"w":"function","s":"nction","e":true,"k":"n","c":[]}],["l",{"w":"full","s":"ll","e":true,"k":"l","c":[["n",{"w":"fullname","s":"name","e":true,"k":"n","c":[]}]]}]]}],["r",{"w":"fr","s":"r","e":false,"k":"r","c":[["o",{"w":"from","s":"om","e":true,"k":"o","c":[]}],["e",{"w":"fresh","s":"esh","e":true,"k":"e","c":[]}]]}],["i",{"w":"fi","s":"i","e":false,"k":"i","c":[["e",{"w":"field","s":"eld","e":true,"k":"e","c":[["s",{"w":"fields","s":"s","e":true,"k":"s","c":[]}]]}],["l",{"w":"fil","s":"l","e":false,"k":"l","c":[["t",{"w":"filter","s":"ter","e":true,"k":"t","c":[]}],["e",{"w":"file","s":"e","e":true,"k":"e","c":[["s",{"w":"files","s":"s","e":true,"k":"s","c":[]}]]}]]}],["r",{"w":"first","s":"rst","e":true,"k":"r","c":[]}]]}],["l",{"w":"fl","s":"l","e":false,"k":"l","c":[["o",{"w":"flow","s":"ow","e":true,"k":"o","c":[]}],["i",{"w":"flight","s":"ight","e":true,"k":"i","c":[]}],["a",{"w":"flag","s":"ag","e":true,"k":"a","c":[]}]]}],["a",{"w":"fa","s":"a","e":false,"k":"a","c":[["c",{"w":"factory","s":"ctory","e":true,"k":"c","c":[]}],["l",{"w":"false","s":"lse","e":true,"k":"l","c":[]}],["i",{"w":"fail","s":"il","e":true,"k":"i","c":[]}]]}],["e",{"w":"fetch","s":"etch","e":true,"k":"e","c":[]}]]}],["i",{"w":"i","s":"i","e":false,"k":"i","c":[["n",{"w":"in","s":"n","e":true,"k":"n","c":[["t",{"w":"int","s":"t","e":false,"k":"t","c":[["e",{"w":"inte","s":"e","e":false,"k":"e","c":[["r",{"w":"inter","s":"r","e":false,"k":"r","c":[["n",{"w":"internal","s":"nal","e":true,"k":"n","c":[["l",{"w":"internally","s":"ly","e":true,"k":"l","c":[]}]]}],["v",{"w":"intervals","s":"vals","e":true,"k":"v","c":[]}]]}],["l",{"w":"intellisense","s":"llisense","e":true,"k":"l","c":[]}]]}],["r",{"w":"introspection","s":"rospection","e":true,"k":"r","c":[]}],["o",{"w":"into","s":"o","e":true,"k":"o","c":[]}]]}],["l",{"w":"inline","s":"line","e":true,"k":"l","c":[["d",{"w":"inlined","s":"d","e":true,"k":"d","c":[]}]]}],["c",{"w":"inc","s":"c","e":false,"k":"c","c":[["l",{"w":"includ","s":"lud","e":false,"k":"l","c":[["e",{"w":"include","s":"e","e":true,"k":"e","c":[["s",{"w":"includes","s":"s","e":true,"k":"s","c":[]}],["d",{"w":"included","s":"d","e":true,"k":"d","c":[]}]]}],["i",{"w":"including","s":"ing","e":true,"k":"i","c":[]}]]}],["o",{"w":"incoming","s":"oming","e":true,"k":"o","c":[]}]]}],["s",{"w":"ins","s":"s","e":false,"k":"s","c":[["t",{"w":"inst","s":"t","e":false,"k":"t","c":[["e",{"w":"instead","s":"ead","e":true,"k":"e","c":[]}],["a",{"w":"insta","s":"a","e":false,"k":"a","c":[["n",{"w":"instance","s":"nce","e":true,"k":"n","c":[]}],["l",{"w":"install","s":"ll","e":true,"k":"l","c":[["a",{"w":"installation","s":"ation","e":true,"k":"a","c":[]}]]}]]}]]}],["i",{"w":"inside","s":"ide","e":true,"k":"i","c":[]}]]}],["v",{"w":"invention","s":"vention","e":true,"k":"v","c":[]}],["p",{"w":"input","s":"put","e":true,"k":"p","c":[["_",{"w":"input_required","s":"_required","e":true,"k":"_","c":[]}],["r",{"w":"inputre","s":"re","e":false,"k":"r","c":[["s",{"w":"inputresponses","s":"sponses","e":true,"k":"s","c":[]}],["q",{"w":"inputrequired","s":"quired","e":true,"k":"q","c":[]}]]}]]}],["g",{"w":"ingest","s":"gest","e":true,"k":"g","c":[]}],["j",{"w":"injects","s":"jects","e":true,"k":"j","c":[]}],["f",{"w":"inferred","s":"ferred","e":true,"k":"f","c":[]}],["d",{"w":"index.ts","s":"dex.ts","e":true,"k":"d","c":[]}]]}],["t",{"w":"it","s":"t","e":true,"k":"t","c":[]}],["s",{"w":"is","s":"s","e":true,"k":"s","c":[["s",{"w":"issu","s":"su","e":false,"k":"s","c":[["a",{"w":"issuance","s":"ance","e":true,"k":"a","c":[]}],["e",{"w":"issue","s":"e","e":false,"k":"e","c":[["r",{"w":"issuer","s":"r","e":true,"k":"r","c":[]}],["s",{"w":"issues","s":"s","e":true,"k":"s","c":[]}]]}]]}],["a",{"w":"isanonymous","s":"anonymous","e":true,"k":"a","c":[]}],["c",{"w":"isconnected","s":"connected","e":true,"k":"c","c":[]}],["o",{"w":"isolated","s":"olated","e":true,"k":"o","c":[]}]]}],["d",{"w":"id","s":"d","e":true,"k":"d","c":[["e",{"w":"identi","s":"enti","e":false,"k":"e","c":[["t",{"w":"identity","s":"ty","e":true,"k":"t","c":[]}],["f",{"w":"identifier","s":"fier","e":true,"k":"f","c":[]}]]}],["s",{"w":"ids","s":"s","e":true,"k":"s","c":[]}]]}],["f",{"w":"if","s":"f","e":true,"k":"f","c":[["r",{"w":"iframe","s":"rame","e":true,"k":"r","c":[]}]]}],["m",{"w":"im","s":"m","e":false,"k":"m","c":[["p",{"w":"imp","s":"p","e":false,"k":"p","c":[["l",{"w":"implement","s":"lement","e":true,"k":"l","c":[["s",{"w":"implements","s":"s","e":true,"k":"s","c":[]}]]}],["o",{"w":"import","s":"ort","e":true,"k":"o","c":[["s",{"w":"imports","s":"s","e":true,"k":"s","c":[]}],["i",{"w":"importing","s":"ing","e":true,"k":"i","c":[]}]]}]]}],["m",{"w":"immediately","s":"mediately","e":true,"k":"m","c":[]}]]}],["c",{"w":"icon","s":"con","e":true,"k":"c","c":[["s",{"w":"icons","s":"s","e":true,"k":"s","c":[]}]]}],["o",{"w":"io.modelcontextprotocol","s":"o.modelcontextprotocol","e":true,"k":"o","c":[]}]]}],["v",{"w":"v","s":"v","e":false,"k":"v","c":[["a",{"w":"va","s":"a","e":false,"k":"a","c":[["l",{"w":"val","s":"l","e":false,"k":"l","c":[["i",{"w":"validat","s":"idat","e":false,"k":"i","c":[["e",{"w":"validate","s":"e","e":true,"k":"e","c":[["s",{"w":"validates","s":"s","e":true,"k":"s","c":[]}]]}],["i",{"w":"validation","s":"ion","e":true,"k":"i","c":[]}]]}],["u",{"w":"value","s":"ue","e":true,"k":"u","c":[]}]]}],["r",{"w":"var","s":"r","e":true,"k":"r","c":[["i",{"w":"variable","s":"iable","e":true,"k":"i","c":[["s",{"w":"variables","s":"s","e":true,"k":"s","c":[]}]]}]]}]]}],["e",{"w":"ver","s":"er","e":false,"k":"e","c":[["i",{"w":"verif","s":"if","e":false,"k":"i","c":[["y",{"w":"verify","s":"y","e":true,"k":"y","c":[]}],["i",{"w":"verifi","s":"i","e":false,"k":"i","c":[["e",{"w":"verifies","s":"es","e":true,"k":"e","c":[]}],["c",{"w":"verification","s":"cation","e":true,"k":"c","c":[]}]]}]]}],["c",{"w":"vercel","s":"cel","e":true,"k":"c","c":[[".",{"w":"vercel.json","s":".json","e":true,"k":".","c":[]}]]}],["s",{"w":"version","s":"sion","e":true,"k":"s","c":[]}]]}],["i",{"w":"vi","s":"i","e":false,"k":"i","c":[["s",{"w":"visib","s":"sib","e":false,"k":"s","c":[["i",{"w":"visibility","s":"ility","e":true,"k":"i","c":[]}],["l",{"w":"visible","s":"le","e":true,"k":"l","c":[]}]]}],["e",{"w":"view","s":"ew","e":true,"k":"e","c":[["s",{"w":"views","s":"s","e":true,"k":"s","c":[[".",{"w":"views.","s":".","e":false,"k":".","c":[["d",{"w":"views.d.ts","s":"d.ts","e":true,"k":"d","c":[]}],["c",{"w":"views.css","s":"css","e":true,"k":"c","c":[]}]]}]]}],[".",{"w":"view.tsx","s":".tsx","e":true,"k":".","c":[]}]]}],["a",{"w":"via","s":"a","e":true,"k":"a","c":[]}],["t",{"w":"vite","s":"te","e":true,"k":"t","c":[]}]]}],["4",{"w":"v4","s":"4","e":true,"k":"4","c":[]}],["s",{"w":"vs","s":"s","e":true,"k":"s","c":[]}]]}],["h",{"w":"h","s":"h","e":false,"k":"h","c":[["e",{"w":"he","s":"e","e":false,"k":"e","c":[["a",{"w":"hea","s":"a","e":false,"k":"a","c":[["d",{"w":"header","s":"der","e":true,"k":"d","c":[["n",{"w":"headername","s":"name","e":true,"k":"n","c":[]}],["s",{"w":"headers","s":"s","e":true,"k":"s","c":[]}]]}],["l",{"w":"health","s":"lth","e":true,"k":"l","c":[]}]]}],["l",{"w":"hel","s":"l","e":false,"k":"l","c":[["p",{"w":"helpers","s":"pers","e":true,"k":"p","c":[]}],["l",{"w":"hello","s":"lo","e":true,"k":"l","c":[[".",{"w":"hello.shout","s":".shout","e":true,"k":".","c":[]}]]}]]}]]}],["t",{"w":"ht","s":"t","e":false,"k":"t","c":[["t",{"w":"http","s":"tp","e":true,"k":"t","c":[["s",{"w":"https","s":"s","e":true,"k":"s","c":[]}],[".",{"w":"http.","s":".","e":false,"k":".","c":[["a",{"w":"http.allowedhosts","s":"allowedhosts","e":true,"k":"a","c":[]}],["c",{"w":"http.cors","s":"cors","e":true,"k":"c","c":[]}],["p",{"w":"http.path","s":"path","e":true,"k":"p","c":[]}]]}]]}],["m",{"w":"html","s":"ml","e":true,"k":"m","c":[]}]]}],["a",{"w":"ha","s":"a","e":false,"k":"a","c":[["n",{"w":"hand","s":"nd","e":true,"k":"n","c":[["l",{"w":"handle","s":"le","e":true,"k":"l","c":[["s",{"w":"handles","s":"s","e":true,"k":"s","c":[["t",{"w":"handlestore","s":"tore","e":true,"k":"t","c":[]}]]}],["r",{"w":"handler","s":"r","e":true,"k":"r","c":[]}]]}]]}],["t",{"w":"hatch","s":"tch","e":true,"k":"t","c":[["e",{"w":"hatches","s":"es","e":true,"k":"e","c":[]}]]}],["p",{"w":"happy","s":"ppy","e":true,"k":"p","c":[]}],["s",{"w":"hash","s":"sh","e":true,"k":"s","c":[["e",{"w":"hashed","s":"ed","e":true,"k":"e","c":[]}]]}]]}],["o",{"w":"ho","s":"o","e":false,"k":"o","c":[["s",{"w":"host","s":"st","e":true,"k":"s","c":[["e",{"w":"hosted","s":"ed","e":true,"k":"e","c":[]}],["s",{"w":"hosts","s":"s","e":true,"k":"s","c":[]}]]}],["w",{"w":"how","s":"w","e":true,"k":"w","c":[]}],["l",{"w":"holds","s":"lds","e":true,"k":"l","c":[]}]]}],["s",{"w":"hs256","s":"s256","e":true,"k":"s","c":[]}],["i",{"w":"hi","s":"i","e":false,"k":"i","c":[["d",{"w":"hidden","s":"dden","e":true,"k":"d","c":[]}],["t",{"w":"hit","s":"t","e":true,"k":"t","c":[]}]]}],["m",{"w":"hmac","s":"mac","e":true,"k":"m","c":[]}]]}],["c",{"w":"c","s":"c","e":false,"k":"c","c":[["t",{"w":"ctx.","s":"tx.","e":false,"k":"t","c":[["u",{"w":"ctx.user","s":"user","e":true,"k":"u","c":[[".",{"w":"ctx.user.","s":".","e":false,"k":".","c":[["r",{"w":"ctx.user.roles","s":"roles","e":true,"k":"r","c":[]}],["i",{"w":"ctx.user.id","s":"id","e":true,"k":"i","c":[]}]]}]]}],["a",{"w":"ctx.ask","s":"ask","e":true,"k":"a","c":[]}],["i",{"w":"ctx.inputrequired","s":"inputrequired","e":true,"k":"i","c":[]}],["h",{"w":"ctx.handle","s":"handle","e":true,"k":"h","c":[]}]]}],["l",{"w":"cl","s":"l","e":false,"k":"l","c":[["i",{"w":"cli","s":"i","e":true,"k":"i","c":[["e",{"w":"client","s":"ent","e":true,"k":"e","c":[["s",{"w":"clients","s":"s","e":true,"k":"s","c":[]}]]}],["c",{"w":"clicks","s":"cks","e":true,"k":"c","c":[]}]]}],["a",{"w":"cla","s":"a","e":false,"k":"a","c":[["i",{"w":"claim","s":"im","e":true,"k":"i","c":[["s",{"w":"claims","s":"s","e":true,"k":"s","c":[]}]]}],["s",{"w":"class","s":"ss","e":true,"k":"s","c":[["e",{"w":"classes","s":"es","e":true,"k":"e","c":[]}],["n",{"w":"classname","s":"name","e":true,"k":"n","c":[]}]]}],["u",{"w":"claude","s":"ude","e":true,"k":"u","c":[]}]]}],["o",{"w":"cloudflare","s":"oudflare","e":true,"k":"o","c":[]}]]}],["o",{"w":"co","s":"o","e":false,"k":"o","c":[["m",{"w":"com","s":"m","e":true,"k":"m","c":[["p",{"w":"comp","s":"p","e":false,"k":"p","c":[["a",{"w":"compa","s":"a","e":false,"k":"a","c":[["r",{"w":"compares","s":"res","e":true,"k":"r","c":[]}],["t",{"w":"compatibility","s":"tibility","e":true,"k":"t","c":[]}]]}],["l",{"w":"complete","s":"lete","e":true,"k":"l","c":[["s",{"w":"completes","s":"s","e":true,"k":"s","c":[]}]]}],["o",{"w":"component","s":"onent","e":true,"k":"o","c":[]}],["i",{"w":"compile","s":"ile","e":true,"k":"i","c":[["d",{"w":"compiled","s":"d","e":true,"k":"d","c":[]}],["r",{"w":"compiler","s":"r","e":true,"k":"r","c":[]}]]}]]}],["e",{"w":"come","s":"e","e":true,"k":"e","c":[["s",{"w":"comes","s":"s","e":true,"k":"s","c":[]}]]}],["m",{"w":"command","s":"mand","e":true,"k":"m","c":[]}]]}],["n",{"w":"con","s":"n","e":false,"k":"n","c":[["f",{"w":"confi","s":"fi","e":false,"k":"f","c":[["g",{"w":"config","s":"g","e":true,"k":"g","c":[["u",{"w":"configure","s":"ure","e":true,"k":"u","c":[["d",{"w":"configured","s":"d","e":true,"k":"d","c":[]}]]}]]}],["r",{"w":"confirm","s":"rm","e":true,"k":"r","c":[["a",{"w":"confirmation","s":"ation","e":true,"k":"a","c":[["s",{"w":"confirmations","s":"s","e":true,"k":"s","c":[]}]]}],["r",{"w":"confirmresult","s":"result","e":true,"k":"r","c":[]}]]}]]}],["n",{"w":"connect","s":"nect","e":true,"k":"n","c":[["i",{"w":"connecti","s":"i","e":false,"k":"i","c":[["o",{"w":"connection","s":"on","e":true,"k":"o","c":[]}],["n",{"w":"connecting","s":"ng","e":true,"k":"n","c":[]}]]}]]}],["s",{"w":"consent","s":"sent","e":true,"k":"s","c":[]}],["t",{"w":"cont","s":"t","e":false,"k":"t","c":[["r",{"w":"control","s":"rol","e":true,"k":"r","c":[]}],["e",{"w":"conte","s":"e","e":false,"k":"e","c":[["x",{"w":"context","s":"xt","e":true,"k":"x","c":[]}],["n",{"w":"content","s":"nt","e":true,"k":"n","c":[]}]]}],["i",{"w":"continuation","s":"inuation","e":true,"k":"i","c":[]}],["a",{"w":"contain","s":"ain","e":true,"k":"a","c":[]}]]}]]}],["v",{"w":"covered","s":"vered","e":true,"k":"v","c":[]}],["p",{"w":"copy","s":"py","e":true,"k":"p","c":[]}],["d",{"w":"code","s":"de","e":true,"k":"d","c":[]}],["l",{"w":"color","s":"lor","e":true,"k":"l","c":[]}],["r",{"w":"cor","s":"r","e":false,"k":"r","c":[["s",{"w":"cors","s":"s","e":true,"k":"s","c":[]}],["r",{"w":"correct","s":"rect","e":true,"k":"r","c":[]}]]}]]}],["u",{"w":"cu","s":"u","e":false,"k":"u","c":[["s",{"w":"custom","s":"stom","e":true,"k":"s","c":[]}],["r",{"w":"cursor","s":"rsor","e":true,"k":"r","c":[]}]]}],["r",{"w":"create","s":"reate","e":true,"k":"r","c":[["a",{"w":"createapp","s":"app","e":true,"k":"a","c":[[".",{"w":"createapp.fromdir","s":".fromdir","e":true,"k":".","c":[]}]]}]]}],["a",{"w":"ca","s":"a","e":false,"k":"a","c":[["p",{"w":"capable","s":"pable","e":true,"k":"p","c":[]}],["l",{"w":"call","s":"ll","e":true,"k":"l","c":[["s",{"w":"calls","s":"s","e":true,"k":"s","c":[]}],["t",{"w":"calltool","s":"tool","e":true,"k":"t","c":[]}]]}],["n",{"w":"can","s":"n","e":true,"k":"n","c":[["o",{"w":"canonical","s":"onical","e":true,"k":"o","c":[]}],["n",{"w":"cannot","s":"not","e":true,"k":"n","c":[]}]]}],["c",{"w":"cach","s":"ch","e":false,"k":"c","c":[["e",{"w":"cache","s":"e","e":true,"k":"e","c":[["a",{"w":"cacheable","s":"able","e":true,"k":"a","c":[]}],["s",{"w":"cachescope","s":"scope","e":true,"k":"s","c":[]}],["t",{"w":"cachettlms","s":"ttlms","e":true,"k":"t","c":[]}]]}],["i",{"w":"caching","s":"ing","e":true,"k":"i","c":[]}]]}],["r",{"w":"card","s":"rd","e":true,"k":"r","c":[["s",{"w":"cards","s":"s","e":true,"k":"s","c":[]}],[".",{"w":"card.json","s":".json","e":true,"k":".","c":[]}]]}],["s",{"w":"case","s":"se","e":true,"k":"s","c":[]}]]}],["h",{"w":"ch","s":"h","e":false,"k":"h","c":[["e",{"w":"checks","s":"ecks","e":true,"k":"e","c":[]}],["a",{"w":"cha","s":"a","e":false,"k":"a","c":[["t",{"w":"chat","s":"t","e":true,"k":"t","c":[["g",{"w":"chatgpt","s":"gpt","e":true,"k":"g","c":[]}]]}],["n",{"w":"changes","s":"nges","e":true,"k":"n","c":[]}]]}],["i",{"w":"child","s":"ild","e":true,"k":"i","c":[]}]]}],["s",{"w":"cs","s":"s","e":false,"k":"s","c":[["p",{"w":"csp","s":"p","e":true,"k":"p","c":[]}],["s",{"w":"css","s":"s","e":true,"k":"s","c":[]}]]}],["d",{"w":"cdn","s":"dn","e":true,"k":"d","c":[]}],["w",{"w":"cwd","s":"wd","e":true,"k":"w","c":[]}]]}],["t",{"w":"t","s":"t","e":false,"k":"t","c":[["h",{"w":"th","s":"h","e":false,"k":"h","c":[["i",{"w":"this","s":"is","e":true,"k":"i","c":[]}],["e",{"w":"the","s":"e","e":true,"k":"e","c":[["m",{"w":"them","s":"m","e":true,"k":"m","c":[["e",{"w":"theme","s":"e","e":true,"k":"e","c":[]}]]}],["y",{"w":"they","s":"y","e":true,"k":"y","c":[]}],["r",{"w":"there","s":"re","e":true,"k":"r","c":[]}],["s",{"w":"these","s":"se","e":true,"k":"s","c":[]}]]}],["a",{"w":"that","s":"at","e":true,"k":"a","c":[]}],["r",{"w":"thro","s":"ro","e":false,"k":"r","c":[["u",{"w":"through","s":"ugh","e":true,"k":"u","c":[]}],["w",{"w":"throws","s":"ws","e":true,"k":"w","c":[]}]]}]]}],["o",{"w":"to","s":"o","e":true,"k":"o","c":[["o",{"w":"tool","s":"ol","e":true,"k":"o","c":[["s",{"w":"tools","s":"s","e":true,"k":"s","c":[]}],["c",{"w":"toolcontext","s":"context","e":true,"k":"c","c":[]}],[".",{"w":"tool.ts","s":".ts","e":true,"k":".","c":[["x",{"w":"tool.tsx","s":"x","e":true,"k":"x","c":[]}]]}]]}],["k",{"w":"token","s":"ken","e":true,"k":"k","c":[["s",{"w":"tokens","s":"s","e":true,"k":"s","c":[]}]]}]]}],["e",{"w":"te","s":"e","e":false,"k":"e","c":[["n",{"w":"tenant","s":"nant","e":true,"k":"n","c":[[".",{"w":"tenant.us.auth0","s":".us.auth0","e":true,"k":".","c":[]}]]}],["x",{"w":"text","s":"xt","e":true,"k":"x","c":[]}],["r",{"w":"terminal","s":"rminal","e":true,"k":"r","c":[]}],["s",{"w":"tests","s":"sts","e":true,"k":"s","c":[]}],["m",{"w":"template","s":"mplate","e":true,"k":"m","c":[]}]]}],["a",{"w":"ta","s":"a","e":false,"k":"a","c":[["r",{"w":"target","s":"rget","e":true,"k":"r","c":[]}],["s",{"w":"task","s":"sk","e":true,"k":"s","c":[]}],["i",{"w":"tailwind","s":"ilwind","e":true,"k":"i","c":[[".",{"w":"tailwind.config","s":".config","e":true,"k":".","c":[]}]]}],["g",{"w":"tag","s":"g","e":true,"k":"g","c":[]}]]}],["r",{"w":"tr","s":"r","e":false,"k":"r","c":[["y",{"w":"try","s":"y","e":true,"k":"y","c":[]}],["u",{"w":"true","s":"ue","e":true,"k":"u","c":[]}],["a",{"w":"transp","s":"ansp","e":false,"k":"a","c":[["a",{"w":"transparent","s":"arent","e":true,"k":"a","c":[]}],["o",{"w":"transport","s":"ort","e":true,"k":"o","c":[["s",{"w":"transports","s":"s","e":true,"k":"s","c":[]}]]}]]}]]}],["y",{"w":"type","s":"ype","e":true,"k":"y","c":[["s",{"w":"types","s":"s","e":true,"k":"s","c":[]}],["d",{"w":"typed","s":"d","e":true,"k":"d","c":[]}]]}],["s",{"w":"tsx","s":"sx","e":true,"k":"s","c":[]}],["t",{"w":"ttl","s":"tl","e":true,"k":"t","c":[["m",{"w":"ttlms","s":"ms","e":true,"k":"m","c":[]}]]}],["i",{"w":"title","s":"itle","e":true,"k":"i","c":[]}]]}],["x",{"w":"x","s":"x","e":true,"k":"x","c":[]}],["b",{"w":"b","s":"b","e":false,"k":"b","c":[["y",{"w":"by","s":"y","e":true,"k":"y","c":[["t",{"w":"bytes","s":"tes","e":true,"k":"t","c":[]}]]}],["e",{"w":"be","s":"e","e":true,"k":"e","c":[["t",{"w":"better","s":"tter","e":true,"k":"t","c":[["_",{"w":"better_auth_url","s":"_auth_url","e":true,"k":"_","c":[]}]]}],["a",{"w":"bearer","s":"arer","e":true,"k":"a","c":[]}],["s",{"w":"beside","s":"side","e":true,"k":"s","c":[]}],["f",{"w":"before","s":"fore","e":true,"k":"f","c":[]}],["h",{"w":"behind","s":"hind","e":true,"k":"h","c":[]}]]}],["i",{"w":"bi","s":"i","e":false,"k":"i","c":[["t",{"w":"bitmcp","s":"tmcp","e":true,"k":"t","c":[["_",{"w":"bitmcp_","s":"_","e":false,"k":"_","c":[["s",{"w":"bitmcp_state_key","s":"state_key","e":true,"k":"s","c":[]}],["r",{"w":"bitmcp_root","s":"root","e":true,"k":"r","c":[]}]]}],[".",{"w":"bitmcp.config.ts","s":".config.ts","e":true,"k":".","c":[]}]]}],["n",{"w":"bind","s":"nd","e":true,"k":"n","c":[["i",{"w":"binding","s":"ing","e":true,"k":"i","c":[["s",{"w":"bindings","s":"s","e":true,"k":"s","c":[]}]]}]]}]]}],["a",{"w":"ba","s":"a","e":false,"k":"a","c":[["s",{"w":"base","s":"se","e":true,"k":"s","c":[["d",{"w":"based","s":"d","e":true,"k":"d","c":[]}]]}],["c",{"w":"back","s":"ck","e":true,"k":"c","c":[["i",{"w":"backing","s":"ing","e":true,"k":"i","c":[]}],["e",{"w":"backed","s":"ed","e":true,"k":"e","c":[]}],["g",{"w":"background","s":"ground","e":true,"k":"g","c":[]}]]}]]}],["u",{"w":"bu","s":"u","e":false,"k":"u","c":[["i",{"w":"buil","s":"il","e":false,"k":"i","c":[["t",{"w":"built","s":"t","e":true,"k":"t","c":[["i",{"w":"builtins","s":"ins","e":true,"k":"i","c":[]}]]}],["d",{"w":"build","s":"d","e":true,"k":"d","c":[["s",{"w":"builds","s":"s","e":true,"k":"s","c":[]}]]}]]}],["n",{"w":"bundle","s":"ndle","e":true,"k":"n","c":[["s",{"w":"bundles","s":"s","e":true,"k":"s","c":[]}]]}],["t",{"w":"but","s":"t","e":true,"k":"t","c":[]}]]}],["o",{"w":"bo","s":"o","e":false,"k":"o","c":[["u",{"w":"boundaries","s":"undaries","e":true,"k":"u","c":[]}],["r",{"w":"border","s":"rder","e":true,"k":"r","c":[]}],["d",{"w":"body","s":"dy","e":true,"k":"d","c":[]}]]}],["g",{"w":"bg","s":"g","e":true,"k":"g","c":[]}],["r",{"w":"browser","s":"rowser","e":true,"k":"r","c":[]}]]}],["e",{"w":"e","s":"e","e":false,"k":"e","c":[["n",{"w":"en","s":"n","e":false,"k":"n","c":[["v",{"w":"env","s":"v","e":true,"k":"v","c":[["i",{"w":"environment","s":"ironment","e":true,"k":"i","c":[]}],["e",{"w":"envelope","s":"elope","e":true,"k":"e","c":[]}]]}],["a",{"w":"enable","s":"able","e":true,"k":"a","c":[["d",{"w":"enabled","s":"d","e":true,"k":"d","c":[]}]]}],["d",{"w":"endpoint","s":"dpoint","e":true,"k":"d","c":[["s",{"w":"endpoints","s":"s","e":true,"k":"s","c":[]}]]}],["t",{"w":"ent","s":"t","e":false,"k":"t","c":[["e",{"w":"enters","s":"ers","e":true,"k":"e","c":[]}],["r",{"w":"entry","s":"ry","e":true,"k":"r","c":[]}],["i",{"w":"entirely","s":"irely","e":true,"k":"i","c":[]}]]}],["f",{"w":"enforces","s":"forces","e":true,"k":"f","c":[]}]]}],["x",{"w":"ex","s":"x","e":false,"k":"x","c":[["a",{"w":"exa","s":"a","e":false,"k":"a","c":[["m",{"w":"example","s":"mple","e":true,"k":"m","c":[["s",{"w":"examples","s":"s","e":true,"k":"s","c":[]}]]}],["c",{"w":"exact","s":"ct","e":true,"k":"c","c":[]}]]}],["p",{"w":"exp","s":"p","e":false,"k":"p","c":[["o",{"w":"expo","s":"o","e":false,"k":"o","c":[["s",{"w":"expose","s":"se","e":true,"k":"s","c":[["d",{"w":"exposed","s":"d","e":true,"k":"d","c":[]}],["s",{"w":"exposes","s":"s","e":true,"k":"s","c":[]}]]}],["r",{"w":"export","s":"rt","e":true,"k":"r","c":[["s",{"w":"exports","s":"s","e":true,"k":"s","c":[]}],["e",{"w":"exported","s":"ed","e":true,"k":"e","c":[]}]]}]]}],["l",{"w":"explicitly","s":"licitly","e":true,"k":"l","c":[]}]]}],["i",{"w":"exist","s":"ist","e":true,"k":"i","c":[["i",{"w":"existing","s":"ing","e":true,"k":"i","c":[]}]]}],["e",{"w":"execute","s":"ecute","e":true,"k":"e","c":[]}],["t",{"w":"ext","s":"t","e":true,"k":"t","c":[["r",{"w":"extra","s":"ra","e":true,"k":"r","c":[]}],["e",{"w":"extension","s":"ension","e":true,"k":"e","c":[]}]]}]]}],["m",{"w":"em","s":"m","e":false,"k":"m","c":[["a",{"w":"email","s":"ail","e":true,"k":"a","c":[["v",{"w":"emailverified","s":"verified","e":true,"k":"v","c":[]}]]}],["i",{"w":"emits","s":"its","e":true,"k":"i","c":[]}],["b",{"w":"embed","s":"bed","e":true,"k":"b","c":[]}]]}],["a",{"w":"each","s":"ach","e":true,"k":"a","c":[]}],["s",{"w":"es","s":"s","e":false,"k":"s","c":[["c",{"w":"escape","s":"cape","e":true,"k":"c","c":[]}],["b",{"w":"esbuild","s":"build","e":true,"k":"b","c":[]}]]}],["f",{"w":"effect","s":"ffect","e":true,"k":"f","c":[]}],["v",{"w":"every","s":"very","e":true,"k":"v","c":[]}],["r",{"w":"error","s":"rror","e":true,"k":"r","c":[]}],["t",{"w":"etag","s":"tag","e":true,"k":"t","c":[]}]]}],["r",{"w":"r","s":"r","e":false,"k":"r","c":[["e",{"w":"re","s":"e","e":true,"k":"e","c":[["q",{"w":"requ","s":"qu","e":false,"k":"q","c":[["e",{"w":"request","s":"est","e":true,"k":"e","c":[["s",{"w":"requests","s":"s","e":true,"k":"s","c":[["t",{"w":"requeststate","s":"tate","e":true,"k":"t","c":[]}]]}]]}],["i",{"w":"require","s":"ire","e":true,"k":"i","c":[["d",{"w":"required","s":"d","e":true,"k":"d","c":[]}],["s",{"w":"requires","s":"s","e":true,"k":"s","c":[]}]]}]]}],["a",{"w":"rea","s":"a","e":false,"k":"a","c":[["d",{"w":"read","s":"d","e":true,"k":"d","c":[["s",{"w":"reads","s":"s","e":true,"k":"s","c":[]}]]}],["c",{"w":"react","s":"ct","e":true,"k":"c","c":[]}]]}],["g",{"w":"regist","s":"gist","e":false,"k":"g","c":[["r",{"w":"registration","s":"ration","e":true,"k":"r","c":[]}],["e",{"w":"register","s":"er","e":true,"k":"e","c":[["e",{"w":"registered","s":"ed","e":true,"k":"e","c":[]}]]}]]}],["s",{"w":"res","s":"s","e":false,"k":"s","c":[["o",{"w":"reso","s":"o","e":false,"k":"o","c":[["u",{"w":"resource","s":"urce","e":true,"k":"u","c":[["s",{"w":"resources","s":"s","e":true,"k":"s","c":[]}],["u",{"w":"resourceuri","s":"uri","e":true,"k":"u","c":[]}]]}],["l",{"w":"resol","s":"l","e":false,"k":"l","c":[["u",{"w":"resolution","s":"ution","e":true,"k":"u","c":[]}],["v",{"w":"resolves","s":"ves","e":true,"k":"v","c":[]}]]}]]}],["u",{"w":"resu","s":"u","e":false,"k":"u","c":[["m",{"w":"resuming","s":"ming","e":true,"k":"m","c":[]}],["l",{"w":"result","s":"lt","e":true,"k":"l","c":[["t",{"w":"resulttype","s":"type","e":true,"k":"t","c":[]}],["s",{"w":"results","s":"s","e":true,"k":"s","c":[]}]]}]]}],["t",{"w":"restarts","s":"tarts","e":true,"k":"t","c":[]}],["e",{"w":"reset","s":"et","e":true,"k":"e","c":[]}],["p",{"w":"responses","s":"ponses","e":true,"k":"p","c":[]}]]}],["c",{"w":"receive","s":"ceive","e":true,"k":"c","c":[]}],["t",{"w":"return","s":"turn","e":true,"k":"t","c":[["s",{"w":"returns","s":"s","e":true,"k":"s","c":[]}],["i",{"w":"returning","s":"ing","e":true,"k":"i","c":[]}]]}],["f",{"w":"ref","s":"f","e":false,"k":"f","c":[["r",{"w":"refresh","s":"resh","e":true,"k":"r","c":[]}],["l",{"w":"reflects","s":"lects","e":true,"k":"l","c":[]}]]}],["n",{"w":"render","s":"nder","e":true,"k":"n","c":[["s",{"w":"renders","s":"s","e":true,"k":"s","c":[]}]]}],["p",{"w":"rep","s":"p","e":false,"k":"p","c":[["l",{"w":"repl","s":"l","e":false,"k":"l","c":[["a",{"w":"repla","s":"a","e":false,"k":"a","c":[["y",{"w":"replay","s":"y","e":true,"k":"y","c":[]}],["c",{"w":"replace","s":"ce","e":true,"k":"c","c":[]}]]}],["i",{"w":"replica","s":"ica","e":true,"k":"i","c":[["s",{"w":"replicas","s":"s","e":true,"k":"s","c":[]}]]}]]}],["o",{"w":"repository","s":"ository","e":true,"k":"o","c":[]}]]}],["m",{"w":"rem","s":"m","e":false,"k":"m","c":[["a",{"w":"remains","s":"ains","e":true,"k":"a","c":[]}],["o",{"w":"remote","s":"ote","e":true,"k":"o","c":[["s",{"w":"remotes","s":"s","e":true,"k":"s","c":[]}]]}]]}],["d",{"w":"redis","s":"dis","e":true,"k":"d","c":[]}],["w",{"w":"rewrite","s":"write","e":true,"k":"w","c":[]}],["l",{"w":"reloads","s":"loads","e":true,"k":"l","c":[]}],["b",{"w":"rebuilds","s":"builds","e":true,"k":"b","c":[]}]]}],["o",{"w":"ro","s":"o","e":false,"k":"o","c":[["l",{"w":"role","s":"le","e":true,"k":"l","c":[["s",{"w":"roles","s":"s","e":true,"k":"s","c":[]}]]}],["w",{"w":"row","s":"w","e":true,"k":"w","c":[["s",{"w":"rows","s":"s","e":true,"k":"s","c":[]}]]}],["u",{"w":"route","s":"ute","e":true,"k":"u","c":[]}],["o",{"w":"root","s":"ot","e":true,"k":"o","c":[]}]]}],["u",{"w":"ru","s":"u","e":false,"k":"u","c":[["n",{"w":"run","s":"n","e":true,"k":"n","c":[["s",{"w":"runs","s":"s","e":true,"k":"s","c":[]}],["t",{"w":"runtime","s":"time","e":true,"k":"t","c":[]}]]}],["l",{"w":"rules","s":"les","e":true,"k":"l","c":[]}]]}],["a",{"w":"ra","s":"a","e":false,"k":"a","c":[["w",{"w":"raw","s":"w","e":true,"k":"w","c":[]}],["r",{"w":"rarely","s":"rely","e":true,"k":"r","c":[]}]]}],["i",{"w":"right","s":"ight","e":true,"k":"i","c":[]}]]}],["p",{"w":"p","s":"p","e":false,"k":"p","c":[["r",{"w":"pr","s":"r","e":false,"k":"r","c":[["o",{"w":"pro","s":"o","e":false,"k":"o","c":[["d",{"w":"produc","s":"duc","e":false,"k":"d","c":[["t",{"w":"production","s":"tion","e":true,"k":"t","c":[]}],["e",{"w":"produce","s":"e","e":false,"k":"e","c":[["s",{"w":"produces","s":"s","e":true,"k":"s","c":[]}],["d",{"w":"produced","s":"d","e":true,"k":"d","c":[]}]]}]]}],["v",{"w":"prov","s":"v","e":false,"k":"v","c":[["i",{"w":"provide","s":"ide","e":true,"k":"i","c":[["r",{"w":"provider","s":"r","e":true,"k":"r","c":[["s",{"w":"providers","s":"s","e":true,"k":"s","c":[]}]]}]]}],["e",{"w":"proves","s":"es","e":true,"k":"e","c":[]}]]}],["j",{"w":"project","s":"ject","e":true,"k":"j","c":[["i",{"w":"projectid","s":"id","e":true,"k":"i","c":[]}],["s",{"w":"projects","s":"s","e":true,"k":"s","c":[]}]]}],["c",{"w":"process","s":"cess","e":true,"k":"c","c":[]}],["f",{"w":"profile","s":"file","e":true,"k":"f","c":[]}],["t",{"w":"protected","s":"tected","e":true,"k":"t","c":[]}]]}],["e",{"w":"pre","s":"e","e":false,"k":"e","c":[["s",{"w":"presen","s":"sen","e":false,"k":"s","c":[["t",{"w":"present","s":"t","e":true,"k":"t","c":[]}],["c",{"w":"presence","s":"ce","e":true,"k":"c","c":[]}]]}],["v",{"w":"preview","s":"view","e":true,"k":"v","c":[["s",{"w":"previews","s":"s","e":true,"k":"s","c":[]}]]}],["f",{"w":"prefer","s":"fer","e":true,"k":"f","c":[]}],["d",{"w":"predeclared","s":"declared","e":true,"k":"d","c":[]}]]}],["i",{"w":"pri","s":"i","e":false,"k":"i","c":[["o",{"w":"prior","s":"or","e":true,"k":"o","c":[]}],["m",{"w":"primary","s":"mary","e":true,"k":"m","c":[]}]]}]]}],["u",{"w":"pu","s":"u","e":false,"k":"u","c":[["b",{"w":"publi","s":"bli","e":false,"k":"b","c":[["c",{"w":"public","s":"c","e":true,"k":"c","c":[]}],["s",{"w":"publish","s":"sh","e":true,"k":"s","c":[]}]]}],["r",{"w":"purpose","s":"rpose","e":true,"k":"r","c":[]}],["t",{"w":"put","s":"t","e":true,"k":"t","c":[]}]]}],["a",{"w":"pa","s":"a","e":false,"k":"a","c":[["s",{"w":"pass","s":"ss","e":true,"k":"s","c":[["e",{"w":"passed","s":"ed","e":true,"k":"e","c":[]}]]}],["t",{"w":"path","s":"th","e":true,"k":"t","c":[["s",{"w":"paths","s":"s","e":true,"k":"s","c":[]}]]}],["g",{"w":"pagination","s":"gination","e":true,"k":"g","c":[]}],["c",{"w":"package","s":"ckage","e":true,"k":"c","c":[["s",{"w":"packages","s":"s","e":true,"k":"s","c":[]}],[".",{"w":"package.json","s":".json","e":true,"k":".","c":[]}]]}],["i",{"w":"pair","s":"ir","e":true,"k":"i","c":[]}]]}],["l",{"w":"pl","s":"l","e":false,"k":"l","c":[["u",{"w":"plu","s":"u","e":false,"k":"u","c":[["g",{"w":"plugin","s":"gin","e":true,"k":"g","c":[]}],["s",{"w":"plus","s":"s","e":true,"k":"s","c":[]}]]}],["a",{"w":"pla","s":"a","e":false,"k":"a","c":[["c",{"w":"place","s":"ce","e":true,"k":"c","c":[]}],["t",{"w":"platform","s":"tform","e":true,"k":"t","c":[]}]]}]]}],["n",{"w":"pnpm","s":"npm","e":true,"k":"n","c":[]}],["o",{"w":"po","s":"o","e":false,"k":"o","c":[["p",{"w":"populated","s":"pulated","e":true,"k":"p","c":[]}],["l",{"w":"poll","s":"ll","e":true,"k":"l","c":[["u",{"w":"pollute","s":"ute","e":true,"k":"u","c":[]}]]}],["s",{"w":"post","s":"st","e":true,"k":"s","c":[]}],["r",{"w":"port","s":"rt","e":true,"k":"r","c":[]}],["i",{"w":"point","s":"int","e":true,"k":"i","c":[]}]]}],["i",{"w":"picture","s":"icture","e":true,"k":"i","c":[]}]]}],["y",{"w":"y","s":"y","e":false,"k":"y","c":[["o",{"w":"you","s":"ou","e":true,"k":"o","c":[["r",{"w":"your","s":"r","e":true,"k":"r","c":[["s",{"w":"yourself","s":"self","e":true,"k":"s","c":[]}]]}]]}],["e",{"w":"yes","s":"es","e":true,"k":"e","c":[]}]]}],["l",{"w":"l","s":"l","e":false,"k":"l","c":[["o",{"w":"lo","s":"o","e":false,"k":"o","c":[["g",{"w":"logi","s":"gi","e":false,"k":"g","c":[["n",{"w":"login","s":"n","e":true,"k":"n","c":[]}],["c",{"w":"logic","s":"c","e":true,"k":"c","c":[]}]]}],["c",{"w":"local","s":"cal","e":true,"k":"c","c":[["h",{"w":"localhost","s":"host","e":true,"k":"h","c":[]}],["l",{"w":"locally","s":"ly","e":true,"k":"l","c":[]}]]}],["n",{"w":"long","s":"ng","e":true,"k":"n","c":[]}],["a",{"w":"load","s":"ad","e":true,"k":"a","c":[["s",{"w":"loads","s":"s","e":true,"k":"s","c":[]}]]}]]}],["e",{"w":"le","s":"e","e":false,"k":"e","c":[["v",{"w":"level","s":"vel","e":true,"k":"v","c":[]}],["a",{"w":"lea","s":"a","e":false,"k":"a","c":[["s",{"w":"least","s":"st","e":true,"k":"s","c":[]}],["r",{"w":"learn","s":"rn","e":true,"k":"r","c":[]}],["k",{"w":"leak","s":"k","e":true,"k":"k","c":[]}]]}],["g",{"w":"legacy","s":"gacy","e":true,"k":"g","c":[]}],["t",{"w":"let","s":"t","e":true,"k":"t","c":[]}]]}],["a",{"w":"layer","s":"ayer","e":true,"k":"a","c":[]}],["i",{"w":"li","s":"i","e":false,"k":"i","c":[["s",{"w":"list","s":"st","e":true,"k":"s","c":[["e",{"w":"listen","s":"en","e":true,"k":"e","c":[["s",{"w":"listens","s":"s","e":true,"k":"s","c":[]}]]}],["s",{"w":"lists","s":"s","e":true,"k":"s","c":[]}]]}],["v",{"w":"lives","s":"ves","e":true,"k":"v","c":[]}]]}]]}],["4",{"w":"401","s":"401","e":true,"k":"4","c":[]}],["2",{"w":"2.1","s":"2.1","e":true,"k":"2","c":[]}],["j",{"w":"j","s":"j","e":false,"k":"j","c":[["w",{"w":"jw","s":"w","e":false,"k":"w","c":[["t",{"w":"jwt","s":"t","e":true,"k":"t","c":[["o",{"w":"jwtoauthprovider","s":"oauthprovider","e":true,"k":"o","c":[]}]]}],["k",{"w":"jwks","s":"ks","e":true,"k":"k","c":[]}]]}],["o",{"w":"job","s":"ob","e":true,"k":"o","c":[["i",{"w":"jobid","s":"id","e":true,"k":"i","c":[]}]]}],["s",{"w":"json","s":"son","e":true,"k":"s","c":[]}]]}],["3",{"w":"3","s":"3","e":false,"k":"3","c":[["0",{"w":"3000","s":"000","e":true,"k":"0","c":[]}],["2",{"w":"32","s":"2","e":true,"k":"2","c":[]}]]}],["q",{"w":"query","s":"query","e":true,"k":"q","c":[]}],["z",{"w":"zod","s":"zod","e":true,"k":"z","c":[]}],["1",{"w":"127.0.0.1","s":"127.0.0.1","e":true,"k":"1","c":[]}],["0",{"w":"0","s":"0","e":true,"k":"0","c":[]}],["_",{"w":"_meta.ui.resourceuri","s":"_meta.ui.resourceuri","e":true,"k":"_","c":[]}]],"postings":{"0":[380],"32":[124],"401":[40,28,46],"3000":[108,198,96,7],"api":[1,4,8,16,1,2,29,274,6],"key":[1,4,8,472,12],"shared":[2,483],"secret":[2,287],"dev":[2,34,365,3,7,23,6,5,1,8,5,13,3],"gate":[2,154],"with":[2,25,2,7,41,2,4,31,20,4,16,10,11,54,3,27,29,16,3,21,7,25,18,1,6,1,24,24,13,72],"apikey":[2,2],"not":[2,2,29,49,2,31,23,1,12,3,2,13,28,1,33,7,19,1,1,18,1,83,49,101,9],"mcp":[2,2,23,2,3,5,3,8,17,9,11,5,17,4,3,1,11,37,5,18,43,65,12,15,14,7,3,7,1,3,2,2,2,19,1,3,3,21,1,2,2,1,12,66,2,20],"oauth":[2,2,14,15,4,9,5,7,2,5,12,8,1,9,1,9,1,1,7,97,3,77,3,45,3,41,3,109],"options":[3,23,7,24,24,4,8,9,10,15,7,49,121,6,6],"use":[4,14,6,3,2,26,3,24,1,1,1,14,4,8,5,37,41,65,17,28,56,36,3,55,19],"for":[4,14,2,9,1,1,20,10,24,10,13,2,6,37,2,1,16,15,4,1,1,1,42,38,8,27,2,13,2,3,13,3,8,7,21,7,28,7,8,29,23,2],"internal":[4],"or":[4,14,14,2,2,27,14,5,10,18,1,1,3,7,15,1,8,20,6,15,2,4,20,25,10,11,15,4,11,1,14,3,3,32,68,11,11,38,8,9,11,8,3,1,10,8],"development":[4,161],"gates":[4,151],"only":[4,125,9,7,3,4,4,38,1,49,16,14,2,49,88,4,102],"it":[4,111,19,82,22,22,51,100],"validates":[4,185,1],"a":[4,35,1,42,1,1,9,15,6,1,22,2,13,1,1,2,8,3,1,2,1,1,14,21,9,12,13,3,6,7,1,1,1,1,18,10,15,6,11,2,5,7,17,9,24,11,15,4,19,6,14,4,2,37,1],"header":[4,1,9],"and":[4,23,11,1,1,6,12,6,39,10,1,15,5,7,10,7,5,4,4,6,10,3,24,4,13,1,18,10,14,9,4,1,4,1,2,1,1,5,2,1,2,2,1,1,11,3,1,8,1,5,3,9,8,1,17,4,4,2,22,1,2,1,1,1,18,6,10,10,17,2,21,20],"does":[4,111,36,259],"set":[4,18,31,32,1,11,11,3,55,6,25,86,5,1,1,1,3,14,1,21,7,1,1,3,24,15,3,95,41],"ctx.user":[4,20,15,10,6,12,8,24,4,10,1,1,12],"this":[4,23,31,45,36,23,146,3],"is":[4,23,6,6,19,4,20,2,2,17,31,2,1,26,7,2,14,5,5,15,3,2,12,3,13,14,1,1,16,15,1,2,13,1,3,10,3,15,1,2,19,22,2,25,85],"clients":[5,22,80,109,136,28,11,1,25],"send":[5,22],"the":[5,23,1,3,1,2,1,24,1,3,18,3,19,2,2,5,1,1,1,11,4,2,1,1,1,2,1,10,2,1,4,11,1,2,1,1,3,11,1,3,2,3,19,2,13,2,2,4,1,1,2,3,4,2,8,2,1,13,2,19,13,3,9,4,10,2,7,19,18,2,1,1,1,1,10,14,1,2,2,1,18,6,1,13,4,20,25,3,1,1,3,9,6],"in":[5,19,4,4,1,2,13,7,4,15,8,3,5,9,5,1,4,2,2,2,11,9,17,4,9,1,6,22,42,2,3,19,18,1,11,2,5,2,9,1,2,11,3,11,2,2,41,3,27,2,1,1,16,27,21,16,12],"x":[5,8],"by":[5,25,52,33,59,214,8,124,10,2],"default":[5,2,39,74,71,115,2,39,15,6,20,8,13,18,66],"option":[6],"description":[8,191,2,45,67,39,12,7,1,47,37,11,14],"env":[9,7],"api_key":[10],"environment":[11,11,31,40,4,30,203,64,44],"variable":[11,30,28,18,30,146,155,62],"name":[11,38,26,38,14,9,94,19,103,10,5,1,2,107,29,1,10,7],"headername":[12],"request":[14,140,14,44,1,1,104,3,61,34],"to":[14,2,11,58,8,10,5,3,4,12,20,5,34,8,50,32,12,2,4,41,3,4,20,4,4,11,4,2,26,19,34,12,20,9,26],"read":[14,101,317,66,35],"validate":[15],"compares":[16],"value":[16,174],"custom":[17,1,58,1,2,3,2,104,102,5,1,15,32],"validation":[17],"function":[17,169,71],"production":[18,30,26,11,5,21,15,40,6,120,17,16,15,41,3,24,5,18,22,9,17,16,2],"user":[18,97,1,94,1],"identity":[18,60,4,175],"an":[18,11,8,28,49,41,9,23,73,37,2,54],"provider":[18,33,9,22,3],"from":[18,17,2,28,17,33,16,2,16,21,22,15,30,5,1,1,4,10,17,2,4,39,15,26,1,23,32,41,4,15],"supabase":[18,76,1,1,7,1,6,3,1,1,1,6,220],"auth0":[18,1,1,1,6,1,7,3,6],"better":[18,32,1,1,6,1,5,2,6],"auth":[18,32,1,1,6,1,2,3,2,6,14,17,5,7,227,182],"dynamic":[20,10,77],"client":[20,10,7,1,27,38,11,1,37,100,24,69,43,24,4],"registration":[20,10,8,20,45],"authentication":[20,31,44,10,189,92],"bitmcp":[20,3,9,19,3,4,6,31,3,5,12,24,24,80,1,17,13,7,6,10,7,1,23,6,7,11,1,8,21,14,8,4,6,2,18,20,3,2,2,2,15,31,11,6],"configure":[21,2,9,20,2,44,211,39],"variables":[22,31,40,4,30,134,69,64,44],"tools":[24,31,12,32,30,4,4,1,8,24,6,18,36,14,14,62,97,81,8,11,2,14],"verify":[25,31,44,52,188,139],"when":[27,6,2,23,24,2,2,6,11,10,5,19,37,37,3,30,32,15,3,45,3,19,22,13,15,4,1,13,25,23,18],"your":[27,3,1,1,26,1,5,18,3,18,5,2,1,4,143,32,4,44,4,10,9,1,19,2,4,24,1,1,2,83,35],"authorization":[27,31,19,26],"server":[27,9,22,6,13,8,10,8,2,1,8,2,47,5,18,9,63,63,7,6,10,1,7,4,1,1,2,24,1,1,1,9,17,21,6,10,4,44,12,1,13],"register":[27,80],"directly":[27,231,29,6],"access":[27,8,23,45,12,76,85],"tokens":[27,31,27,18,21,150,66,139,49],"dashboard":[28,76],"create":[29,86,319,6,17,12,9],"identifier":[29,3],"you":[29,3,1,49,3,26,53,10,25,45,15,17,35,14,88,3],"will":[29],"as":[29,4,52,30,19,33,122,31,76,111],"token":[29,6,5,6,12,24,21,10,1,1],"audience":[29,17],"example":[29,2,30,24,23,35,199,39],"https":[29,32,24,257,39],"mcp.example.com":[29,56,296],"enable":[30,30,36,10,1,2],"that":[30,134,5,67,8,16,28,16,6,25,5,1,75,63,27,20],"if":[30,81,145],"required":[30,262,48,91],"tenant":[30,1,13],"note":[31],"domain":[31,13,246],"tenant.us.auth0":[31],"com":[31],"should":[32,106,242,74],"match":[32,351,27],"public":[32,16,26,16,21,15,106,62,15,33,18,14,7,3,2,109],"url":[32,16,13,11,2,11,5,18,2,16,223,5,20,6,3,3,109],"resource":[32,1,13,34,5,143,155,3],"auth0_audience":[33,12],"used":[33,203],"do":[33,121,15,28,41,19,2,18,1,242],"pass":[33,52,27,3,22,30,71,6,78,156],"plugin":[33,25,2,22,177],"inline":[34,29],"roles":[35,14,26],"are":[35,98,125,240,9],"available":[35],"on":[35,50,30,36,3,13,28,21,22,43,16,7,1,12,11,6,6,46,27,4,37,25,41],"ctx.user.roles":[35],"includes":[35,78,328],"them":[35],"start":[36,28,241,10,2,90,1,32,11,1,9,14],"pnpm":[36,257,48,60,6,4,35,3,3],"connect":[37,28,49,78,87,101,33],"capable":[37,28,49,301],"complete":[38,28],"login":[38,28,37,11],"call":[39,1,93,4,14,16,1,2,68,20,52,216],"tool":[39,75,1,20,3,14,16,2,16,3,48,2,5,6,8,64,89,5,16,68,6,1,8,18],"confirm":[39,1,22,5,1,24,19,3,27,6,5,3,1,43],"populated":[39],"without":[40,74,38],"purpose":[42,28,18,267,89,78],"auth0_domain":[43],"mcp_url":[47,26,12,4,22,14,166,3,45,3,39,3,110],"canonical":[48,26,16,36],"fields":[49,26,52,26,46,278],"id":[49,26,35,3,7,7,36,1,45,112],"email":[49,26,38,14],"nickname":[49],"picture":[49,26],"emailverified":[49,26],"updatedat":[49],"2.1":[51,7,2,35,11],"auth's":[58],"owns":[58],"consent":[58,45,5],"issuance":[58,45],"verifies":[58,45],"jwt":[58,20,4,2],"against":[58,114],"jwks":[58,4],"endpoint":[58,53,183,48,10,5,24,3,29],"app":[59,5,44,21,5,18,19,23,35,22,46,2,62,9,44,1,2,17,85],"expose":[61],"issuer":[61,11],"including":[61],"base":[61,11],"path":[61,95,43,39,38,77,29,28,17,66,27],"app.example.com":[61],"served":[62,245,78],"at":[62,47,201,35,57,10],"authurl":[62],"through":[66,48,72,64,8],"authenticated":[67,47,1,96,3],"receive":[67],"unauthenticated":[68],"requests":[68,46,46],"return":[68,46,56,7,1,12,8],"better_auth_url":[71],"sessionid":[75,52],"isanonymous":[75],"wire":[77],"any":[77,179,48,36,139],"jwtoauthprovider":[77,6],"providers":[78,27],"full":[79,31],"control":[79],"binding":[80],"covered":[82],"built":[82,376],"need":[82,82,80,32,35],"introspection":[82],"instead":[82,40,351],"of":[82,40,75,156,120],"verification":[82,2],"claim":[82],"mapping":[82],"differs":[82,347],"defaults":[82,112,176,137],"short":[83],"spec":[83,121,148],"logic":[84],"standard":[84,105,115,15],"flow":[84,137],"must":[85,71,12,4,26,142,43,96,32],"target":[85],"same":[85,49,32,6,3,120,25,4,10,9,42,1],"can":[85,22,26,23,19,41,45,153,63],"also":[85,201,17,4,26,144],"requires":[86,193,218],"http":[86,22,60,45,92,1,3,7,1,35,36,4,4,4,2,4,2,1,4,8,2,4,4,1,15,6,7,2,11,6,8,2,2,2],"app.stdio":[86],"throws":[86],"bitmcp_state_key":[91,20,178,3,17,28,3,90,49,5],"mrtr":[92,49,1,5,2,3,4,47,2,11,200,15,54],"state":[92,162,69,174],"using":[92,23,205],"ctx.ask":[92,19,30,3,10,138,48,139],"passed":[93,34],"factory":[93,34],"override":[93,34,72,45,63,61,42],"row":[101],"level":[101],"security":[101],"handles":[103,34,20,12,5,148],"maps":[103,44,114],"claims":[103,10],"open":[105,68],"sign":[105,4],"allow":[107],"apps":[107,32,95,18,23,127,9,3,2,31,13],"so":[107,109,28,13,4,123,1,1],"route":[108],"implements":[108],"localhost":[108,217,88],"least":[109],"one":[109,120],"method":[109,203],"copy":[110],"project":[110,10,216,93,3,8,18,25,15,1],"local":[110,12,280,9,36,13],"self":[110,12],"hosted":[110,12],"explicitly":[112,25],"other":[113,229,24],"present":[113],"run":[114,37,146,137],"discovers":[114,392],"metadata":[114,231,16,15,10,30],"completes":[114],"calls":[114,125,11,8],"include":[114,211,60,92],"bearer":[114],"query":[115],"session":[115,48,10,148],"put":[115,210,88],"raw":[115,40,50],"layer":[115],"data":[115,62,1,43],"scoped":[115,247],"ctx.user.id":[115],"application":[115,196,49],"code":[115,53,143,94,10],"owned":[116],"operations":[116],"service":[116],"role":[116,11],"outside":[116,30],"context":[116],"supabase_project_id":[119],"supabase_url":[121],"projectid":[122],"supabase_jwt_secret":[123],"legacy":[124],"hs256":[124],"bytes":[124],"fullname":[127],"username":[127],"avatarurl":[127],"aal":[127],"amr":[127],"actions":[128,4,1,61,313],"defineaction":[129,5,283],"visibility":[129,5,5,42,338],"namespaced":[129,378],"backing":[129,4,37,80],"naming":[130,371],"view":[131,2,5,7,7,4,11,3,17,3,2,24,12,8,6,17,1,19,8,37,10,77,5,48,56],"why":[132],"exist":[132],"they":[133,281],"hidden":[133,284],"model":[133,5,29,19,8,223,98],"definetool":[134,43,6],"kind":[134],"action":[134],"accepts":[134],"place":[135],"named":[135],"exports":[135,175,31],"actions.ts":[135,372,11],"beside":[135],"registered":[136],"forecast.refresh":[136,371],"each":[137,33,90,246],"new":[137,17,16,88,182,18],"stateless":[137,23,3,7,5,83,39,4],"ids":[137,185],"resuming":[137],"work":[137,24],"iframe":[138,53,50,17,2,151,4,96],"clicks":[138],"pollute":[138],"list":[138,56],"ui":[138,11,48,21,1,11,31,26,47,81,1,101],"helpers":[138,47],"sees":[138],"main":[138,150],"refresh":[138],"filter":[138],"pagination":[138],"uses":[139,121,51,97],"official":[139,95,18,24,138],"field":[139,61,45,118,17],"invention":[139],"confirmations":[140,152,48,76,63],"input_required":[141,6],"execute":[141,5,4,3,1,41,3,1,4],"after":[141,9,2],"accept":[141,9],"never":[145,93,20],"destructive":[146],"sensitive":[146],"declare":[146],"confirmation":[146],"resulttype":[147],"text":[148,4,35,1,8,20,13,37,1,1,1,145,1,1,1],"hosts":[148,1,7,169,63,25,1,1],"see":[148,68,70,8,9,30,9,136],"message":[148,54,14],"may":[149,19],"render":[149,67,22,19,157,2],"preview":[149,67,172,2,12,45,13,13],"structuredcontent":[149,21,17,29,24,8,272],"runs":[150,45,98,41,7],"once":[150],"mutation":[151],"first":[151,190,192],"replay":[151],"examples":[152,19],"deletes":[152],"rows":[152],"acceptance":[152],"try":[152],"mid":[153],"flight":[153],"continuation":[153,50],"inside":[153,50],"re":[154,121,66],"enters":[154],"inputresponses":[154,52],"mutate":[154],"before":[154,198],"ask":[154,48,5],"prefer":[155],"yes":[155],"no":[155,3,5,10,148],"ctx.inputrequired":[155],"remains":[155],"escape":[155,50,21,74],"hatch":[155,50,95],"be":[156],"side":[156],"effect":[156],"works":[156],"terminal":[156],"views":[156,61,41,20,169,3,10],"show":[156],"previews":[156],"replace":[156],"ctx.handle":[158,1],"handlestore":[158,6,8,151],"sessions":[158,11],"long":[161,10],"what":[162,252,89],"proves":[162],"there":[163,158],"sticky":[163],"memory":[163,9],"mints":[164],"opaque":[164,45],"uuid":[164],"store":[164,159],"whatever":[164],"under":[164,123,47,172],"memoryhandlestore":[165],"kv":[166,6,151],"redis":[166,6,151],"d1":[166,6,151],"get":[166,6,132,3,3,46,2,51,7],"shape":[166,6,43,15],"jobid":[167,8],"back":[167],"normal":[167],"argument":[167],"next":[167,1,183,44,44,66],"every":[168,19,70,2,62,3,10],"builds":[168,153,40],"fresh":[168,153],"assume":[168],"hit":[168],"another":[168],"replica":[168,156,16,139],"make":[169],"safe":[169],"handle":[170,1,37,1],"immediately":[170],"let":[170,182],"poll":[170,87],"status":[170,5],"via":[170,65,5,8],"calltool":[170,48,5,25,1,8,1],"updates":[170,80],"useapp":[170,48,4,12,8,34],"result":[170,7,8,5,47,5,2,3,3],"task":[171],"starts":[171,240],"ingest":[171],"job":[171,152],"returns":[171,238],"right":[171],"away":[171],"stores":[172],"implement":[172],"adapter":[172],"single":[172,156],"process":[172,224],"sse":[173],"survive":[174],"restarts":[174],"backed":[174],"storage":[174],"provide":[174],"replicas":[175,122,4,83],"serve":[175,112],"checks":[175,150],"arg":[175],"schemas":[177,2],"csp":[177,3,11,67,262],"allowlists":[177,3],"rules":[182,138,180],"toolcontext":[184],"exposed":[186],"returning":[187],"object":[187],"produces":[187],"host":[187,38,10,4,2,7,2,8,3,2,39,23,13,52,3,3,15,2,41,37,7],"generated":[187,333],"summary":[187],"json":[187,165,8],"input":[189,10],"arguments":[189,133],"zod":[189],"schema":[189,13],"output":[190,323],"types":[190,330],"deny":[191],"all":[191],"network":[191,67],"src":[192,1,81,46,186,21],"allowlist":[192,1,86],"fetch":[192,87,25,14],"resources":[193,26,195],"asset":[193],"cdn":[193],"scripts":[193,38,204,91],"styles":[193],"visible":[194,321],"appear":[194],"always":[196,212],"produced":[196],"presence":[197],"view.tsx":[197,32,9,39,232,1,6],"attaches":[197],"resourceuri":[197,323],"manually":[197],"undefined":[198],"happy":[199,39,38,244],"sets":[199],"destructivehint":[199],"true":[199,210],"unless":[199,298],"annotations":[199],"inputrequired":[204],"answers":[207],"prior":[207],"mint":[209,131,139],"enabled":[211,3,77,3,45,3,23,18,112],"incoming":[213],"stdio":[213,101,1,73,3,5,7,1,8,9,33,17,2,14],"envelope":[213],"confirmresult":[215],"included":[216],"still":[216,200],"hashed":[218,23,46,47,80,1,35,14,53],"html":[218,2,8,1,2,7,3,33,13,37,10,80,1,49,53],"tailwind":[218,18,23,2,13,246],"shell":[220,18,279],"styling":[224],"theme":[225,10,26,13,104,150],"hatches":[226],"build":[227,60,6,11,20,10,7,107,1,1,13,45],"boundaries":[227,273,2],"react":[228,15,32,234],"component":[228],"compiled":[228,3,28],"into":[228,1,32,250],"predeclared":[228],"compiler":[229,4,5,22,14,46,180,2,1,3],"bundles":[229],"esbuild":[229,218,13],"document":[229,123],"mime":[229,186],"type":[229,131,55],"profile":[229,185,1],"uri":[230],"hash":[230,1,93,87,106],"content":[231,93,36,56],"addressed":[231,93],"css":[231,5,24,1],"inlined":[231,29,204],"tsx":[231],"source":[231,43,102,152],"cacheable":[232],"ttlms":[232],"cachescope":[232],"injects":[233,5,36,137],"appinfo":[234,4,282],"usehoststyles":[235,3,23],"v4":[236,23],"classes":[236],"typed":[237],"sibling":[237,7,35],"authors":[238,282],"appshell":[238],"arrives":[240],"ontoolresult":[240,8],"loads":[241,64,15],"sandbox":[241,170,4],"reads":[242,32],"import":[243,34,1],"file":[244,15,45,6,24,166,12,9],"based":[244,256],"generate":[244],"views.d.ts":[244],"inferred":[244],"generic":[244],"args":[249],"instance":[252],"isconnected":[253],"connection":[254,2],"error":[255,1],"keeps":[257],"stable":[257],"intervals":[257],"reset":[257],"goes":[258],"which":[258],"issues":[258],"gated":[258],"classname":[259],"utilities":[259,1],"add":[259,15],"vite":[259],"tailwind.config":[259],"isolated":[260],"scans":[260],"emits":[260,27,17,30,80,89],"style":[260],"tag":[260],"applies":[261,205],"subset":[261],"chat":[261],"follow":[261],"class":[262],"bg":[264],"background":[264,1],"color":[265,2,2,2],"primary":[265,2,4,86],"foreground":[266],"muted":[268],"secondary":[269],"border":[270,1],"font":[272,1],"sans":[272,1],"body":[274],"root":[274,155,54],"stay":[274,112,31],"transparent":[274],"views.css":[274,253],"extra":[274,254],"paths":[274,254],"intellisense":[274,246],"exported":[275],"modelcontextprotocol":[275],"ext":[275],"these":[276,232],"direct":[276],"tool.ts":[277,229,3,1,4],"node":[278,17,1,1,1,6,4,9,26,127,7,33],"builtins":[278,232],"secrets":[278,5],"cloudflare":[280,1,1,5,1,38,17,127,7,1,54],"deploy":[281,3,4,7,13,20,3,4,8,42,83,9,1,46,6,2],"workers":[281,6],"dist":[281,6,1,5,2,9,1,5,24,7,2,119,2],"server.js":[281,6,1,5,2,9,1,5,24,7,2,119,2],"scaffold":[282,44,3,112,17],"config":[283,43,35,5,112,26],"bitmcp.config.ts":[285,5,18,1,23,6,99,86],"manifest.json":[287,47],"writes":[288,47,6],"wrangler.jsonc":[288,243],"worker":[289],"var":[289],"http.allowedhosts":[290,19,29,139],"workers.dev":[290],"nodejs_compat":[292],"require":[292],"wrangler":[293],"serves":[293,31,28,1,43],"vercel":[295,31,1,1,1,6,1,5,9,35,85,7,1,52],"artifact":[295,33,15],"embed":[297,2],"existing":[297,2],"operate":[297],"createapp":[300],"origin":[302,23,57,31],"guards":[302,111],"web":[304,15],"handler":[304,15,66,148],"plus":[304,143,17,9],"post":[304,6],"runtime":[304,179],"listens":[305],"streamable":[305,12,35,44,17,19,21,9],"listen":[306,103,14,53,13],"address":[306,103,16],"127.0.0.1":[306,96,7],"port":[307,103,13,51,2,13],"mcp_port":[307,103,12,66],"mcp_host":[307,103,14,66],"mcp_path":[307,103,16,66],"health":[307,102],"http.cors":[309,168],"already":[310],"default.fetch":[310],"point":[310,102],"platform":[310,16,8,144],"entry":[310,210],"app.fetch":[310,15,88],"yourself":[310],"cli":[311,125,47,43],"createapp.fromdir":[311],"internally":[311],"rarely":[311],"but":[311],"useful":[311],"tests":[311],"servers":[311],"transport":[315],"discovery":[320,25,15,26,114],"behind":[323],"bindings":[325],"enforces":[325,88],"allowedhosts":[325,88],"specific":[326],"vercel.json":[335,194],"rewrite":[335,15,35],"deployment":[338,47,47],"requeststate":[340,91,48,6],"gitignored":[341],"mcp.js":[341],"app.vercel.app":[342],"guides":[342],"card":[344,1,2,9,1,3,1,5,2,4,12,1],"publish":[345],"endpoints":[346],"remote":[349,34],"resolution":[349],"step":[351,44,44,66],"cards":[352,34],"discover":[352],"connecting":[352,35,111],"shaped":[352],"automatically":[352,30],"well":[358,1],"known":[358,1],"card.json":[358],"alias":[359],"responses":[360],"caching":[360],"etag":[360],"support":[360],"cors":[360],"headers":[360],"browser":[360],"servercard":[361,18],"disabled":[361],"package":[361,1],"comes":[362],"npm":[362],"packages":[362],"map":[362],"scope.package":[362],"false":[366,13],"disable":[366,13],"generation":[366],"while":[366],"keeping":[366],"title":[369,1],"display":[370],"websiteurl":[373],"site":[374],"repository":[375,1],"icons":[377],"icon":[378],"urls":[378],"optional":[378,99,51],"mimetype":[378],"sizes":[378],"entirely":[379],"remotes":[380],"reflects":[380],"where":[380],"locally":[382],"resolves":[382],"configured":[383],"advertises":[384],"correct":[384],"across":[384],"projects":[385],"scaffolded":[385],"pair":[386],"protected":[386],"aligned":[386],"desktop":[388,8,9,49],"setup":[388],"transports":[389],"compatibility":[393],"spawns":[396],"child":[396],"mode":[397],"command":[398,45,12],"case":[399],"claude":[405,10],"vs":[405,10],"cursor":[405,10],"ok":[409],"exact":[410],"foo":[410],"satisfy":[410],"renders":[411],"results":[411],"reloads":[411],"changes":[411],"exposes":[413],"apply":[413],"differ":[414],"keys":[414],"_meta.ui.resourceuri":[414],"advertise":[415],"extension":[415],"io.modelcontextprotocol":[415],"chatgpt":[415],"load":[415],"supported":[415],"cannot":[416],"strips":[416],"degradation":[416],"order":[416],"lists":[417],"mcp_transport":[420,66],"bind":[425,66],"bitmcp_root":[428,54],"cwd":[429],"structure":[432,66,1],"learn":[432,66],"how":[432,66],"folders":[432,68,6],"compile":[432],"ship":[432],"installation":[433],"install":[440],"dependencies":[440],"script":[442],"rebuilds":[447],"bundle":[450,61],"spawn":[454],"template":[458],"watch":[460],"flag":[465],"n":[474],"cachettlms":[477],"http.path":[477],"version":[477,47],"come":[477],"package.json":[477,48],"omitted":[477],"write":[478],"matching":[478],"hmac":[485],"node_env":[496],"overridden":[497],"attach":[498],"discovered":[498],"files":[504],"lives":[506],"contain":[506],"tool.tsx":[506],"index.ts":[506],"folder":[507],"hello":[507],"forecast":[507],"delete_rows":[507],"export":[507],"hello.shout":[507],"imports":[508],"fail":[508],"importing":[509,1],"modules":[510],"graph":[511],"leak":[511],"author":[512],"hand":[520],"holds":[520],"cache":[524],"ttl":[524],"written":[530,2],"define":[533]}},"isArray":false},"page_id":{"type":"Radix","node":{"w":"","s":"","e":false,"k":"","c":[["d",{"w":"d","s":"d","e":false,"k":"d","c":[["o",{"w":"docs","s":"ocs","e":true,"k":"o","c":[]}],["e",{"w":"deployment","s":"eployment","e":true,"k":"e","c":[]}],["i",{"w":"discoverability","s":"iscoverability","e":true,"k":"i","c":[]}]]}],["a",{"w":"a","s":"a","e":false,"k":"a","c":[["u",{"w":"auth","s":"uth","e":true,"k":"u","c":[["e",{"w":"authentication","s":"entication","e":true,"k":"e","c":[]}],["0",{"w":"auth0","s":"0","e":true,"k":"0","c":[]}]]}],["p",{"w":"api","s":"pi","e":true,"k":"p","c":[]}],["c",{"w":"actions","s":"ctions","e":true,"k":"c","c":[]}]]}],["k",{"w":"key","s":"key","e":true,"k":"k","c":[]}],["b",{"w":"better","s":"better","e":true,"k":"b","c":[]}],["c",{"w":"c","s":"c","e":false,"k":"c","c":[["u",{"w":"custom","s":"ustom","e":true,"k":"u","c":[]}],["o",{"w":"co","s":"o","e":false,"k":"o","c":[["r",{"w":"core","s":"re","e":true,"k":"r","c":[]}],["n",{"w":"con","s":"n","e":false,"k":"n","c":[["c",{"w":"concepts","s":"cepts","e":true,"k":"c","c":[]}],["f",{"w":"confirmations","s":"firmations","e":true,"k":"f","c":[]}],["n",{"w":"connecting","s":"necting","e":true,"k":"n","c":[]}]]}]]}],["l",{"w":"cloudflare","s":"loudflare","e":true,"k":"l","c":[]}],["a",{"w":"card","s":"ard","e":true,"k":"a","c":[]}]]}],["s",{"w":"s","s":"s","e":false,"k":"s","c":[["u",{"w":"supabase","s":"upabase","e":true,"k":"u","c":[]}],["e",{"w":"server","s":"erver","e":true,"k":"e","c":[]}],["t",{"w":"st","s":"t","e":false,"k":"t","c":[["a",{"w":"started","s":"arted","e":true,"k":"a","c":[]}],["r",{"w":"structure","s":"ructure","e":true,"k":"r","c":[]}]]}]]}],["h",{"w":"handles","s":"handles","e":true,"k":"h","c":[]}],["t",{"w":"tools","s":"tools","e":true,"k":"t","c":[]}],["v",{"w":"v","s":"v","e":false,"k":"v","c":[["i",{"w":"views","s":"iews","e":true,"k":"i","c":[]}],["e",{"w":"vercel","s":"ercel","e":true,"k":"e","c":[]}]]}],["n",{"w":"node","s":"node","e":true,"k":"n","c":[]}],["g",{"w":"getting","s":"getting","e":true,"k":"g","c":[]}],["i",{"w":"installation","s":"installation","e":true,"k":"i","c":[]}],["p",{"w":"project","s":"project","e":true,"k":"p","c":[]}]],"postings":{"docs":[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"authentication":[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"api":[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"key":[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"auth0":[19,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"better":[50,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"auth":[50,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"custom":[76,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"supabase":[94,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"core":[128,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"concepts":[128,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"actions":[128,1,1,1,1,1,1,1,1,1,1,1],"confirmations":[140,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"handles":[157,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"tools":[176,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"views":[217,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"deployment":[280,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"cloudflare":[280,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"node":[296,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"vercel":[327,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"discoverability":[344,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"server":[344,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"card":[344,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"getting":[387,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"started":[387,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"connecting":[387,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"installation":[433,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"project":[499,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"structure":[499,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]}},"isArray":false},"type":{"type":"Radix","node":{"w":"","s":"","e":false,"k":"","c":[["p",{"w":"page","s":"page","e":true,"k":"p","c":[]}],["t",{"w":"text","s":"text","e":true,"k":"t","c":[]}],["h",{"w":"heading","s":"heading","e":true,"k":"h","c":[]}]],"postings":{"page":[1,18,31,26,18,34,12,17,19,41,63,16,31,17,43,46,66],"text":[2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,5,1,1,1,1,1,1,1,1,1,1,1,2,8,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,4,1,1,1,1,1,1,2,5,1,1,1,1,1,1,1,1,1,1,2,5,1,1,1,1,1,1,1,1,1,1,1,1,2,9,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,10,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,6,1,1,1,1,1,1,1,1,2,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,6,1,1,1,1,1,1,1,1,1,2,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,8,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,6,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,6,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"heading":[3,18,1,1,1,1,1,26,1,1,1,1,1,21,1,1,1,15,1,1,1,1,1,1,28,1,1,10,1,1,1,14,1,1,1,16,1,1,1,1,1,1,1,34,1,1,1,1,1,1,1,1,55,1,1,1,1,12,1,1,1,1,1,26,1,1,1,1,13,1,1,1,1,1,38,1,1,1,1,1,1,40,1,1,1,1,62,1,1,1,1]}},"isArray":false},"breadcrumbs":{"type":"Radix","node":{"w":"","s":"","e":false,"k":"","c":[["d",{"w":"d","s":"d","e":false,"k":"d","c":[["o",{"w":"docs","s":"ocs","e":true,"k":"o","c":[]}],["e",{"w":"deployment","s":"eployment","e":true,"k":"e","c":[]}],["i",{"w":"discoverability","s":"iscoverability","e":true,"k":"i","c":[]}]]}],["a",{"w":"authentication","s":"authentication","e":true,"k":"a","c":[]}],["c",{"w":"co","s":"co","e":false,"k":"c","c":[["r",{"w":"core","s":"re","e":true,"k":"r","c":[]}],["n",{"w":"concepts","s":"ncepts","e":true,"k":"n","c":[]}]]}],["g",{"w":"getting","s":"getting","e":true,"k":"g","c":[]}],["s",{"w":"started","s":"started","e":true,"k":"s","c":[]}]],"postings":{"docs":[1,18,31,26,18,34,12,17,19,41,63,16,31,17,43,46,66],"authentication":[1,18,31,26,18],"core":[128,12,17,19,41],"concepts":[128,12,17,19,41],"deployment":[280,16,31],"discoverability":[344],"getting":[387,46,66],"started":[387,46,66]}},"isArray":true},"tags":{"type":"Flat","node":{"numberToDocumentId":[]},"isArray":true},"url":{"type":"Radix","node":{"w":"","s":"","e":false,"k":"","c":[["d",{"w":"d","s":"d","e":false,"k":"d","c":[["o",{"w":"docs","s":"ocs","e":true,"k":"o","c":[]}],["a",{"w":"data","s":"ata","e":true,"k":"a","c":[]}],["e",{"w":"de","s":"e","e":false,"k":"e","c":[["f",{"w":"def","s":"f","e":false,"k":"f","c":[["i",{"w":"definetool","s":"inetool","e":true,"k":"i","c":[]}],["a",{"w":"default","s":"ault","e":true,"k":"a","c":[]}]]}],["p",{"w":"deploy","s":"ploy","e":true,"k":"p","c":[["m",{"w":"deployment","s":"ment","e":true,"k":"m","c":[]}]]}]]}],["i",{"w":"discoverability","s":"iscoverability","e":true,"k":"i","c":[]}]]}],["a",{"w":"a","s":"a","e":false,"k":"a","c":[["u",{"w":"auth","s":"uth","e":true,"k":"u","c":[["e",{"w":"authentication","s":"entication","e":true,"k":"e","c":[]}],["0",{"w":"auth0","s":"0","e":true,"k":"0","c":[]}]]}],["p",{"w":"ap","s":"p","e":false,"k":"p","c":[["i",{"w":"api","s":"i","e":true,"k":"i","c":[]}],["p",{"w":"app","s":"p","e":true,"k":"p","c":[]}]]}],["c",{"w":"actions","s":"ctions","e":true,"k":"c","c":[]}],["l",{"w":"al","s":"l","e":false,"k":"l","c":[["l",{"w":"allowlists","s":"lowlists","e":true,"k":"l","c":[]}],["s",{"w":"also","s":"so","e":true,"k":"s","c":[]}]]}],["n",{"w":"an","s":"n","e":true,"k":"n","c":[["d",{"w":"and","s":"d","e":true,"k":"d","c":[]}]]}]]}],["k",{"w":"key","s":"key","e":true,"k":"k","c":[]}],["o",{"w":"o","s":"o","e":false,"k":"o","c":[["p",{"w":"options","s":"ptions","e":true,"k":"p","c":[]}],["a",{"w":"oauth","s":"auth","e":true,"k":"a","c":[]}],["n",{"w":"only","s":"nly","e":true,"k":"n","c":[]}],["r",{"w":"origin","s":"rigin","e":true,"k":"r","c":[]}]]}],["c",{"w":"c","s":"c","e":false,"k":"c","c":[["o",{"w":"co","s":"o","e":false,"k":"o","c":[["n",{"w":"con","s":"n","e":false,"k":"n","c":[["f",{"w":"confi","s":"fi","e":false,"k":"f","c":[["g",{"w":"config","s":"g","e":true,"k":"g","c":[["u",{"w":"configure","s":"ure","e":true,"k":"u","c":[]}]]}],["r",{"w":"confirmations","s":"rmations","e":true,"k":"r","c":[]}]]}],["t",{"w":"control","s":"trol","e":true,"k":"t","c":[]}],["c",{"w":"concepts","s":"cepts","e":true,"k":"c","c":[]}],["n",{"w":"connecting","s":"necting","e":true,"k":"n","c":[]}]]}],["r",{"w":"core","s":"re","e":true,"k":"r","c":[]}],["m",{"w":"comp","s":"mp","e":false,"k":"m","c":[["a",{"w":"compatibility","s":"atibility","e":true,"k":"a","c":[]}],["i",{"w":"compiler","s":"iler","e":true,"k":"i","c":[]}]]}]]}],["t",{"w":"ctx","s":"tx","e":false,"k":"t","c":[["u",{"w":"ctxuser","s":"user","e":true,"k":"u","c":[]}],["a",{"w":"ctxask","s":"ask","e":true,"k":"a","c":[]}],["h",{"w":"ctxhandle","s":"handle","e":true,"k":"h","c":[]}]]}],["u",{"w":"custom","s":"ustom","e":true,"k":"u","c":[]}],["s",{"w":"csp","s":"sp","e":true,"k":"s","c":[]}],["a",{"w":"ca","s":"a","e":false,"k":"a","c":[["l",{"w":"calltool","s":"lltool","e":true,"k":"l","c":[]}],["r",{"w":"card","s":"rd","e":true,"k":"r","c":[]}]]}],["l",{"w":"cl","s":"l","e":false,"k":"l","c":[["o",{"w":"cloudflare","s":"oudflare","e":true,"k":"o","c":[]}],["i",{"w":"cli","s":"i","e":true,"k":"i","c":[["e",{"w":"clients","s":"ents","e":true,"k":"e","c":[]}]]}]]}],["r",{"w":"createapp","s":"reateapp","e":true,"k":"r","c":[]}]]}],["s",{"w":"s","s":"s","e":false,"k":"s","c":[["e",{"w":"se","s":"e","e":false,"k":"e","c":[["t",{"w":"set","s":"t","e":true,"k":"t","c":[]}],["c",{"w":"sec","s":"c","e":false,"k":"c","c":[["u",{"w":"security","s":"urity","e":true,"k":"u","c":[]}],["r",{"w":"secrets","s":"rets","e":true,"k":"r","c":[]}]]}],["e",{"w":"see","s":"e","e":true,"k":"e","c":[]}],["r",{"w":"server","s":"rver","e":true,"k":"r","c":[]}]]}],["u",{"w":"supabase","s":"upabase","e":true,"k":"u","c":[]}],["t",{"w":"st","s":"t","e":false,"k":"t","c":[["a",{"w":"sta","s":"a","e":false,"k":"a","c":[["t",{"w":"stateless","s":"teless","e":true,"k":"t","c":[]}],["r",{"w":"started","s":"rted","e":true,"k":"r","c":[]}]]}],["y",{"w":"styling","s":"yling","e":true,"k":"y","c":[]}],["e",{"w":"step","s":"ep","e":true,"k":"e","c":[]}],["d",{"w":"stdio","s":"dio","e":true,"k":"d","c":[]}],["r",{"w":"structure","s":"ructure","e":true,"k":"r","c":[]}]]}],["c",{"w":"sc","s":"c","e":false,"k":"c","c":[["h",{"w":"schemas","s":"hemas","e":true,"k":"h","c":[]}],["a",{"w":"scaffold","s":"affold","e":true,"k":"a","c":[]}],["r",{"w":"scripts","s":"ripts","e":true,"k":"r","c":[]}]]}],["h",{"w":"shell","s":"hell","e":true,"k":"h","c":[]}]]}],["e",{"w":"e","s":"e","e":false,"k":"e","c":[["n",{"w":"en","s":"n","e":false,"k":"n","c":[["v",{"w":"environment","s":"vironment","e":true,"k":"v","c":[]}],["a",{"w":"enable","s":"able","e":true,"k":"a","c":[]}],["d",{"w":"endpoints","s":"dpoints","e":true,"k":"d","c":[]}]]}],["x",{"w":"ex","s":"x","e":false,"k":"x","c":[["i",{"w":"exist","s":"ist","e":true,"k":"i","c":[["i",{"w":"existing","s":"ing","e":true,"k":"i","c":[]}]]}],["a",{"w":"example","s":"ample","e":true,"k":"a","c":[]}]]}],["s",{"w":"escape","s":"scape","e":true,"k":"s","c":[]}],["m",{"w":"em","s":"m","e":false,"k":"m","c":[["b",{"w":"embed","s":"bed","e":true,"k":"b","c":[]}],["i",{"w":"emits","s":"its","e":true,"k":"i","c":[]}]]}]]}],["v",{"w":"v","s":"v","e":false,"k":"v","c":[["a",{"w":"variables","s":"ariables","e":true,"k":"a","c":[]}],["e",{"w":"ver","s":"er","e":false,"k":"e","c":[["i",{"w":"verify","s":"ify","e":true,"k":"i","c":[]}],["c",{"w":"vercel","s":"cel","e":true,"k":"c","c":[]}]]}],["i",{"w":"vi","s":"i","e":false,"k":"i","c":[["e",{"w":"view","s":"ew","e":true,"k":"e","c":[["s",{"w":"views","s":"s","e":true,"k":"s","c":[]}]]}],["s",{"w":"visibility","s":"sibility","e":true,"k":"s","c":[]}]]}]]}],["b",{"w":"b","s":"b","e":false,"k":"b","c":[["i",{"w":"bi","s":"i","e":false,"k":"i","c":[["t",{"w":"bitmcp","s":"tmcp","e":true,"k":"t","c":[["c",{"w":"bitmcpconfigts","s":"configts","e":true,"k":"c","c":[]}]]}],["n",{"w":"binding","s":"nding","e":true,"k":"n","c":[]}]]}],["e",{"w":"better","s":"etter","e":true,"k":"e","c":[]}],["u",{"w":"build","s":"uild","e":true,"k":"u","c":[]}],["o",{"w":"boundaries","s":"oundaries","e":true,"k":"o","c":[]}]]}],["u",{"w":"u","s":"u","e":false,"k":"u","c":[["s",{"w":"use","s":"se","e":true,"k":"s","c":[["a",{"w":"useapp","s":"app","e":true,"k":"a","c":[]}]]}],["i",{"w":"ui","s":"i","e":true,"k":"i","c":[]}],["r",{"w":"url","s":"rl","e":true,"k":"r","c":[]}]]}],["i",{"w":"i","s":"i","e":false,"k":"i","c":[["n",{"w":"in","s":"n","e":true,"k":"n","c":[["s",{"w":"installation","s":"stallation","e":true,"k":"s","c":[]}]]}],["d",{"w":"identity","s":"dentity","e":true,"k":"d","c":[]}]]}],["t",{"w":"t","s":"t","e":false,"k":"t","c":[["o",{"w":"tool","s":"ool","e":false,"k":"o","c":[["s",{"w":"tools","s":"s","e":true,"k":"s","c":[]}],["c",{"w":"toolcontext","s":"context","e":true,"k":"c","c":[]}]]}],["h",{"w":"th","s":"h","e":false,"k":"h","c":[["e",{"w":"the","s":"e","e":true,"k":"e","c":[["m",{"w":"theme","s":"me","e":true,"k":"m","c":[]}]]}],["i",{"w":"this","s":"is","e":true,"k":"i","c":[]}]]}],["r",{"w":"transports","s":"ransports","e":true,"k":"r","c":[]}]]}],["j",{"w":"jwt","s":"jwt","e":true,"k":"j","c":[]}],["p",{"w":"pr","s":"pr","e":false,"k":"p","c":[["o",{"w":"pro","s":"o","e":false,"k":"o","c":[["v",{"w":"prov","s":"v","e":false,"k":"v","c":[["i",{"w":"providers","s":"iders","e":true,"k":"i","c":[]}],["e",{"w":"proves","s":"es","e":true,"k":"e","c":[]}]]}],["j",{"w":"project","s":"ject","e":true,"k":"j","c":[]}]]}],["e",{"w":"preview","s":"eview","e":true,"k":"e","c":[]}]]}],["f",{"w":"f","s":"f","e":false,"k":"f","c":[["u",{"w":"full","s":"ull","e":true,"k":"u","c":[]}],["r",{"w":"from","s":"rom","e":true,"k":"r","c":[]}],["l",{"w":"flow","s":"low","e":true,"k":"l","c":[]}],["o",{"w":"for","s":"or","e":true,"k":"o","c":[]}],["i",{"w":"files","s":"iles","e":true,"k":"i","c":[]}]]}],["w",{"w":"w","s":"w","e":false,"k":"w","c":[["i",{"w":"with","s":"ith","e":true,"k":"i","c":[]}],["h",{"w":"wh","s":"h","e":false,"k":"h","c":[["y",{"w":"why","s":"y","e":true,"k":"y","c":[]}],["a",{"w":"what","s":"at","e":true,"k":"a","c":[]}]]}],["o",{"w":"work","s":"ork","e":true,"k":"o","c":[]}]]}],["r",{"w":"r","s":"r","e":false,"k":"r","c":[["e",{"w":"re","s":"e","e":false,"k":"e","c":[["s",{"w":"res","s":"s","e":false,"k":"s","c":[["o",{"w":"reso","s":"o","e":false,"k":"o","c":[["u",{"w":"resource","s":"urce","e":true,"k":"u","c":[["s",{"w":"resources","s":"s","e":true,"k":"s","c":[]}]]}],["l",{"w":"resolution","s":"lution","e":true,"k":"l","c":[]}]]}],["u",{"w":"result","s":"ult","e":true,"k":"u","c":[]}]]}],["q",{"w":"requests","s":"quests","e":true,"k":"q","c":[]}],["t",{"w":"return","s":"turn","e":true,"k":"t","c":[]}],["p",{"w":"replicas","s":"plicas","e":true,"k":"p","c":[]}],["m",{"w":"remote","s":"mote","e":true,"k":"m","c":[]}],["w",{"w":"rewrite","s":"write","e":true,"k":"w","c":[]}]]}],["o",{"w":"row","s":"ow","e":true,"k":"o","c":[]}],["u",{"w":"rules","s":"ules","e":true,"k":"u","c":[]}]]}],["l",{"w":"l","s":"l","e":false,"k":"l","c":[["e",{"w":"level","s":"evel","e":true,"k":"e","c":[]}],["o",{"w":"long","s":"ong","e":true,"k":"o","c":[]}]]}],["n",{"w":"n","s":"n","e":false,"k":"n","c":[["a",{"w":"naming","s":"aming","e":true,"k":"a","c":[]}],["e",{"w":"ne","s":"e","e":false,"k":"e","c":[["v",{"w":"never","s":"ver","e":true,"k":"v","c":[]}],["x",{"w":"next","s":"xt","e":true,"k":"x","c":[]}]]}],["o",{"w":"node","s":"ode","e":true,"k":"o","c":[]}]]}],["m",{"w":"mrtr","s":"mrtr","e":true,"k":"m","c":[]}],["h",{"w":"h","s":"h","e":false,"k":"h","c":[["a",{"w":"ha","s":"a","e":false,"k":"a","c":[["n",{"w":"handles","s":"ndles","e":true,"k":"n","c":[]}],["t",{"w":"hatch","s":"tch","e":true,"k":"t","c":[["e",{"w":"hatches","s":"es","e":true,"k":"e","c":[]}]]}]]}],["e",{"w":"helpers","s":"elpers","e":true,"k":"e","c":[]}],["t",{"w":"ht","s":"t","e":false,"k":"t","c":[["m",{"w":"html","s":"ml","e":true,"k":"m","c":[]}],["t",{"w":"http","s":"tp","e":true,"k":"t","c":[]}]]}],["o",{"w":"host","s":"ost","e":true,"k":"o","c":[]}]]}],["g",{"w":"g","s":"g","e":false,"k":"g","c":[["u",{"w":"guards","s":"uards","e":true,"k":"u","c":[]}],["e",{"w":"getting","s":"etting","e":true,"k":"e","c":[]}]]}]],"postings":{"docs":[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"authentication":[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"api":[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"key":[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"options":[3,3,1,1,1,1,1,1,1,1,1,1,1,1,8,15,1,1,1,1,1,1,1,1,8,12,1,1,1,1,1,1,6,6,1,1,1,1,1,1,9,15,1,1,1,1,1,1,1,1,1,1,56,16],"auth0":[19,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"configure":[21,2,5,1,1,1,1,2,18,2,5,1,1,1,1,35,14,236,15,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"set":[22,11,20,44,14,172,6,1,1,1,38,6,1,1,1,1],"environment":[22,11,20,44,14,219,6,1,1,1,1,54,24,1,1,1,1,1,1,1,1,1,1,1,1,1,7,42,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"variables":[22,11,20,44,14,219,6,1,1,1,1,54,24,1,1,1,1,1,1,1,1,1,1,1,1,1,7,42,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"bitmcp":[23,11,20,9,35,14],"use":[24,11,20,44,14],"ctxuser":[24,11,20,44,14],"in":[24,11,20,44,14,186,11],"tools":[24,11,20,44,14,63,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"verify":[25,11,1,1,1,1,16,8,1,1,1,1,32,14],"better":[50,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"auth":[50,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"custom":[76,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"jwt":[78,5],"identity":[78,5],"providers":[78,5],"full":[79,5],"control":[79,5],"with":[79,5],"resource":[80,5,1],"binding":[80,5,1],"supabase":[94,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"enable":[96,8,1,1,1,1,1,1],"oauth":[96,8,1,1,1,1,1,1],"row":[101,14,1],"level":[101,14,1],"security":[101,14,1],"core":[128,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"concepts":[128,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"actions":[128,1,1,1,1,1,1,1,1,1,1,1],"naming":[130,5,1,365,6],"from":[131,6],"the":[131,6,366,9,1,1,1,1,1,1,1,1],"view":[131,6,8,11],"why":[132,6,1],"exist":[132,6,1],"confirmations":[140,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"mrtr":[142,5,1,1,1,1],"example":[143,9],"ctxask":[144,9,1,1],"never":[145,11],"only":[145,11],"handles":[157,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"ctxhandle":[159,5,1,1,1],"stateless":[160,8,1,132,20,1,1,1],"requests":[160,8,1],"long":[161,9,1,1],"work":[161,9,1,1],"what":[162,11,1,1,328,9,1,1,1,1,1,1,1,1],"this":[162,11,1,1],"proves":[162,11,1,1],"return":[178,9,1],"data":[178,9,1,33,18,1,1,1],"schemas":[179,10,1],"csp":[180,11,1,1],"allowlists":[180,11,1,1],"visibility":[181,13],"rules":[182,13,1,1,1],"definetool":[183,16],"toolcontext":[184,16,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"result":[185,30,1],"helpers":[185,30,1],"views":[217,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"ui":[219,10,1,1,1],"resources":[219,10,1,1,1],"html":[220,13,1,1,1,1,1],"shell":[220,13,1,1,1,1,1],"flow":[221,18,1,1,1],"useapp":[222,21,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"calltool":[223,35],"styling":[224,35,1],"host":[225,36,1,1,1,1,1,1,1,1,1,1,1,1,1,28,23,65,3,18,3,1,1,1],"theme":[225,36,1,1,1,1,1,1,1,1,1,1,1,1,1],"escape":[226,49,1,24,11,1,1,1,1,1,1,1,1,1],"hatches":[226,49,1],"build":[227,50,1,1],"boundaries":[227,50,1,1,223,6,1,1,1],"deployment":[280,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"cloudflare":[280,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"scaffold":[282,6,41,6],"for":[282,6,41,6],"secrets":[283,6,1,1,1],"and":[283,6,1,1,1,10,23],"config":[283,6,1,1,1,212,17,1,1,1,1,1,1,1,1,1,1,1],"deploy":[284,9,38,10],"bitmcpconfigts":[285,9,38,10,95,40,1,1],"see":[286,9,8,23,7,10],"also":[286,9,8,23,7,10],"node":[296,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"embed":[299,11],"an":[299,11],"existing":[299,11],"app":[299,11],"createapp":[300,11,1,1,1,1,1,1,1,1,1],"hatch":[300,11,1,1,1,1,1,1,1,1,1],"replicas":[301,20,1,1,1],"origin":[302,23],"guards":[302,23],"vercel":[327,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,7,35],"discoverability":[344,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"server":[344,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"card":[344,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"endpoints":[346,7,1,1,1,1,1,1,1],"default":[347,14,1],"remote":[349,31,1,1,1,1],"url":[349,31,1,1,1,1],"resolution":[349,31,1,1,1,1],"rewrite":[350,35],"next":[351,35,9,37,7,59,7,28],"step":[351,35,9,37,7,59,7,28],"getting":[387,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"started":[387,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"connecting":[387,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"transports":[389,8,1,1,1,1,1,1,1,1,1,1,1,1,1],"preview":[390,21],"stdio":[391,21],"clients":[391,1,20,1],"http":[392,21],"compatibility":[393,21,1,1,1],"installation":[433,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"scripts":[435,7,1,1,1,1,1,1,1,1,1,1,1,1],"cli":[436,19,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"project":[499,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"structure":[499,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],"compiler":[502,1,5,1,1,1,1,1,1,1,1,1,1,1,1],"emits":[503,9,1,1,1,1,1,1,1,1],"files":[504,17,1,1,1,1,1,1,1,1,1,1,1]}},"isArray":false},"locale":{"type":"Flat","node":{"numberToDocumentId":[]},"isArray":false}},"vectorIndexes":{"embeddings":{"kind":"flat","size":512,"vectors":[]}},"searchableProperties":["content","page_id","type","breadcrumbs","tags","url","locale","embeddings"],"searchablePropertiesWithTypes":{"content":"string","page_id":"string","type":"string","breadcrumbs":"string[]","tags":"enum[]","url":"string","locale":"enum","embeddings":"vector[512]"},"frequencies":{"content":{"1":{"api":1,"key":1},"2":{"shared":1,"secret":1,"dev":1,"gate":1,"with":1,"apikey":1,"not":1,"mcp":1,"oauth":1},"3":{"options":1},"4":{"use":1,"apikey":1,"for":1,"internal":1,"or":1,"development":1,"gates":1,"only":1,"it":1,"validates":1,"a":1,"header":1,"and":1,"does":1,"not":1,"set":1,"ctx.user":1,"this":1,"is":1,"mcp":1,"oauth":1},"5":{"clients":1,"send":1,"the":1,"key":1,"in":1,"x":1,"api":1,"header":1,"by":1,"default":1},"6":{"option":1},"7":{"default":1},"8":{"description":1},"9":{"env":1},"10":{"api_key":1},"11":{"environment":1,"variable":1,"name":1},"12":{"headername":1},"13":{"x":1,"api":1,"key":1},"14":{"request":1,"header":1,"to":1,"read":1},"15":{"validate":1},"16":{"compares":1,"to":1,"env":1,"value":1},"17":{"custom":1,"validation":1,"function":1},"18":{"for":1,"production":1,"user":1,"identity":1,"use":1,"an":1,"oauth":1,"provider":1,"from":1,"supabase":1,"auth0":1,"better":1,"auth":1,"or":1,"custom":1},"19":{"auth0":1},"20":{"auth0":1,"dynamic":1,"client":1,"registration":1,"authentication":1,"for":1,"bitmcp":1},"21":{"configure":1,"auth0":1},"22":{"set":1,"environment":1,"variables":1},"23":{"configure":1,"bitmcp":1},"24":{"use":1,"ctx.user":1,"in":1,"tools":1},"25":{"verify":1},"26":{"options":1},"27":{"use":1,"this":1,"when":1,"auth0":1,"is":1,"your":1,"authorization":1,"server":1,"mcp":1,"clients":1,"register":1,"directly":1,"with":1,"and":1,"send":1,"access":1,"tokens":1,"to":1},"28":{"in":1,"the":1,"auth0":1,"dashboard":1},"29":{"create":1,"an":1,"api":1,"with":1,"identifier":1,"you":1,"will":1,"use":1,"as":1,"the":1,"token":1,"audience":1,"for":1,"example":1,"https":1,"mcp.example.com":1,"mcp":1},"30":{"enable":1,"dynamic":1,"client":1,"registration":1,"for":1,"that":1,"api":1,"if":1,"required":1,"by":1,"your":1,"tenant":1},"31":{"note":1,"your":1,"tenant":1,"domain":1,"for":1,"example":1,"tenant.us.auth0":1,"com":1},"32":{"the":1,"api":1,"identifier":1,"should":1,"match":1,"your":1,"public":1,"mcp":1,"url":1,"or":1,"resource":1,"you":1,"configure":1,"in":1,"bitmcp":1},"33":{"auth0_audience":1,"is":1,"used":1,"as":1,"the":1,"oauth":1,"resource":1,"when":1,"you":1,"do":1,"not":1,"pass":1,"in":1,"plugin":1,"options":1},"34":{"or":1,"inline":1},"35":{"auth0":1,"roles":1,"from":1,"the":1,"token":1,"are":1,"available":1,"on":1,"ctx.user.roles":1,"when":1,"includes":1,"them":1,"in":1,"access":1},"36":{"start":1,"the":1,"server":1,"with":1,"pnpm":1,"dev":1,"or":1},"37":{"connect":1,"from":1,"an":1,"oauth":1,"capable":1,"mcp":1,"client":1},"38":{"complete":1,"auth0":1,"login":1,"and":1,"client":1,"registration":1},"39":{"call":1,"a":1,"tool":1,"and":1,"confirm":1,"ctx.user":1,"is":1,"populated":1},"40":{"401":1,"call":1,"mcp":1,"without":1,"a":1,"token":1,"and":1,"confirm":1},"41":{"variable":1},"42":{"purpose":1},"43":{"auth0_domain":1},"44":{"auth0":1,"tenant":1,"domain":1},"45":{"auth0_audience":1},"46":{"token":1,"audience":1,"and":1,"default":1,"oauth":1,"resource":1},"47":{"mcp_url":1},"48":{"canonical":1,"public":1,"mcp":1,"url":1,"in":1,"production":1},"49":{"ctx.user":1,"fields":1,"id":1,"email":1,"name":1,"nickname":1,"picture":1,"emailverified":1,"updatedat":1,"roles":1},"50":{"better":1,"auth":1},"51":{"better":1,"auth":1,"oauth":1,"2.1":1,"provider":1,"authentication":1,"for":1,"bitmcp":1},"52":{"configure":1,"better":1,"auth":1},"53":{"set":1,"environment":1,"variables":1},"54":{"configure":1,"bitmcp":1},"55":{"use":1,"ctx.user":1,"in":1,"tools":1},"56":{"verify":1},"57":{"options":1},"58":{"use":1,"this":1,"when":1,"better":1,"auth's":1,"oauth":1,"2.1":1,"plugin":1,"is":1,"your":1,"authorization":1,"server":1,"auth":1,"owns":1,"registration":1,"consent":1,"and":1,"token":1,"issuance":1,"bitmcp":1,"verifies":1,"jwt":1,"access":1,"tokens":1,"against":1,"jwks":1,"endpoint":1},"59":{"in":1,"your":1,"better":1,"auth":1,"app":1},"60":{"enable":1,"the":1,"oauth":1,"2.1":1,"provider":1,"plugin":1},"61":{"expose":1,"the":1,"issuer":1,"url":1,"including":1,"auth":1,"base":1,"path":1,"for":1,"example":1,"https":1,"app.example.com":1,"api":1},"62":{"confirm":1,"jwks":1,"is":1,"served":1,"at":1,"authurl":1},"63":{"or":1,"inline":1},"64":{"start":1,"your":1,"better":1,"auth":1,"app":1,"and":1,"the":1,"bitmcp":1,"server":1},"65":{"connect":1,"from":1,"an":1,"oauth":1,"capable":1,"mcp":1,"client":1},"66":{"complete":1,"login":1,"through":1,"better":1,"auth":1},"67":{"confirm":1,"authenticated":1,"tools":1,"receive":1,"ctx.user":1},"68":{"401":1,"confirm":1,"unauthenticated":1,"requests":1,"return":1},"69":{"variable":1},"70":{"purpose":1},"71":{"better_auth_url":1},"72":{"better":1,"auth":1,"issuer":1,"base":1,"url":1},"73":{"mcp_url":1},"74":{"canonical":1,"public":1,"mcp":1,"url":1,"in":1,"production":1},"75":{"ctx.user":1,"fields":1,"id":1,"email":1,"name":1,"picture":1,"emailverified":1,"sessionid":1,"isanonymous":1,"roles":1},"76":{"custom":1},"77":{"wire":1,"any":1,"oauth":1,"authorization":1,"server":1,"with":1,"custom":1,"or":1,"jwtoauthprovider":1},"78":{"jwt":1,"identity":1,"providers":1},"79":{"full":1,"control":1,"with":1,"custom":1},"80":{"resource":1,"binding":1},"81":{"options":1},"82":{"use":1,"a":1,"custom":1,"provider":1,"when":1,"your":1,"identity":1,"is":1,"not":1,"covered":1,"by":1,"built":1,"in":1,"plugin":1,"you":1,"need":1,"token":1,"introspection":1,"instead":1,"of":1,"jwt":1,"verification":1,"or":1,"claim":1,"mapping":1,"differs":1,"from":1,"the":1,"defaults":1},"83":{"use":1,"jwtoauthprovider":1,"with":1,"a":1,"short":1,"spec":1},"84":{"use":1,"custom":1,"when":1,"verification":1,"logic":1,"is":1,"not":1,"a":1,"standard":1,"jwt":1,"flow":1},"85":{"tokens":1,"must":1,"target":1,"your":1,"mcp":1,"server":1,"in":1,"production":1,"set":1,"mcp_url":1,"to":1,"the":1,"same":1,"url":1,"you":1,"use":1,"as":1,"oauth":1,"resource":1,"for":1,"example":1,"https":1,"mcp.example.com":1,"can":1,"also":1,"pass":1,"on":1,"provider":1,"options":1},"86":{"oauth":1,"requires":1,"http":1,"app.stdio":1,"throws":1,"when":1,"auth":1,"is":1,"set":1},"87":{"variable":1},"88":{"purpose":1},"89":{"mcp_url":1},"90":{"canonical":1,"public":1,"mcp":1,"url":1,"in":1,"production":1},"91":{"bitmcp_state_key":1},"92":{"mrtr":1,"state":1,"when":1,"using":1,"confirm":1,"or":1,"ctx.ask":1},"93":{"options":1,"passed":1,"to":1,"a":1,"factory":1,"override":1,"environment":1,"variables":1},"94":{"supabase":1},"95":{"supabase":1,"oauth":1,"2.1":1,"server":1,"authentication":1,"for":1,"bitmcp":1},"96":{"enable":1,"supabase":1,"oauth":1},"97":{"set":1,"environment":1,"variables":1},"98":{"configure":1,"bitmcp":1},"99":{"use":1,"ctx.user":1,"in":1,"tools":1},"100":{"verify":1},"101":{"row":1,"level":1,"security":1},"102":{"options":1},"103":{"use":1,"this":1,"when":1,"supabase":1,"auth":1,"is":1,"your":1,"authorization":1,"server":1,"handles":1,"login":1,"consent":1,"client":1,"registration":1,"and":1,"token":1,"issuance":1,"bitmcp":1,"verifies":1,"access":1,"tokens":1,"maps":1,"claims":1,"to":1,"ctx.user":1},"104":{"in":1,"the":1,"supabase":1,"dashboard":1},"105":{"open":1,"authentication":1,"sign":1,"in":1,"providers":1,"oauth":1,"server":1},"106":{"enable":1,"the":1,"oauth":1,"2.1":1,"server":1},"107":{"enable":1,"allow":1,"dynamic":1,"oauth":1,"apps":1,"so":1,"mcp":1,"clients":1,"can":1,"register":1},"108":{"3000":1,"set":1,"the":1,"consent":1,"url":1,"to":1,"a":1,"route":1,"your":1,"app":1,"implements":1,"for":1,"example":1,"http":1,"localhost":1,"auth":1},"109":{"enable":1,"at":1,"least":1,"one":1,"sign":1,"in":1,"method":1},"110":{"copy":1,"your":1,"project":1,"id":1,"or":1,"full":1,"url":1,"for":1,"local":1,"self":1,"hosted":1,"supabase":1},"111":{"set":1,"mcp_url":1,"to":1,"your":1,"public":1,"mcp":1,"endpoint":1,"in":1,"production":1,"bitmcp_state_key":1,"if":1,"you":1,"use":1,"confirm":1,"or":1,"ctx.ask":1},"112":{"or":1,"pass":1,"options":1,"explicitly":1},"113":{"ctx.user":1,"includes":1,"id":1,"email":1,"name":1,"and":1,"other":1,"supabase":1,"claims":1,"when":1,"present":1,"in":1,"the":1,"token":1},"114":{"401":1,"run":1,"the":1,"server":1,"and":1,"connect":1,"with":1,"an":1,"oauth":1,"capable":1,"mcp":1,"client":1,"confirm":1,"discovers":1,"metadata":1,"login":1,"completes":1,"through":1,"supabase":1,"authenticated":1,"tool":1,"calls":1,"include":1,"ctx.user":1,"requests":1,"without":1,"a":1,"bearer":1,"token":1,"return":1},"115":{"to":1,"query":1,"supabase":1,"as":1,"the":1,"authenticated":1,"user":1,"create":1,"a":1,"client":1,"in":1,"your":1,"tool":1,"using":1,"access":1,"token":1,"from":1,"mcp":1,"session":1,"bitmcp":1,"does":1,"not":1,"put":1,"raw":1,"on":1,"ctx.user":1,"read":1,"it":1,"auth":1,"layer":1,"or":1,"pass":1,"data":1,"scoped":1,"by":1,"ctx.user.id":1,"application":1,"code":1},"116":{"for":1,"server":1,"owned":1,"operations":1,"use":1,"the":1,"supabase":1,"service":1,"role":1,"outside":1,"user":1,"context":1},"117":{"variable":1},"118":{"when":1},"119":{"supabase_project_id":1},"120":{"default":1,"project":1,"id":1},"121":{"supabase_url":1},"122":{"local":1,"or":1,"self":1,"hosted":1,"supabase":1,"instead":1,"of":1,"projectid":1},"123":{"supabase_jwt_secret":1},"124":{"32":1,"legacy":1,"hs256":1,"tokens":1,"bytes":1},"125":{"mcp_url":1},"126":{"canonical":1,"public":1,"mcp":1,"url":1,"in":1,"production":1},"127":{"ctx.user":1,"fields":1,"id":1,"email":1,"name":1,"fullname":1,"username":1,"avatarurl":1,"role":1,"aal":1,"amr":1,"sessionid":1,"options":1,"passed":1,"to":1,"the":1,"factory":1,"override":1,"environment":1,"variables":1},"128":{"actions":1},"129":{"defineaction":1,"app":1,"only":1,"visibility":1,"and":1,"namespaced":1,"backing":1,"tools":1},"130":{"naming":1},"131":{"from":1,"the":1,"view":1},"132":{"why":1,"actions":1,"exist":1},"133":{"actions":1,"are":1,"backing":1,"tools":1,"the":1,"view":1,"can":1,"call":1,"they":1,"hidden":1,"from":1,"model":1},"134":{"defineaction":1,"is":1,"definetool":1,"with":1,"visibility":1,"app":1,"and":1,"kind":1,"action":1,"it":1,"accepts":1,"the":1,"same":1,"options":1,"as":1},"135":{"place":1,"named":1,"exports":1,"in":1,"actions.ts":1,"beside":1,"the":1,"tool":1},"136":{"the":1,"registered":1,"name":1,"is":1,"forecast.refresh":1},"137":{"each":1,"call":1,"is":1,"a":1,"new":1,"stateless":1,"tools":1,"pass":1,"handles":1,"or":1,"ids":1,"explicitly":1,"when":1,"resuming":1,"work":1},"138":{"iframe":1,"clicks":1,"should":1,"not":1,"pollute":1,"tools":1,"list":1,"with":1,"ui":1,"only":1,"helpers":1,"the":1,"model":1,"sees":1,"main":1,"tool":1,"view":1,"refresh":1,"filter":1,"or":1,"pagination":1},"139":{"this":1,"uses":1,"the":1,"official":1,"apps":1,"visibility":1,"field":1,"not":1,"a":1,"bitmcp":1,"invention":1},"140":{"confirmations":1},"141":{"confirm":1,"mrtr":1,"input_required":1,"ctx.ask":1,"and":1,"execute":1,"after":1,"accept":1},"142":{"mrtr":1},"143":{"example":1},"144":{"ctx.ask":1},"145":{"never":1,"view":1,"only":1},"146":{"destructive":1,"or":1,"sensitive":1,"tools":1,"declare":1,"confirmation":1,"outside":1,"execute":1},"147":{"confirm":1,"maps":1,"to":1,"resulttype":1,"input_required":1,"mrtr":1},"148":{"text":1,"only":1,"hosts":1,"see":1,"message":1},"149":{"ui":1,"hosts":1,"may":1,"render":1,"preview":1,"from":1,"the":1,"mrtr":1,"structuredcontent":1},"150":{"execute":1,"runs":1,"once":1,"after":1,"accept":1},"151":{"the":1,"mutation":1,"does":1,"not":1,"run":1,"on":1,"first":1,"call":1,"and":1,"replay":1},"152":{"the":1,"examples":1,"confirm":1,"app":1,"deletes":1,"rows":1,"only":1,"after":1,"mrtr":1,"acceptance":1,"try":1,"tool":1,"in":1,"a":1,"text":1,"client":1,"to":1,"verify":1,"without":1,"view":1},"153":{"for":1,"mid":1,"flight":1,"fields":1,"use":1,"a":1,"continuation":1,"inside":1,"execute":1},"154":{"ctx.ask":1,"re":1,"enters":1,"execute":1,"on":1,"a":1,"new":1,"request":1,"with":1,"inputresponses":1,"do":1,"not":1,"mutate":1,"before":1,"ask":1},"155":{"prefer":1,"confirm":1,"for":1,"yes":1,"no":1,"gates":1,"raw":1,"ctx.inputrequired":1,"remains":1,"an":1,"escape":1,"hatch":1},"156":{"a":1,"view":1,"must":1,"not":1,"be":1,"the":1,"only":1,"confirm":1,"path":1,"for":1,"side":1,"effect":1,"mrtr":1,"works":1,"in":1,"terminal":1,"hosts":1,"views":1,"can":1,"show":1,"previews":1,"replace":1,"gate":1},"157":{"handles":1},"158":{"ctx.handle":1,"handlestore":1,"and":1,"no":1,"sessions":1},"159":{"ctx.handle":1},"160":{"stateless":1,"requests":1},"161":{"long":1,"work":1},"162":{"what":1,"this":1,"proves":1},"163":{"bitmcp":1,"is":1,"stateless":1,"there":1,"no":1,"mcp":1,"session":1,"id":1,"and":1,"sticky":1,"server":1,"memory":1},"164":{"mints":1,"an":1,"opaque":1,"id":1,"uuid":1,"store":1,"whatever":1,"you":1,"need":1,"under":1,"that":1,"with":1,"a":1,"handlestore":1},"165":{"memoryhandlestore":1,"in":1,"development":1},"166":{"kv":1,"redis":1,"or":1,"d1":1,"in":1,"production":1,"same":1,"get":1,"set":1,"shape":1},"167":{"the":1,"model":1,"and":1,"view":1,"pass":1,"jobid":1,"back":1,"as":1,"a":1,"normal":1,"argument":1,"on":1,"next":1,"call":1},"168":{"every":1,"http":1,"request":1,"builds":1,"a":1,"fresh":1,"mcp":1,"server":1,"tool":1,"code":1,"must":1,"assume":1,"the":1,"next":1,"call":1,"may":1,"hit":1,"another":1,"replica":1},"169":{"handles":1,"make":1,"that":1,"safe":1,"sessions":1,"do":1,"not":1},"170":{"return":1,"a":1,"handle":1,"immediately":1,"let":1,"the":1,"view":1,"poll":1,"status":1,"via":1,"backing":1,"tool":1,"each":1,"is":1,"new":1,"stateless":1,"tools":1,"call":1,"calltool":1,"updates":1,"useapp":1,"result":1,"from":1,"structuredcontent":1},"171":{"the":1,"examples":1,"task":1,"app":1,"starts":1,"a":1,"long":1,"ingest":1,"job":1,"and":1,"returns":1,"handle":1,"right":1,"away":1},"172":{"production":1,"stores":1,"must":1,"implement":1,"the":1,"same":1,"handlestore":1,"get":1,"set":1,"shape":1,"against":1,"kv":1,"redis":1,"or":1,"d1":1,"in":1,"memory":1,"adapter":1,"is":1,"for":1,"a":1,"single":1,"process":1},"173":{"no":1,"open":1,"sse":1,"session":1},"174":{"handles":1,"survive":1,"restarts":1,"when":1,"backed":1,"by":1,"storage":1,"you":1,"provide":1},"175":{"stateless":1,"replicas":1,"can":1,"serve":1,"status":1,"checks":1,"with":1,"the":1,"same":1,"jobid":1,"arg":1},"176":{"tools":1},"177":{"definetool":1,"schemas":1,"return":1,"data":1,"result":1,"and":1,"csp":1,"allowlists":1},"178":{"return":1,"data":1},"179":{"schemas":1},"180":{"csp":1,"allowlists":1},"181":{"visibility":1},"182":{"rules":1},"183":{"definetool":1,"options":1},"184":{"toolcontext":1},"185":{"result":1,"helpers":1},"186":{"a":1,"tool":1,"is":1,"server":1,"function":1,"exposed":1,"to":1,"the":1,"model":1,"through":1,"mcp":1},"187":{"returning":1,"an":1,"object":1,"produces":1,"structuredcontent":1,"for":1,"the":1,"view":1,"and":1,"text":1,"every":1,"host":1,"generated":1,"summary":1,"or":1,"json":1},"188":{"custom":1,"text":1},"189":{"input":1,"validates":1,"tool":1,"arguments":1,"zod":1,"or":1,"standard":1,"schema":1},"190":{"output":1,"validates":1,"the":1,"return":1,"value":1,"and":1,"types":1,"view":1,"result":1},"191":{"default":1,"csp":1,"is":1,"deny":1,"all":1,"for":1,"iframe":1,"network":1,"access":1},"192":{"connect":1,"src":1,"allowlist":1,"for":1,"fetch":1,"from":1,"the":1,"view":1},"193":{"resources":1,"asset":1,"src":1,"allowlist":1,"for":1,"cdn":1,"scripts":1,"or":1,"styles":1},"194":{"defaults":1,"to":1,"model":1,"app":1,"visible":1,"tools":1,"appear":1,"in":1,"list":1,"use":1,"actions":1,"for":1,"only":1},"195":{"execute":1,"runs":1,"on":1,"the":1,"server":1,"only":1},"196":{"text":1,"is":1,"always":1,"produced":1},"197":{"presence":1,"of":1,"view.tsx":1,"attaches":1,"ui":1,"do":1,"not":1,"set":1,"resourceuri":1,"manually":1},"198":{"execute":1,"must":1,"not":1,"return":1,"undefined":1},"199":{"happy":1,"path":1,"fields":1,"description":1,"input":1,"execute":1,"confirm":1,"sets":1,"destructivehint":1,"true":1,"unless":1,"you":1,"override":1,"annotations":1},"200":{"field":1},"201":{"description":1},"202":{"ask":1,"schema":1,"message":1},"203":{"mrtr":1,"continuation":1,"inside":1,"execute":1},"204":{"inputrequired":1,"spec":1},"205":{"raw":1,"mrtr":1,"escape":1,"hatch":1},"206":{"inputresponses":1},"207":{"answers":1,"from":1,"a":1,"prior":1,"ask":1},"208":{"handle":1},"209":{"mint":1,"opaque":1,"handle":1,"id":1},"210":{"user":1},"211":{"authenticated":1,"user":1,"when":1,"oauth":1,"is":1,"enabled":1},"212":{"request":1},"213":{"incoming":1,"http":1,"request":1,"or":1,"stdio":1,"envelope":1},"214":{"when":1,"oauth":1,"is":1,"enabled":1,"and":1,"the":1,"request":1,"authenticated":1},"215":{"confirmresult":1,"shape":1},"216":{"preview":1,"is":1,"included":1,"on":1,"the":1,"mrtr":1,"structuredcontent":1,"so":1,"a":1,"view":1,"can":1,"render":1,"it":1,"text":1,"clients":1,"still":1,"see":1,"message":1},"217":{"views":1},"218":{"hashed":1,"ui":1,"html":1,"tailwind":1,"useapp":1,"and":1,"calltool":1},"219":{"ui":1,"resources":1},"220":{"html":1,"shell":1},"221":{"data":1,"flow":1},"222":{"useapp":1},"223":{"calltool":1},"224":{"styling":1},"225":{"host":1,"theme":1},"226":{"escape":1,"hatches":1},"227":{"build":1,"boundaries":1},"228":{"a":1,"view":1,"is":1,"react":1,"component":1,"compiled":1,"into":1,"predeclared":1,"html":1,"resource":1},"229":{"the":1,"compiler":1,"bundles":1,"view.tsx":1,"with":1,"esbuild":1,"into":1,"one":1,"html":1,"document":1,"mime":1,"type":1,"text":1,"profile":1,"mcp":1,"app":1},"230":{"uri":1,"shape":1,"ui":1,"tools":1,"name":1,"hash":1},"231":{"content":1,"addressed":1,"the":1,"hash":1,"is":1,"compiled":1,"html":1,"scripts":1,"and":1,"css":1,"inlined":1,"not":1,"tsx":1,"source":1},"232":{"cacheable":1,"with":1,"ttlms":1,"and":1,"cachescope":1,"public":1},"233":{"the":1,"compiler":1,"injects":1},"234":{"official":1,"apps":1,"useapp":1,"appinfo":1},"235":{"host":1,"theme":1,"via":1,"usehoststyles":1},"236":{"tailwind":1,"v4":1,"css":1,"for":1,"classes":1,"used":1,"in":1,"that":1,"view":1},"237":{"typed":1,"result":1,"from":1,"the":1,"sibling":1,"tool":1},"238":{"authors":1,"never":1,"pass":1,"appinfo":1,"or":1,"call":1,"usehoststyles":1,"on":1,"the":1,"happy":1,"path":1,"compiler":1,"injects":1,"appshell":1,"in":1,"html":1,"shell":1,"do":1,"not":1,"render":1,"it":1,"view.tsx":1},"239":{"host":1,"calls":1,"the":1,"tool":1},"240":{"structuredcontent":1,"arrives":1,"via":1,"ontoolresult":1},"241":{"host":1,"loads":1,"the":1,"hashed":1,"html":1,"in":1,"a":1,"sandbox":1,"iframe":1},"242":{"view":1,"reads":1,"result":1,"from":1,"useapp":1},"243":{"import":1,"from":1,"bitmcp":1,"react":1},"244":{"file":1,"based":1,"tools":1,"generate":1,"bitmcp":1,"views.d.ts":1,"so":1,"result":1,"is":1,"inferred":1,"from":1,"the":1,"sibling":1,"tool":1,"pass":1,"a":1,"generic":1,"only":1,"when":1,"you":1,"need":1,"to":1,"override":1,"that":1},"245":{"field":1},"246":{"description":1},"247":{"result":1},"248":{"structuredcontent":1,"from":1,"the":1,"host":1,"via":1,"ontoolresult":1,"or":1,"calltool":1},"249":{"calltool":1,"name":1,"args":1},"250":{"calls":1,"a":1,"backing":1,"tool":1,"through":1,"the":1,"host":1,"and":1,"updates":1,"result":1},"251":{"app":1},"252":{"official":1,"apps":1,"client":1,"instance":1},"253":{"isconnected":1},"254":{"connection":1,"state":1},"255":{"error":1},"256":{"connection":1,"error":1,"if":1,"any":1},"257":{"calltool":1,"keeps":1,"a":1,"stable":1,"function":1,"identity":1,"so":1,"poll":1,"intervals":1,"do":1,"not":1,"reset":1,"every":1,"render":1},"258":{"views":1,"never":1,"call":1,"your":1,"server":1,"directly":1,"calltool":1,"goes":1,"through":1,"the":1,"host":1,"which":1,"issues":1,"a":1,"new":1,"stateless":1,"tools":1,"network":1,"from":1,"iframe":1,"is":1,"csp":1,"gated":1,"tool":1,"calls":1,"are":1,"not":1},"259":{"every":1,"view":1,"is":1,"compiled":1,"with":1,"tailwind":1,"v4":1,"use":1,"classname":1,"utilities":1,"you":1,"do":1,"not":1,"add":1,"a":1,"vite":1,"plugin":1,"or":1,"tailwind.config":1,"file":1},"260":{"each":1,"view":1,"is":1,"an":1,"isolated":1,"iframe":1,"the":1,"compiler":1,"scans":1,"that":1,"and":1,"emits":1,"only":1,"utilities":1,"it":1,"uses":1,"css":1,"inlined":1,"in":1,"a":1,"style":1,"tag":1},"261":{"usehoststyles":1,"applies":1,"host":1,"css":1,"variables":1,"bitmcp":1,"maps":1,"a":1,"subset":1,"into":1,"tailwind":1,"theme":1,"so":1,"chat":1,"ui":1,"can":1,"follow":1,"the":1},"262":{"class":1},"263":{"host":1,"variable":1},"264":{"bg":1,"background":1},"265":{"color":1,"background":1,"primary":1},"266":{"text":1,"foreground":1},"267":{"color":1,"text":1,"primary":1},"268":{"text":1,"muted":1},"269":{"color":1,"text":1,"secondary":1},"270":{"border":1},"271":{"color":1,"border":1,"primary":1},"272":{"font":1,"sans":1},"273":{"font":1,"sans":1},"274":{"html":1,"body":1,"and":1,"root":1,"stay":1,"transparent":1,"the":1,"compiler":1,"injects":1,"tailwind":1,"add":1,"src":1,"views.css":1,"only":1,"for":1,"extra":1,"theme":1,"tokens":1,"or":1,"source":1,"paths":1,"intellisense":1,"reads":1,"bitmcp":1},"275":{"re":1,"exported":1,"from":1,"modelcontextprotocol":1,"ext":1,"apps":1,"react":1},"276":{"use":1,"these":1,"only":1,"when":1,"you":1,"need":1,"direct":1,"access":1,"to":1,"the":1,"official":1,"client":1,"happy":1,"path":1,"is":1,"useapp":1},"277":{"do":1,"not":1,"import":1,"tool.ts":1,"from":1,"view.tsx":1},"278":{"do":1,"not":1,"import":1,"node":1,"builtins":1,"or":1,"secrets":1,"in":1,"views":1},"279":{"fetch":1,"in":1,"a":1,"view":1,"requires":1,"sibling":1,"connect":1,"allowlist":1},"280":{"cloudflare":1},"281":{"deploy":1,"bitmcp":1,"on":1,"cloudflare":1,"workers":1,"from":1,"dist":1,"server.js":1},"282":{"scaffold":1,"for":1,"cloudflare":1},"283":{"set":1,"secrets":1,"and":1,"config":1},"284":{"deploy":1},"285":{"bitmcp.config.ts":1},"286":{"see":1,"also":1},"287":{"bitmcp":1,"build":1,"emits":1,"dist":1,"server.js":1,"hashed":1,"view":1,"html":1,"under":1,"ui":1,"and":1,"manifest.json":1,"cloudflare":1,"workers":1,"serve":1,"directly":1},"288":{"that":1,"writes":1,"deploy":1,"cloudflare":1,"and":1,"wrangler.jsonc":1,"with":1,"main":1,"set":1,"to":1,"dist":1,"server.js":1},"289":{"set":1,"bitmcp_state_key":1,"as":1,"a":1,"worker":1,"secret":1,"or":1,"var":1},"290":{"set":1,"http.allowedhosts":1,"in":1,"bitmcp.config.ts":1,"to":1,"your":1,"workers.dev":1,"or":1,"custom":1,"domain":1},"291":{"set":1,"mcp_url":1,"when":1,"oauth":1,"is":1,"enabled":1},"292":{"nodejs_compat":1,"is":1,"required":1,"confirmations":1,"and":1,"ctx.ask":1,"require":1,"bitmcp_state_key":1,"in":1,"production":1},"293":{"wrangler":1,"runs":1,"pnpm":1,"build":1,"and":1,"serves":1,"dist":1,"server.js":1,"directly":1},"294":{"when":1,"oauth":1,"is":1,"enabled":1,"set":1,"mcp_url":1,"to":1,"your":1,"public":1,"mcp":1,"endpoint":1,"see":1,"authentication":1},"295":{"vercel":1,"and":1,"node":1,"custom":1,"deploy":1,"the":1,"same":1,"dist":1,"server.js":1,"artifact":1},"296":{"node":1,"and":1,"custom":1},"297":{"run":1,"bitmcp":1,"on":1,"node":1,"embed":1,"in":1,"an":1,"existing":1,"app":1,"and":1,"operate":1,"stateless":1,"replicas":1},"298":{"node":1},"299":{"embed":1,"in":1,"an":1,"existing":1,"app":1},"300":{"createapp":1,"escape":1,"hatch":1},"301":{"stateless":1,"replicas":1},"302":{"host":1,"and":1,"origin":1,"guards":1},"303":{"see":1,"also":1},"304":{"bitmcp":1,"build":1,"emits":1,"dist":1,"server.js":1,"with":1,"a":1,"web":1,"standard":1,"fetch":1,"handler":1,"plus":1,"get":1,"post":1,"and":1,"options":1,"use":1,"that":1,"file":1,"on":1,"node":1,"or":1,"any":1,"runtime":1},"305":{"bitmcp":1,"start":1,"loads":1,"dist":1,"server.js":1,"and":1,"listens":1,"on":1,"streamable":1,"http":1},"306":{"3000":1,"default":1,"listen":1,"address":1,"http":1,"127.0.0.1":1,"mcp":1},"307":{"override":1,"with":1,"port":1,"or":1,"mcp_port":1,"mcp_host":1,"and":1,"mcp_path":1,"get":1,"health":1,"is":1,"also":1,"served":1},"308":{"set":1,"deploy":1,"node":1,"in":1,"bitmcp.config.ts":1,"this":1,"is":1,"the":1,"default":1},"309":{"set":1,"bitmcp_state_key":1,"in":1,"production":1,"configure":1,"http.allowedhosts":1,"and":1,"http.cors":1,"bitmcp.config.ts":1,"for":1,"public":1,"http":1},"310":{"dist":1,"server.js":1,"already":1,"exports":1,"get":1,"post":1,"options":1,"and":1,"default.fetch":1,"point":1,"a":1,"platform":1,"entry":1,"at":1,"that":1,"file":1,"or":1,"call":1,"app.fetch":1,"yourself":1},"311":{"the":1,"cli":1,"uses":1,"createapp.fromdir":1,"internally":1,"you":1,"rarely":1,"need":1,"this":1,"in":1,"application":1,"code":1,"but":1,"it":1,"is":1,"useful":1,"for":1,"tests":1,"and":1,"custom":1,"servers":1},"312":{"method":1},"313":{"description":1},"314":{"stdio":1},"315":{"start":1,"stdio":1,"transport":1},"316":{"http":1,"options":1},"317":{"start":1,"streamable":1,"http":1,"on":1,"node":1},"318":{"fetch":1,"request":1},"319":{"web":1,"standard":1,"handler":1},"320":{"loads":1,"tools":1,"from":1,"src":1,"using":1,"the":1,"same":1,"discovery":1,"rules":1,"as":1,"compiler":1},"321":{"every":1,"request":1,"builds":1,"a":1,"fresh":1,"mcp":1,"server":1,"there":1,"is":1,"no":1,"session":1,"id":1},"322":{"pass":1,"handles":1,"and":1,"ids":1,"in":1,"tool":1,"arguments":1},"323":{"store":1,"job":1,"state":1,"behind":1,"a":1,"handlestore":1,"kv":1,"redis":1,"d1":1},"324":{"view":1,"html":1,"is":1,"content":1,"addressed":1,"every":1,"replica":1,"serves":1,"the":1,"same":1,"hash":1,"for":1,"build":1},"325":{"localhost":1,"bindings":1,"include":1,"host":1,"and":1,"origin":1,"checks":1,"production":1,"app.fetch":1,"only":1,"enforces":1,"hosts":1,"you":1,"put":1,"in":1,"allowedhosts":1},"326":{"vercel":1,"and":1,"cloudflare":1,"for":1,"platform":1,"specific":1,"scaffold":1,"config":1},"327":{"vercel":1},"328":{"deploy":1,"bitmcp":1,"on":1,"vercel":1,"with":1,"a":1,"single":1,"server":1,"artifact":1},"329":{"scaffold":1,"for":1,"vercel":1},"330":{"set":1,"environment":1,"variables":1},"331":{"deploy":1},"332":{"bitmcp.config.ts":1},"333":{"see":1,"also":1},"334":{"bitmcp":1,"build":1,"emits":1,"dist":1,"server.js":1,"hashed":1,"view":1,"html":1,"under":1,"ui":1,"and":1,"manifest.json":1,"the":1,"same":1,"server":1,"file":1,"runs":1,"on":1,"every":1,"platform":1},"335":{"that":1,"writes":1,"deploy":1,"vercel":1,"and":1,"vercel.json":1,"with":1,"a":1,"rewrite":1,"from":1,"mcp":1,"to":1,"api":1},"336":{"in":1,"the":1,"vercel":1,"project":1},"337":{"set":1,"bitmcp_state_key":1},"338":{"set":1,"http.allowedhosts":1,"in":1,"bitmcp.config.ts":1,"to":1,"your":1,"deployment":1,"host":1},"339":{"set":1,"mcp_url":1,"when":1,"oauth":1,"is":1,"enabled":1},"340":{"confirmations":1,"and":1,"ctx.ask":1,"mint":1,"requeststate":1,"tokens":1,"that":1,"must":1,"verify":1,"on":1,"any":1,"replica":1,"bitmcp_state_key":1,"is":1,"required":1,"in":1,"production":1},"341":{"bitmcp":1,"build":1,"writes":1,"gitignored":1,"api":1,"mcp.js":1,"that":1,"re":1,"exports":1,"dist":1,"server.js":1,"vercel":1,"runs":1,"pnpm":1,"first":1},"342":{"when":1,"oauth":1,"is":1,"enabled":1,"set":1,"mcp_url":1,"to":1,"your":1,"public":1,"mcp":1,"endpoint":1,"for":1,"example":1,"https":1,"app.vercel.app":1,"see":1,"supabase":1,"or":1,"other":1,"auth":1,"guides":1},"343":{"cloudflare":1,"and":1,"node":1,"custom":1,"deploy":1,"the":1,"same":1,"dist":1,"server.js":1,"artifact":1},"344":{"server":1,"card":1},"345":{"publish":1,"mcp":1,"server":1,"metadata":1,"at":1,"card":1,"for":1,"client":1,"discovery":1},"346":{"endpoints":1},"347":{"default":1,"card":1},"348":{"configure":1},"349":{"remote":1,"url":1,"resolution":1},"350":{"vercel":1,"rewrite":1},"351":{"next":1,"step":1},"352":{"mcp":1,"server":1,"cards":1,"let":1,"clients":1,"discover":1,"your":1,"name":1,"description":1,"and":1,"streamable":1,"http":1,"endpoint":1,"before":1,"connecting":1,"bitmcp":1,"serves":1,"a":1,"spec":1,"shaped":1,"json":1,"document":1,"automatically":1},"353":{"for":1,"an":1,"mcp":1,"path":1,"of":1,"bitmcp":1,"serves":1},"354":{"url":1},"355":{"purpose":1},"356":{"get":1,"mcp":1,"server":1,"card":1},"357":{"primary":1,"server":1,"card":1,"endpoint":1},"358":{"get":1,"well":1,"known":1,"mcp":1,"server":1,"card.json":1},"359":{"well":1,"known":1,"alias":1},"360":{"responses":1,"use":1,"content":1,"type":1,"application":1,"mcp":1,"server":1,"card":1,"json":1,"public":1,"caching":1,"with":1,"etag":1,"support":1,"and":1,"cors":1,"headers":1,"for":1,"browser":1,"discovery":1},"361":{"when":1,"servercard":1,"is":1,"not":1,"disabled":1,"bitmcp":1,"builds":1,"a":1,"card":1,"from":1,"your":1,"app":1,"config":1,"and":1,"package":1,"metadata":1},"362":{"the":1,"default":1,"name":1,"comes":1,"from":1,"your":1,"npm":1,"package":1,"scoped":1,"packages":1,"map":1,"to":1,"scope.package":1,"mcp":1},"363":{"field":1},"364":{"description":1},"365":{"enabled":1},"366":{"set":1,"false":1,"to":1,"disable":1,"card":1,"generation":1,"while":1,"keeping":1,"other":1,"config":1},"367":{"name":1},"368":{"override":1,"default":1,"card":1,"name":1},"369":{"title":1},"370":{"display":1,"title":1,"defaults":1,"to":1,"app":1,"name":1},"371":{"description":1},"372":{"card":1,"description":1},"373":{"websiteurl":1},"374":{"public":1,"site":1,"url":1},"375":{"repository":1},"376":{"source":1,"repository":1,"metadata":1},"377":{"icons":1},"378":{"icon":1,"urls":1,"with":1,"optional":1,"mimetype":1,"sizes":1,"and":1,"theme":1},"379":{"disable":1,"entirely":1,"with":1,"servercard":1,"false":1},"380":{"0":1,"the":1,"remotes":1,"url":1,"field":1,"reflects":1,"where":1,"clients":1,"should":1,"connect":1},"381":{"in":1,"production":1,"set":1,"mcp_url":1,"to":1,"your":1,"public":1,"mcp":1,"endpoint":1,"for":1,"example":1,"https":1,"mcp.example.com":1},"382":{"locally":1,"bitmcp":1,"resolves":1,"the":1,"request":1,"origin":1,"and":1,"mcp":1,"path":1,"automatically":1},"383":{"when":1,"oauth":1,"is":1,"enabled":1,"the":1,"remote":1,"url":1,"must":1,"match":1,"your":1,"configured":1,"resource":1},"384":{"set":1,"mcp_url":1,"in":1,"production":1,"so":1,"the":1,"server":1,"card":1,"advertises":1,"correct":1,"public":1,"endpoint":1,"across":1,"replicas":1},"385":{"projects":1,"scaffolded":1,"with":1,"deploy":1,"vercel":1,"include":1,"a":1,"rewrite":1,"from":1,"mcp":1,"server":1,"card":1,"to":1,"the":1,"handler":1,"so":1,"is":1,"served":1,"same":1,"deployment":1},"386":{"pair":1,"server":1,"cards":1,"with":1,"authentication":1,"so":1,"discovery":1,"metadata":1,"and":1,"oauth":1,"protected":1,"resource":1,"stay":1,"aligned":1,"on":1,"the":1,"same":1,"public":1,"url":1},"387":{"connecting":1,"to":1,"your":1,"server":1},"388":{"http":1,"preview":1,"by":1,"default":1,"stdio":1,"for":1,"desktop":1,"hosts":1,"and":1,"mcp":1,"client":1,"setup":1},"389":{"transports":1},"390":{"preview":1,"host":1},"391":{"stdio":1,"clients":1},"392":{"http":1,"clients":1},"393":{"host":1,"compatibility":1},"394":{"environment":1,"variables":1},"395":{"next":1,"step":1},"396":{"bitmcp":1,"serves":1,"streamable":1,"http":1,"by":1,"default":1,"use":1,"stdio":1,"when":1,"a":1,"desktop":1,"host":1,"spawns":1,"the":1,"server":1,"as":1,"child":1,"process":1},"397":{"mode":1},"398":{"command":1},"399":{"use":1,"case":1},"400":{"http":1},"401":{"pnpm":1,"dev":1},"402":{"3000":1,"local":1,"apps":1,"preview":1,"at":1,"http":1,"127.0.0.1":1},"403":{"stdio":1},"404":{"bitmcp":1,"dev":1,"stdio":1},"405":{"claude":1,"desktop":1,"vs":1,"code":1,"cursor":1},"406":{"http":1},"407":{"pnpm":1,"start":1},"408":{"production":1,"bitmcp":1,"start":1,"always":1,"uses":1,"http":1},"409":{"3000":1,"default":1,"listen":1,"address":1,"http":1,"127.0.0.1":1,"mcp":1,"get":1,"health":1,"returns":1,"ok":1,"true":1},"410":{"override":1,"with":1,"port":1,"or":1,"mcp_port":1,"mcp_host":1,"and":1,"mcp_path":1,"the":1,"path":1,"match":1,"is":1,"exact":1,"foo":1,"mcp":1,"does":1,"not":1,"satisfy":1},"411":{"pnpm":1,"dev":1,"starts":1,"a":1,"local":1,"apps":1,"host":1,"it":1,"renders":1,"your":1,"view":1,"in":1,"sandbox":1,"iframe":1,"injects":1,"tool":1,"results":1,"and":1,"reloads":1,"the":1,"when":1,"hash":1,"changes":1},"412":{"point":1,"your":1,"mcp":1,"client":1,"at":1,"stdio":1},"413":{"connect":1,"to":1,"the":1,"streamable":1,"http":1,"endpoint":1,"your":1,"server":1,"exposes":1,"host":1,"and":1,"origin":1,"guards":1,"apply":1,"on":1,"localhost":1,"production":1,"app.fetch":1,"only":1,"enforces":1,"hosts":1,"you":1,"put":1,"in":1,"allowedhosts":1},"414":{"mcp":1,"hosts":1,"differ":1,"in":1,"what":1,"they":1,"can":1,"render":1,"bitmcp":1,"emits":1,"official":1,"apps":1,"keys":1,"_meta.ui.resourceuri":1,"and":1,"hashed":1,"text":1,"html":1,"profile":1,"app":1,"resources":1},"415":{"ui":1,"capable":1,"hosts":1,"advertise":1,"the":1,"extension":1,"io.modelcontextprotocol":1,"and":1,"mime":1,"type":1,"text":1,"html":1,"profile":1,"mcp":1,"app":1,"cursor":1,"claude":1,"vs":1,"code":1,"chatgpt":1,"load":1,"your":1,"hashed":1,"in":1,"a":1,"sandbox":1,"iframe":1,"when":1,"supported":1},"416":{"when":1,"the":1,"client":1,"cannot":1,"render":1,"apps":1,"bitmcp":1,"strips":1,"ui":1,"metadata":1,"for":1,"that":1,"request":1,"you":1,"still":1,"get":1,"tool":1,"text":1,"content":1,"and":1,"mrtr":1,"confirmations":1,"degradation":1,"order":1,"view":1},"417":{"app":1,"only":1,"defineaction":1,"tools":1,"stay":1,"hidden":1,"from":1,"model":1,"lists":1,"on":1,"text":1,"clients":1},"418":{"variable":1},"419":{"description":1},"420":{"mcp_transport":1},"421":{"stdio":1,"or":1,"http":1},"422":{"mcp_port":1},"423":{"listen":1,"port":1,"for":1,"http":1},"424":{"mcp_host":1},"425":{"bind":1,"address":1},"426":{"mcp_path":1},"427":{"http":1,"path":1,"default":1,"mcp":1},"428":{"bitmcp_root":1},"429":{"project":1,"root":1,"when":1,"cwd":1,"differs":1},"430":{"bitmcp_state_key":1},"431":{"required":1,"in":1,"production":1,"http":1,"for":1,"mrtr":1,"requeststate":1},"432":{"read":1,"project":1,"structure":1,"to":1,"learn":1,"how":1,"tool":1,"folders":1,"compile":1,"or":1,"deployment":1,"ship":1,"streamable":1,"http":1},"433":{"installation":1},"434":{"create":1,"a":1,"bitmcp":1,"app":1,"with":1,"and":1,"run":1,"the":1,"dev":1,"server":1},"435":{"scripts":1},"436":{"cli":1},"437":{"bitmcp.config.ts":1},"438":{"environment":1,"variables":1},"439":{"next":1,"step":1},"440":{"create":1,"a":1,"new":1,"project":1,"install":1,"dependencies":1,"and":1,"start":1,"the":1,"dev":1,"server":1},"441":{"the":1,"scaffold":1,"includes":1},"442":{"script":1},"443":{"command":1},"444":{"purpose":1},"445":{"dev":1},"446":{"pnpm":1,"dev":1},"447":{"http":1,"plus":1,"local":1,"apps":1,"preview":1,"rebuilds":1,"views":1,"with":1,"esbuild":1},"448":{"build":1},"449":{"pnpm":1,"build":1},"450":{"build":1,"server":1,"bundle":1,"and":1,"hashed":1,"views":1},"451":{"start":1},"452":{"pnpm":1,"start":1},"453":{"production":1,"streamable":1,"http":1},"454":{"use":1,"bitmcp":1,"dev":1,"stdio":1,"when":1,"a":1,"desktop":1,"host":1,"should":1,"spawn":1,"the":1,"server":1,"on":1},"455":{"command":1},"456":{"description":1},"457":{"bitmcp":1,"create":1},"458":{"scaffold":1,"a":1,"new":1,"project":1,"from":1,"the":1,"built":1,"in":1,"template":1},"459":{"bitmcp":1,"dev":1},"460":{"esbuild":1,"watch":1,"for":1,"views":1,"http":1,"and":1,"a":1,"local":1,"apps":1,"preview":1},"461":{"bitmcp":1,"start":1},"462":{"production":1,"streamable":1,"http":1,"from":1,"dist":1,"server.js":1},"463":{"bitmcp":1,"build":1},"464":{"hashed":1,"inlined":1,"view":1,"html":1,"plus":1,"dist":1,"server.js":1},"465":{"flag":1},"466":{"applies":1,"to":1},"467":{"description":1},"468":{"deploy":1},"469":{"create":1},"470":{"node":1,"vercel":1,"or":1,"cloudflare":1},"471":{"stdio":1},"472":{"dev":1},"473":{"use":1,"stdio":1,"instead":1,"of":1,"http":1,"plus":1,"preview":1},"474":{"port":1,"n":1},"475":{"dev":1,"start":1},"476":{"listen":1,"port":1},"477":{"optional":1,"fields":1,"include":1,"deploy":1,"node":1,"vercel":1,"cloudflare":1,"cachettlms":1,"http.cors":1,"http.allowedhosts":1,"and":1,"http.path":1,"name":1,"version":1,"can":1,"also":1,"come":1,"from":1,"package.json":1,"when":1,"omitted":1},"478":{"pass":1,"deploy":1,"vercel":1,"or":1,"cloudflare":1,"to":1,"bitmcp":1,"create":1,"write":1,"the":1,"matching":1,"platform":1,"config":1,"see":1},"479":{"set":1,"bitmcp_state_key":1,"in":1,"production":1,"http":1,"confirmations":1,"and":1,"ctx.ask":1,"mint":1,"requeststate":1,"tokens":1,"that":1,"must":1,"verify":1,"on":1,"any":1,"replica":1},"480":{"variable":1},"481":{"description":1},"482":{"bitmcp_root":1},"483":{"project":1,"root":1,"for":1,"cli":1,"runtime":1},"484":{"bitmcp_state_key":1},"485":{"shared":1,"hmac":1,"key":1,"for":1,"mrtr":1,"requeststate":1},"486":{"mcp_transport":1},"487":{"stdio":1,"or":1,"http":1},"488":{"mcp_port":1},"489":{"http":1,"listen":1,"port":1},"490":{"mcp_host":1},"491":{"http":1,"bind":1,"host":1},"492":{"mcp_path":1},"493":{"http":1,"path":1,"default":1,"mcp":1},"494":{"mcp_url":1},"495":{"public":1,"mcp":1,"url":1,"when":1,"oauth":1,"is":1,"enabled":1,"in":1,"production":1},"496":{"node_env":1},"497":{"production":1,"requires":1,"a":1,"state":1,"key":1,"unless":1,"overridden":1},"498":{"read":1,"connecting":1,"to":1,"your":1,"server":1,"attach":1,"a":1,"host":1,"or":1,"project":1,"structure":1,"learn":1,"how":1,"tools":1,"are":1,"discovered":1},"499":{"project":1,"structure":1},"500":{"file":1,"based":1,"tool":1,"folders":1,"discovery":1,"rules":1,"and":1,"compiler":1,"boundaries":1},"501":{"naming":1},"502":{"compiler":1,"boundaries":1},"503":{"what":1,"the":1,"compiler":1,"emits":1},"504":{"config":1,"files":1},"505":{"next":1,"step":1},"506":{"each":1,"tool":1,"lives":1,"under":1,"src":1,"tools":1,"name":1,"the":1,"compiler":1,"discovers":1,"folders":1,"that":1,"contain":1,"tool.ts":1,"tool.tsx":1,"or":1,"index.ts":1},"507":{"the":1,"tool":1,"name":1,"defaults":1,"to":1,"folder":1,"hello":1,"forecast":1,"delete_rows":1,"actions":1,"in":1,"actions.ts":1,"are":1,"namespaced":1,"as":1,"export":1,"forecast.refresh":1,"hello.shout":1},"508":{"these":1,"imports":1,"fail":1,"the":1,"build":1},"509":{"tool.ts":1,"importing":1,"view.tsx":1,"or":1,"bitmcp":1,"react":1},"510":{"view.tsx":1,"importing":1,"tool.ts":1,"node":1,"builtins":1,"or":1,"server":1,"modules":1},"511":{"the":1,"server":1,"graph":1,"must":1,"not":1,"leak":1,"into":1,"iframe":1,"bundle":1},"512":{"author":1,"file":1},"513":{"output":1},"514":{"tool.ts":1},"515":{"model":1,"visible":1,"mcp":1,"tool":1},"516":{"view.tsx":1},"517":{"hashed":1,"ui":1,"tools":1,"name":1,"hash":1,"html":1,"shell":1},"518":{"actions.ts":1},"519":{"app":1,"only":1,"tools":1,"with":1,"visibility":1},"520":{"authors":1,"do":1,"not":1,"set":1,"resourceuri":1,"structuredcontent":1,"csp":1,"or":1,"appinfo":1,"by":1,"hand":1,"on":1,"the":1,"happy":1,"path":1,"bitmcp":1,"holds":1,"generated":1,"view":1,"types":1,"and":1,"tailwind":1,"intellisense":1,"entry":1},"521":{"file":1},"522":{"purpose":1},"523":{"bitmcp.config.ts":1},"524":{"server":1,"name":1,"version":1,"deploy":1,"cache":1,"ttl":1,"auth":1},"525":{"package.json":1},"526":{"scripts":1,"that":1,"call":1,"the":1,"bitmcp":1,"cli":1},"527":{"src":1,"views.css":1},"528":{"optional":1,"extra":1,"theme":1,"tokens":1,"or":1,"source":1,"paths":1},"529":{"vercel.json":1},"530":{"written":1,"by":1,"deploy":1,"vercel":1},"531":{"wrangler.jsonc":1},"532":{"written":1,"by":1,"deploy":1,"cloudflare":1},"533":{"read":1,"tools":1,"to":1,"define":1,"your":1,"first":1,"tool":1,"handler":1}},"page_id":{"1":{"docs":1,"authentication":1,"api":1,"key":1},"2":{"docs":1,"authentication":1,"api":1,"key":1},"3":{"docs":1,"authentication":1,"api":1,"key":1},"4":{"docs":1,"authentication":1,"api":1,"key":1},"5":{"docs":1,"authentication":1,"api":1,"key":1},"6":{"docs":1,"authentication":1,"api":1,"key":1},"7":{"docs":1,"authentication":1,"api":1,"key":1},"8":{"docs":1,"authentication":1,"api":1,"key":1},"9":{"docs":1,"authentication":1,"api":1,"key":1},"10":{"docs":1,"authentication":1,"api":1,"key":1},"11":{"docs":1,"authentication":1,"api":1,"key":1},"12":{"docs":1,"authentication":1,"api":1,"key":1},"13":{"docs":1,"authentication":1,"api":1,"key":1},"14":{"docs":1,"authentication":1,"api":1,"key":1},"15":{"docs":1,"authentication":1,"api":1,"key":1},"16":{"docs":1,"authentication":1,"api":1,"key":1},"17":{"docs":1,"authentication":1,"api":1,"key":1},"18":{"docs":1,"authentication":1,"api":1,"key":1},"19":{"docs":1,"authentication":1,"auth0":1},"20":{"docs":1,"authentication":1,"auth0":1},"21":{"docs":1,"authentication":1,"auth0":1},"22":{"docs":1,"authentication":1,"auth0":1},"23":{"docs":1,"authentication":1,"auth0":1},"24":{"docs":1,"authentication":1,"auth0":1},"25":{"docs":1,"authentication":1,"auth0":1},"26":{"docs":1,"authentication":1,"auth0":1},"27":{"docs":1,"authentication":1,"auth0":1},"28":{"docs":1,"authentication":1,"auth0":1},"29":{"docs":1,"authentication":1,"auth0":1},"30":{"docs":1,"authentication":1,"auth0":1},"31":{"docs":1,"authentication":1,"auth0":1},"32":{"docs":1,"authentication":1,"auth0":1},"33":{"docs":1,"authentication":1,"auth0":1},"34":{"docs":1,"authentication":1,"auth0":1},"35":{"docs":1,"authentication":1,"auth0":1},"36":{"docs":1,"authentication":1,"auth0":1},"37":{"docs":1,"authentication":1,"auth0":1},"38":{"docs":1,"authentication":1,"auth0":1},"39":{"docs":1,"authentication":1,"auth0":1},"40":{"docs":1,"authentication":1,"auth0":1},"41":{"docs":1,"authentication":1,"auth0":1},"42":{"docs":1,"authentication":1,"auth0":1},"43":{"docs":1,"authentication":1,"auth0":1},"44":{"docs":1,"authentication":1,"auth0":1},"45":{"docs":1,"authentication":1,"auth0":1},"46":{"docs":1,"authentication":1,"auth0":1},"47":{"docs":1,"authentication":1,"auth0":1},"48":{"docs":1,"authentication":1,"auth0":1},"49":{"docs":1,"authentication":1,"auth0":1},"50":{"docs":1,"authentication":1,"better":1,"auth":1},"51":{"docs":1,"authentication":1,"better":1,"auth":1},"52":{"docs":1,"authentication":1,"better":1,"auth":1},"53":{"docs":1,"authentication":1,"better":1,"auth":1},"54":{"docs":1,"authentication":1,"better":1,"auth":1},"55":{"docs":1,"authentication":1,"better":1,"auth":1},"56":{"docs":1,"authentication":1,"better":1,"auth":1},"57":{"docs":1,"authentication":1,"better":1,"auth":1},"58":{"docs":1,"authentication":1,"better":1,"auth":1},"59":{"docs":1,"authentication":1,"better":1,"auth":1},"60":{"docs":1,"authentication":1,"better":1,"auth":1},"61":{"docs":1,"authentication":1,"better":1,"auth":1},"62":{"docs":1,"authentication":1,"better":1,"auth":1},"63":{"docs":1,"authentication":1,"better":1,"auth":1},"64":{"docs":1,"authentication":1,"better":1,"auth":1},"65":{"docs":1,"authentication":1,"better":1,"auth":1},"66":{"docs":1,"authentication":1,"better":1,"auth":1},"67":{"docs":1,"authentication":1,"better":1,"auth":1},"68":{"docs":1,"authentication":1,"better":1,"auth":1},"69":{"docs":1,"authentication":1,"better":1,"auth":1},"70":{"docs":1,"authentication":1,"better":1,"auth":1},"71":{"docs":1,"authentication":1,"better":1,"auth":1},"72":{"docs":1,"authentication":1,"better":1,"auth":1},"73":{"docs":1,"authentication":1,"better":1,"auth":1},"74":{"docs":1,"authentication":1,"better":1,"auth":1},"75":{"docs":1,"authentication":1,"better":1,"auth":1},"76":{"docs":1,"authentication":1,"custom":1},"77":{"docs":1,"authentication":1,"custom":1},"78":{"docs":1,"authentication":1,"custom":1},"79":{"docs":1,"authentication":1,"custom":1},"80":{"docs":1,"authentication":1,"custom":1},"81":{"docs":1,"authentication":1,"custom":1},"82":{"docs":1,"authentication":1,"custom":1},"83":{"docs":1,"authentication":1,"custom":1},"84":{"docs":1,"authentication":1,"custom":1},"85":{"docs":1,"authentication":1,"custom":1},"86":{"docs":1,"authentication":1,"custom":1},"87":{"docs":1,"authentication":1,"custom":1},"88":{"docs":1,"authentication":1,"custom":1},"89":{"docs":1,"authentication":1,"custom":1},"90":{"docs":1,"authentication":1,"custom":1},"91":{"docs":1,"authentication":1,"custom":1},"92":{"docs":1,"authentication":1,"custom":1},"93":{"docs":1,"authentication":1,"custom":1},"94":{"docs":1,"authentication":1,"supabase":1},"95":{"docs":1,"authentication":1,"supabase":1},"96":{"docs":1,"authentication":1,"supabase":1},"97":{"docs":1,"authentication":1,"supabase":1},"98":{"docs":1,"authentication":1,"supabase":1},"99":{"docs":1,"authentication":1,"supabase":1},"100":{"docs":1,"authentication":1,"supabase":1},"101":{"docs":1,"authentication":1,"supabase":1},"102":{"docs":1,"authentication":1,"supabase":1},"103":{"docs":1,"authentication":1,"supabase":1},"104":{"docs":1,"authentication":1,"supabase":1},"105":{"docs":1,"authentication":1,"supabase":1},"106":{"docs":1,"authentication":1,"supabase":1},"107":{"docs":1,"authentication":1,"supabase":1},"108":{"docs":1,"authentication":1,"supabase":1},"109":{"docs":1,"authentication":1,"supabase":1},"110":{"docs":1,"authentication":1,"supabase":1},"111":{"docs":1,"authentication":1,"supabase":1},"112":{"docs":1,"authentication":1,"supabase":1},"113":{"docs":1,"authentication":1,"supabase":1},"114":{"docs":1,"authentication":1,"supabase":1},"115":{"docs":1,"authentication":1,"supabase":1},"116":{"docs":1,"authentication":1,"supabase":1},"117":{"docs":1,"authentication":1,"supabase":1},"118":{"docs":1,"authentication":1,"supabase":1},"119":{"docs":1,"authentication":1,"supabase":1},"120":{"docs":1,"authentication":1,"supabase":1},"121":{"docs":1,"authentication":1,"supabase":1},"122":{"docs":1,"authentication":1,"supabase":1},"123":{"docs":1,"authentication":1,"supabase":1},"124":{"docs":1,"authentication":1,"supabase":1},"125":{"docs":1,"authentication":1,"supabase":1},"126":{"docs":1,"authentication":1,"supabase":1},"127":{"docs":1,"authentication":1,"supabase":1},"128":{"docs":1,"core":1,"concepts":1,"actions":1},"129":{"docs":1,"core":1,"concepts":1,"actions":1},"130":{"docs":1,"core":1,"concepts":1,"actions":1},"131":{"docs":1,"core":1,"concepts":1,"actions":1},"132":{"docs":1,"core":1,"concepts":1,"actions":1},"133":{"docs":1,"core":1,"concepts":1,"actions":1},"134":{"docs":1,"core":1,"concepts":1,"actions":1},"135":{"docs":1,"core":1,"concepts":1,"actions":1},"136":{"docs":1,"core":1,"concepts":1,"actions":1},"137":{"docs":1,"core":1,"concepts":1,"actions":1},"138":{"docs":1,"core":1,"concepts":1,"actions":1},"139":{"docs":1,"core":1,"concepts":1,"actions":1},"140":{"docs":1,"core":1,"concepts":1,"confirmations":1},"141":{"docs":1,"core":1,"concepts":1,"confirmations":1},"142":{"docs":1,"core":1,"concepts":1,"confirmations":1},"143":{"docs":1,"core":1,"concepts":1,"confirmations":1},"144":{"docs":1,"core":1,"concepts":1,"confirmations":1},"145":{"docs":1,"core":1,"concepts":1,"confirmations":1},"146":{"docs":1,"core":1,"concepts":1,"confirmations":1},"147":{"docs":1,"core":1,"concepts":1,"confirmations":1},"148":{"docs":1,"core":1,"concepts":1,"confirmations":1},"149":{"docs":1,"core":1,"concepts":1,"confirmations":1},"150":{"docs":1,"core":1,"concepts":1,"confirmations":1},"151":{"docs":1,"core":1,"concepts":1,"confirmations":1},"152":{"docs":1,"core":1,"concepts":1,"confirmations":1},"153":{"docs":1,"core":1,"concepts":1,"confirmations":1},"154":{"docs":1,"core":1,"concepts":1,"confirmations":1},"155":{"docs":1,"core":1,"concepts":1,"confirmations":1},"156":{"docs":1,"core":1,"concepts":1,"confirmations":1},"157":{"docs":1,"core":1,"concepts":1,"handles":1},"158":{"docs":1,"core":1,"concepts":1,"handles":1},"159":{"docs":1,"core":1,"concepts":1,"handles":1},"160":{"docs":1,"core":1,"concepts":1,"handles":1},"161":{"docs":1,"core":1,"concepts":1,"handles":1},"162":{"docs":1,"core":1,"concepts":1,"handles":1},"163":{"docs":1,"core":1,"concepts":1,"handles":1},"164":{"docs":1,"core":1,"concepts":1,"handles":1},"165":{"docs":1,"core":1,"concepts":1,"handles":1},"166":{"docs":1,"core":1,"concepts":1,"handles":1},"167":{"docs":1,"core":1,"concepts":1,"handles":1},"168":{"docs":1,"core":1,"concepts":1,"handles":1},"169":{"docs":1,"core":1,"concepts":1,"handles":1},"170":{"docs":1,"core":1,"concepts":1,"handles":1},"171":{"docs":1,"core":1,"concepts":1,"handles":1},"172":{"docs":1,"core":1,"concepts":1,"handles":1},"173":{"docs":1,"core":1,"concepts":1,"handles":1},"174":{"docs":1,"core":1,"concepts":1,"handles":1},"175":{"docs":1,"core":1,"concepts":1,"handles":1},"176":{"docs":1,"core":1,"concepts":1,"tools":1},"177":{"docs":1,"core":1,"concepts":1,"tools":1},"178":{"docs":1,"core":1,"concepts":1,"tools":1},"179":{"docs":1,"core":1,"concepts":1,"tools":1},"180":{"docs":1,"core":1,"concepts":1,"tools":1},"181":{"docs":1,"core":1,"concepts":1,"tools":1},"182":{"docs":1,"core":1,"concepts":1,"tools":1},"183":{"docs":1,"core":1,"concepts":1,"tools":1},"184":{"docs":1,"core":1,"concepts":1,"tools":1},"185":{"docs":1,"core":1,"concepts":1,"tools":1},"186":{"docs":1,"core":1,"concepts":1,"tools":1},"187":{"docs":1,"core":1,"concepts":1,"tools":1},"188":{"docs":1,"core":1,"concepts":1,"tools":1},"189":{"docs":1,"core":1,"concepts":1,"tools":1},"190":{"docs":1,"core":1,"concepts":1,"tools":1},"191":{"docs":1,"core":1,"concepts":1,"tools":1},"192":{"docs":1,"core":1,"concepts":1,"tools":1},"193":{"docs":1,"core":1,"concepts":1,"tools":1},"194":{"docs":1,"core":1,"concepts":1,"tools":1},"195":{"docs":1,"core":1,"concepts":1,"tools":1},"196":{"docs":1,"core":1,"concepts":1,"tools":1},"197":{"docs":1,"core":1,"concepts":1,"tools":1},"198":{"docs":1,"core":1,"concepts":1,"tools":1},"199":{"docs":1,"core":1,"concepts":1,"tools":1},"200":{"docs":1,"core":1,"concepts":1,"tools":1},"201":{"docs":1,"core":1,"concepts":1,"tools":1},"202":{"docs":1,"core":1,"concepts":1,"tools":1},"203":{"docs":1,"core":1,"concepts":1,"tools":1},"204":{"docs":1,"core":1,"concepts":1,"tools":1},"205":{"docs":1,"core":1,"concepts":1,"tools":1},"206":{"docs":1,"core":1,"concepts":1,"tools":1},"207":{"docs":1,"core":1,"concepts":1,"tools":1},"208":{"docs":1,"core":1,"concepts":1,"tools":1},"209":{"docs":1,"core":1,"concepts":1,"tools":1},"210":{"docs":1,"core":1,"concepts":1,"tools":1},"211":{"docs":1,"core":1,"concepts":1,"tools":1},"212":{"docs":1,"core":1,"concepts":1,"tools":1},"213":{"docs":1,"core":1,"concepts":1,"tools":1},"214":{"docs":1,"core":1,"concepts":1,"tools":1},"215":{"docs":1,"core":1,"concepts":1,"tools":1},"216":{"docs":1,"core":1,"concepts":1,"tools":1},"217":{"docs":1,"core":1,"concepts":1,"views":1},"218":{"docs":1,"core":1,"concepts":1,"views":1},"219":{"docs":1,"core":1,"concepts":1,"views":1},"220":{"docs":1,"core":1,"concepts":1,"views":1},"221":{"docs":1,"core":1,"concepts":1,"views":1},"222":{"docs":1,"core":1,"concepts":1,"views":1},"223":{"docs":1,"core":1,"concepts":1,"views":1},"224":{"docs":1,"core":1,"concepts":1,"views":1},"225":{"docs":1,"core":1,"concepts":1,"views":1},"226":{"docs":1,"core":1,"concepts":1,"views":1},"227":{"docs":1,"core":1,"concepts":1,"views":1},"228":{"docs":1,"core":1,"concepts":1,"views":1},"229":{"docs":1,"core":1,"concepts":1,"views":1},"230":{"docs":1,"core":1,"concepts":1,"views":1},"231":{"docs":1,"core":1,"concepts":1,"views":1},"232":{"docs":1,"core":1,"concepts":1,"views":1},"233":{"docs":1,"core":1,"concepts":1,"views":1},"234":{"docs":1,"core":1,"concepts":1,"views":1},"235":{"docs":1,"core":1,"concepts":1,"views":1},"236":{"docs":1,"core":1,"concepts":1,"views":1},"237":{"docs":1,"core":1,"concepts":1,"views":1},"238":{"docs":1,"core":1,"concepts":1,"views":1},"239":{"docs":1,"core":1,"concepts":1,"views":1},"240":{"docs":1,"core":1,"concepts":1,"views":1},"241":{"docs":1,"core":1,"concepts":1,"views":1},"242":{"docs":1,"core":1,"concepts":1,"views":1},"243":{"docs":1,"core":1,"concepts":1,"views":1},"244":{"docs":1,"core":1,"concepts":1,"views":1},"245":{"docs":1,"core":1,"concepts":1,"views":1},"246":{"docs":1,"core":1,"concepts":1,"views":1},"247":{"docs":1,"core":1,"concepts":1,"views":1},"248":{"docs":1,"core":1,"concepts":1,"views":1},"249":{"docs":1,"core":1,"concepts":1,"views":1},"250":{"docs":1,"core":1,"concepts":1,"views":1},"251":{"docs":1,"core":1,"concepts":1,"views":1},"252":{"docs":1,"core":1,"concepts":1,"views":1},"253":{"docs":1,"core":1,"concepts":1,"views":1},"254":{"docs":1,"core":1,"concepts":1,"views":1},"255":{"docs":1,"core":1,"concepts":1,"views":1},"256":{"docs":1,"core":1,"concepts":1,"views":1},"257":{"docs":1,"core":1,"concepts":1,"views":1},"258":{"docs":1,"core":1,"concepts":1,"views":1},"259":{"docs":1,"core":1,"concepts":1,"views":1},"260":{"docs":1,"core":1,"concepts":1,"views":1},"261":{"docs":1,"core":1,"concepts":1,"views":1},"262":{"docs":1,"core":1,"concepts":1,"views":1},"263":{"docs":1,"core":1,"concepts":1,"views":1},"264":{"docs":1,"core":1,"concepts":1,"views":1},"265":{"docs":1,"core":1,"concepts":1,"views":1},"266":{"docs":1,"core":1,"concepts":1,"views":1},"267":{"docs":1,"core":1,"concepts":1,"views":1},"268":{"docs":1,"core":1,"concepts":1,"views":1},"269":{"docs":1,"core":1,"concepts":1,"views":1},"270":{"docs":1,"core":1,"concepts":1,"views":1},"271":{"docs":1,"core":1,"concepts":1,"views":1},"272":{"docs":1,"core":1,"concepts":1,"views":1},"273":{"docs":1,"core":1,"concepts":1,"views":1},"274":{"docs":1,"core":1,"concepts":1,"views":1},"275":{"docs":1,"core":1,"concepts":1,"views":1},"276":{"docs":1,"core":1,"concepts":1,"views":1},"277":{"docs":1,"core":1,"concepts":1,"views":1},"278":{"docs":1,"core":1,"concepts":1,"views":1},"279":{"docs":1,"core":1,"concepts":1,"views":1},"280":{"docs":1,"deployment":1,"cloudflare":1},"281":{"docs":1,"deployment":1,"cloudflare":1},"282":{"docs":1,"deployment":1,"cloudflare":1},"283":{"docs":1,"deployment":1,"cloudflare":1},"284":{"docs":1,"deployment":1,"cloudflare":1},"285":{"docs":1,"deployment":1,"cloudflare":1},"286":{"docs":1,"deployment":1,"cloudflare":1},"287":{"docs":1,"deployment":1,"cloudflare":1},"288":{"docs":1,"deployment":1,"cloudflare":1},"289":{"docs":1,"deployment":1,"cloudflare":1},"290":{"docs":1,"deployment":1,"cloudflare":1},"291":{"docs":1,"deployment":1,"cloudflare":1},"292":{"docs":1,"deployment":1,"cloudflare":1},"293":{"docs":1,"deployment":1,"cloudflare":1},"294":{"docs":1,"deployment":1,"cloudflare":1},"295":{"docs":1,"deployment":1,"cloudflare":1},"296":{"docs":1,"deployment":1,"node":1},"297":{"docs":1,"deployment":1,"node":1},"298":{"docs":1,"deployment":1,"node":1},"299":{"docs":1,"deployment":1,"node":1},"300":{"docs":1,"deployment":1,"node":1},"301":{"docs":1,"deployment":1,"node":1},"302":{"docs":1,"deployment":1,"node":1},"303":{"docs":1,"deployment":1,"node":1},"304":{"docs":1,"deployment":1,"node":1},"305":{"docs":1,"deployment":1,"node":1},"306":{"docs":1,"deployment":1,"node":1},"307":{"docs":1,"deployment":1,"node":1},"308":{"docs":1,"deployment":1,"node":1},"309":{"docs":1,"deployment":1,"node":1},"310":{"docs":1,"deployment":1,"node":1},"311":{"docs":1,"deployment":1,"node":1},"312":{"docs":1,"deployment":1,"node":1},"313":{"docs":1,"deployment":1,"node":1},"314":{"docs":1,"deployment":1,"node":1},"315":{"docs":1,"deployment":1,"node":1},"316":{"docs":1,"deployment":1,"node":1},"317":{"docs":1,"deployment":1,"node":1},"318":{"docs":1,"deployment":1,"node":1},"319":{"docs":1,"deployment":1,"node":1},"320":{"docs":1,"deployment":1,"node":1},"321":{"docs":1,"deployment":1,"node":1},"322":{"docs":1,"deployment":1,"node":1},"323":{"docs":1,"deployment":1,"node":1},"324":{"docs":1,"deployment":1,"node":1},"325":{"docs":1,"deployment":1,"node":1},"326":{"docs":1,"deployment":1,"node":1},"327":{"docs":1,"deployment":1,"vercel":1},"328":{"docs":1,"deployment":1,"vercel":1},"329":{"docs":1,"deployment":1,"vercel":1},"330":{"docs":1,"deployment":1,"vercel":1},"331":{"docs":1,"deployment":1,"vercel":1},"332":{"docs":1,"deployment":1,"vercel":1},"333":{"docs":1,"deployment":1,"vercel":1},"334":{"docs":1,"deployment":1,"vercel":1},"335":{"docs":1,"deployment":1,"vercel":1},"336":{"docs":1,"deployment":1,"vercel":1},"337":{"docs":1,"deployment":1,"vercel":1},"338":{"docs":1,"deployment":1,"vercel":1},"339":{"docs":1,"deployment":1,"vercel":1},"340":{"docs":1,"deployment":1,"vercel":1},"341":{"docs":1,"deployment":1,"vercel":1},"342":{"docs":1,"deployment":1,"vercel":1},"343":{"docs":1,"deployment":1,"vercel":1},"344":{"docs":1,"discoverability":1,"server":1,"card":1},"345":{"docs":1,"discoverability":1,"server":1,"card":1},"346":{"docs":1,"discoverability":1,"server":1,"card":1},"347":{"docs":1,"discoverability":1,"server":1,"card":1},"348":{"docs":1,"discoverability":1,"server":1,"card":1},"349":{"docs":1,"discoverability":1,"server":1,"card":1},"350":{"docs":1,"discoverability":1,"server":1,"card":1},"351":{"docs":1,"discoverability":1,"server":1,"card":1},"352":{"docs":1,"discoverability":1,"server":1,"card":1},"353":{"docs":1,"discoverability":1,"server":1,"card":1},"354":{"docs":1,"discoverability":1,"server":1,"card":1},"355":{"docs":1,"discoverability":1,"server":1,"card":1},"356":{"docs":1,"discoverability":1,"server":1,"card":1},"357":{"docs":1,"discoverability":1,"server":1,"card":1},"358":{"docs":1,"discoverability":1,"server":1,"card":1},"359":{"docs":1,"discoverability":1,"server":1,"card":1},"360":{"docs":1,"discoverability":1,"server":1,"card":1},"361":{"docs":1,"discoverability":1,"server":1,"card":1},"362":{"docs":1,"discoverability":1,"server":1,"card":1},"363":{"docs":1,"discoverability":1,"server":1,"card":1},"364":{"docs":1,"discoverability":1,"server":1,"card":1},"365":{"docs":1,"discoverability":1,"server":1,"card":1},"366":{"docs":1,"discoverability":1,"server":1,"card":1},"367":{"docs":1,"discoverability":1,"server":1,"card":1},"368":{"docs":1,"discoverability":1,"server":1,"card":1},"369":{"docs":1,"discoverability":1,"server":1,"card":1},"370":{"docs":1,"discoverability":1,"server":1,"card":1},"371":{"docs":1,"discoverability":1,"server":1,"card":1},"372":{"docs":1,"discoverability":1,"server":1,"card":1},"373":{"docs":1,"discoverability":1,"server":1,"card":1},"374":{"docs":1,"discoverability":1,"server":1,"card":1},"375":{"docs":1,"discoverability":1,"server":1,"card":1},"376":{"docs":1,"discoverability":1,"server":1,"card":1},"377":{"docs":1,"discoverability":1,"server":1,"card":1},"378":{"docs":1,"discoverability":1,"server":1,"card":1},"379":{"docs":1,"discoverability":1,"server":1,"card":1},"380":{"docs":1,"discoverability":1,"server":1,"card":1},"381":{"docs":1,"discoverability":1,"server":1,"card":1},"382":{"docs":1,"discoverability":1,"server":1,"card":1},"383":{"docs":1,"discoverability":1,"server":1,"card":1},"384":{"docs":1,"discoverability":1,"server":1,"card":1},"385":{"docs":1,"discoverability":1,"server":1,"card":1},"386":{"docs":1,"discoverability":1,"server":1,"card":1},"387":{"docs":1,"getting":1,"started":1,"connecting":1},"388":{"docs":1,"getting":1,"started":1,"connecting":1},"389":{"docs":1,"getting":1,"started":1,"connecting":1},"390":{"docs":1,"getting":1,"started":1,"connecting":1},"391":{"docs":1,"getting":1,"started":1,"connecting":1},"392":{"docs":1,"getting":1,"started":1,"connecting":1},"393":{"docs":1,"getting":1,"started":1,"connecting":1},"394":{"docs":1,"getting":1,"started":1,"connecting":1},"395":{"docs":1,"getting":1,"started":1,"connecting":1},"396":{"docs":1,"getting":1,"started":1,"connecting":1},"397":{"docs":1,"getting":1,"started":1,"connecting":1},"398":{"docs":1,"getting":1,"started":1,"connecting":1},"399":{"docs":1,"getting":1,"started":1,"connecting":1},"400":{"docs":1,"getting":1,"started":1,"connecting":1},"401":{"docs":1,"getting":1,"started":1,"connecting":1},"402":{"docs":1,"getting":1,"started":1,"connecting":1},"403":{"docs":1,"getting":1,"started":1,"connecting":1},"404":{"docs":1,"getting":1,"started":1,"connecting":1},"405":{"docs":1,"getting":1,"started":1,"connecting":1},"406":{"docs":1,"getting":1,"started":1,"connecting":1},"407":{"docs":1,"getting":1,"started":1,"connecting":1},"408":{"docs":1,"getting":1,"started":1,"connecting":1},"409":{"docs":1,"getting":1,"started":1,"connecting":1},"410":{"docs":1,"getting":1,"started":1,"connecting":1},"411":{"docs":1,"getting":1,"started":1,"connecting":1},"412":{"docs":1,"getting":1,"started":1,"connecting":1},"413":{"docs":1,"getting":1,"started":1,"connecting":1},"414":{"docs":1,"getting":1,"started":1,"connecting":1},"415":{"docs":1,"getting":1,"started":1,"connecting":1},"416":{"docs":1,"getting":1,"started":1,"connecting":1},"417":{"docs":1,"getting":1,"started":1,"connecting":1},"418":{"docs":1,"getting":1,"started":1,"connecting":1},"419":{"docs":1,"getting":1,"started":1,"connecting":1},"420":{"docs":1,"getting":1,"started":1,"connecting":1},"421":{"docs":1,"getting":1,"started":1,"connecting":1},"422":{"docs":1,"getting":1,"started":1,"connecting":1},"423":{"docs":1,"getting":1,"started":1,"connecting":1},"424":{"docs":1,"getting":1,"started":1,"connecting":1},"425":{"docs":1,"getting":1,"started":1,"connecting":1},"426":{"docs":1,"getting":1,"started":1,"connecting":1},"427":{"docs":1,"getting":1,"started":1,"connecting":1},"428":{"docs":1,"getting":1,"started":1,"connecting":1},"429":{"docs":1,"getting":1,"started":1,"connecting":1},"430":{"docs":1,"getting":1,"started":1,"connecting":1},"431":{"docs":1,"getting":1,"started":1,"connecting":1},"432":{"docs":1,"getting":1,"started":1,"connecting":1},"433":{"docs":1,"getting":1,"started":1,"installation":1},"434":{"docs":1,"getting":1,"started":1,"installation":1},"435":{"docs":1,"getting":1,"started":1,"installation":1},"436":{"docs":1,"getting":1,"started":1,"installation":1},"437":{"docs":1,"getting":1,"started":1,"installation":1},"438":{"docs":1,"getting":1,"started":1,"installation":1},"439":{"docs":1,"getting":1,"started":1,"installation":1},"440":{"docs":1,"getting":1,"started":1,"installation":1},"441":{"docs":1,"getting":1,"started":1,"installation":1},"442":{"docs":1,"getting":1,"started":1,"installation":1},"443":{"docs":1,"getting":1,"started":1,"installation":1},"444":{"docs":1,"getting":1,"started":1,"installation":1},"445":{"docs":1,"getting":1,"started":1,"installation":1},"446":{"docs":1,"getting":1,"started":1,"installation":1},"447":{"docs":1,"getting":1,"started":1,"installation":1},"448":{"docs":1,"getting":1,"started":1,"installation":1},"449":{"docs":1,"getting":1,"started":1,"installation":1},"450":{"docs":1,"getting":1,"started":1,"installation":1},"451":{"docs":1,"getting":1,"started":1,"installation":1},"452":{"docs":1,"getting":1,"started":1,"installation":1},"453":{"docs":1,"getting":1,"started":1,"installation":1},"454":{"docs":1,"getting":1,"started":1,"installation":1},"455":{"docs":1,"getting":1,"started":1,"installation":1},"456":{"docs":1,"getting":1,"started":1,"installation":1},"457":{"docs":1,"getting":1,"started":1,"installation":1},"458":{"docs":1,"getting":1,"started":1,"installation":1},"459":{"docs":1,"getting":1,"started":1,"installation":1},"460":{"docs":1,"getting":1,"started":1,"installation":1},"461":{"docs":1,"getting":1,"started":1,"installation":1},"462":{"docs":1,"getting":1,"started":1,"installation":1},"463":{"docs":1,"getting":1,"started":1,"installation":1},"464":{"docs":1,"getting":1,"started":1,"installation":1},"465":{"docs":1,"getting":1,"started":1,"installation":1},"466":{"docs":1,"getting":1,"started":1,"installation":1},"467":{"docs":1,"getting":1,"started":1,"installation":1},"468":{"docs":1,"getting":1,"started":1,"installation":1},"469":{"docs":1,"getting":1,"started":1,"installation":1},"470":{"docs":1,"getting":1,"started":1,"installation":1},"471":{"docs":1,"getting":1,"started":1,"installation":1},"472":{"docs":1,"getting":1,"started":1,"installation":1},"473":{"docs":1,"getting":1,"started":1,"installation":1},"474":{"docs":1,"getting":1,"started":1,"installation":1},"475":{"docs":1,"getting":1,"started":1,"installation":1},"476":{"docs":1,"getting":1,"started":1,"installation":1},"477":{"docs":1,"getting":1,"started":1,"installation":1},"478":{"docs":1,"getting":1,"started":1,"installation":1},"479":{"docs":1,"getting":1,"started":1,"installation":1},"480":{"docs":1,"getting":1,"started":1,"installation":1},"481":{"docs":1,"getting":1,"started":1,"installation":1},"482":{"docs":1,"getting":1,"started":1,"installation":1},"483":{"docs":1,"getting":1,"started":1,"installation":1},"484":{"docs":1,"getting":1,"started":1,"installation":1},"485":{"docs":1,"getting":1,"started":1,"installation":1},"486":{"docs":1,"getting":1,"started":1,"installation":1},"487":{"docs":1,"getting":1,"started":1,"installation":1},"488":{"docs":1,"getting":1,"started":1,"installation":1},"489":{"docs":1,"getting":1,"started":1,"installation":1},"490":{"docs":1,"getting":1,"started":1,"installation":1},"491":{"docs":1,"getting":1,"started":1,"installation":1},"492":{"docs":1,"getting":1,"started":1,"installation":1},"493":{"docs":1,"getting":1,"started":1,"installation":1},"494":{"docs":1,"getting":1,"started":1,"installation":1},"495":{"docs":1,"getting":1,"started":1,"installation":1},"496":{"docs":1,"getting":1,"started":1,"installation":1},"497":{"docs":1,"getting":1,"started":1,"installation":1},"498":{"docs":1,"getting":1,"started":1,"installation":1},"499":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"500":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"501":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"502":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"503":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"504":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"505":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"506":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"507":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"508":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"509":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"510":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"511":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"512":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"513":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"514":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"515":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"516":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"517":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"518":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"519":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"520":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"521":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"522":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"523":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"524":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"525":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"526":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"527":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"528":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"529":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"530":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"531":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"532":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"533":{"docs":1,"getting":1,"started":1,"project":1,"structure":1}},"type":{"1":{"page":1},"2":{"text":1},"3":{"heading":1},"4":{"text":1},"5":{"text":1},"6":{"text":1},"7":{"text":1},"8":{"text":1},"9":{"text":1},"10":{"text":1},"11":{"text":1},"12":{"text":1},"13":{"text":1},"14":{"text":1},"15":{"text":1},"16":{"text":1},"17":{"text":1},"18":{"text":1},"19":{"page":1},"20":{"text":1},"21":{"heading":1},"22":{"heading":1},"23":{"heading":1},"24":{"heading":1},"25":{"heading":1},"26":{"heading":1},"27":{"text":1},"28":{"text":1},"29":{"text":1},"30":{"text":1},"31":{"text":1},"32":{"text":1},"33":{"text":1},"34":{"text":1},"35":{"text":1},"36":{"text":1},"37":{"text":1},"38":{"text":1},"39":{"text":1},"40":{"text":1},"41":{"text":1},"42":{"text":1},"43":{"text":1},"44":{"text":1},"45":{"text":1},"46":{"text":1},"47":{"text":1},"48":{"text":1},"49":{"text":1},"50":{"page":1},"51":{"text":1},"52":{"heading":1},"53":{"heading":1},"54":{"heading":1},"55":{"heading":1},"56":{"heading":1},"57":{"heading":1},"58":{"text":1},"59":{"text":1},"60":{"text":1},"61":{"text":1},"62":{"text":1},"63":{"text":1},"64":{"text":1},"65":{"text":1},"66":{"text":1},"67":{"text":1},"68":{"text":1},"69":{"text":1},"70":{"text":1},"71":{"text":1},"72":{"text":1},"73":{"text":1},"74":{"text":1},"75":{"text":1},"76":{"page":1},"77":{"text":1},"78":{"heading":1},"79":{"heading":1},"80":{"heading":1},"81":{"heading":1},"82":{"text":1},"83":{"text":1},"84":{"text":1},"85":{"text":1},"86":{"text":1},"87":{"text":1},"88":{"text":1},"89":{"text":1},"90":{"text":1},"91":{"text":1},"92":{"text":1},"93":{"text":1},"94":{"page":1},"95":{"text":1},"96":{"heading":1},"97":{"heading":1},"98":{"heading":1},"99":{"heading":1},"100":{"heading":1},"101":{"heading":1},"102":{"heading":1},"103":{"text":1},"104":{"text":1},"105":{"text":1},"106":{"text":1},"107":{"text":1},"108":{"text":1},"109":{"text":1},"110":{"text":1},"111":{"text":1},"112":{"text":1},"113":{"text":1},"114":{"text":1},"115":{"text":1},"116":{"text":1},"117":{"text":1},"118":{"text":1},"119":{"text":1},"120":{"text":1},"121":{"text":1},"122":{"text":1},"123":{"text":1},"124":{"text":1},"125":{"text":1},"126":{"text":1},"127":{"text":1},"128":{"page":1},"129":{"text":1},"130":{"heading":1},"131":{"heading":1},"132":{"heading":1},"133":{"text":1},"134":{"text":1},"135":{"text":1},"136":{"text":1},"137":{"text":1},"138":{"text":1},"139":{"text":1},"140":{"page":1},"141":{"text":1},"142":{"heading":1},"143":{"heading":1},"144":{"heading":1},"145":{"heading":1},"146":{"text":1},"147":{"text":1},"148":{"text":1},"149":{"text":1},"150":{"text":1},"151":{"text":1},"152":{"text":1},"153":{"text":1},"154":{"text":1},"155":{"text":1},"156":{"text":1},"157":{"page":1},"158":{"text":1},"159":{"heading":1},"160":{"heading":1},"161":{"heading":1},"162":{"heading":1},"163":{"text":1},"164":{"text":1},"165":{"text":1},"166":{"text":1},"167":{"text":1},"168":{"text":1},"169":{"text":1},"170":{"text":1},"171":{"text":1},"172":{"text":1},"173":{"text":1},"174":{"text":1},"175":{"text":1},"176":{"page":1},"177":{"text":1},"178":{"heading":1},"179":{"heading":1},"180":{"heading":1},"181":{"heading":1},"182":{"heading":1},"183":{"heading":1},"184":{"heading":1},"185":{"heading":1},"186":{"text":1},"187":{"text":1},"188":{"text":1},"189":{"text":1},"190":{"text":1},"191":{"text":1},"192":{"text":1},"193":{"text":1},"194":{"text":1},"195":{"text":1},"196":{"text":1},"197":{"text":1},"198":{"text":1},"199":{"text":1},"200":{"text":1},"201":{"text":1},"202":{"text":1},"203":{"text":1},"204":{"text":1},"205":{"text":1},"206":{"text":1},"207":{"text":1},"208":{"text":1},"209":{"text":1},"210":{"text":1},"211":{"text":1},"212":{"text":1},"213":{"text":1},"214":{"text":1},"215":{"text":1},"216":{"text":1},"217":{"page":1},"218":{"text":1},"219":{"heading":1},"220":{"heading":1},"221":{"heading":1},"222":{"heading":1},"223":{"heading":1},"224":{"heading":1},"225":{"heading":1},"226":{"heading":1},"227":{"heading":1},"228":{"text":1},"229":{"text":1},"230":{"text":1},"231":{"text":1},"232":{"text":1},"233":{"text":1},"234":{"text":1},"235":{"text":1},"236":{"text":1},"237":{"text":1},"238":{"text":1},"239":{"text":1},"240":{"text":1},"241":{"text":1},"242":{"text":1},"243":{"text":1},"244":{"text":1},"245":{"text":1},"246":{"text":1},"247":{"text":1},"248":{"text":1},"249":{"text":1},"250":{"text":1},"251":{"text":1},"252":{"text":1},"253":{"text":1},"254":{"text":1},"255":{"text":1},"256":{"text":1},"257":{"text":1},"258":{"text":1},"259":{"text":1},"260":{"text":1},"261":{"text":1},"262":{"text":1},"263":{"text":1},"264":{"text":1},"265":{"text":1},"266":{"text":1},"267":{"text":1},"268":{"text":1},"269":{"text":1},"270":{"text":1},"271":{"text":1},"272":{"text":1},"273":{"text":1},"274":{"text":1},"275":{"text":1},"276":{"text":1},"277":{"text":1},"278":{"text":1},"279":{"text":1},"280":{"page":1},"281":{"text":1},"282":{"heading":1},"283":{"heading":1},"284":{"heading":1},"285":{"heading":1},"286":{"heading":1},"287":{"text":1},"288":{"text":1},"289":{"text":1},"290":{"text":1},"291":{"text":1},"292":{"text":1},"293":{"text":1},"294":{"text":1},"295":{"text":1},"296":{"page":1},"297":{"text":1},"298":{"heading":1},"299":{"heading":1},"300":{"heading":1},"301":{"heading":1},"302":{"heading":1},"303":{"heading":1},"304":{"text":1},"305":{"text":1},"306":{"text":1},"307":{"text":1},"308":{"text":1},"309":{"text":1},"310":{"text":1},"311":{"text":1},"312":{"text":1},"313":{"text":1},"314":{"text":1},"315":{"text":1},"316":{"text":1},"317":{"text":1},"318":{"text":1},"319":{"text":1},"320":{"text":1},"321":{"text":1},"322":{"text":1},"323":{"text":1},"324":{"text":1},"325":{"text":1},"326":{"text":1},"327":{"page":1},"328":{"text":1},"329":{"heading":1},"330":{"heading":1},"331":{"heading":1},"332":{"heading":1},"333":{"heading":1},"334":{"text":1},"335":{"text":1},"336":{"text":1},"337":{"text":1},"338":{"text":1},"339":{"text":1},"340":{"text":1},"341":{"text":1},"342":{"text":1},"343":{"text":1},"344":{"page":1},"345":{"text":1},"346":{"heading":1},"347":{"heading":1},"348":{"heading":1},"349":{"heading":1},"350":{"heading":1},"351":{"heading":1},"352":{"text":1},"353":{"text":1},"354":{"text":1},"355":{"text":1},"356":{"text":1},"357":{"text":1},"358":{"text":1},"359":{"text":1},"360":{"text":1},"361":{"text":1},"362":{"text":1},"363":{"text":1},"364":{"text":1},"365":{"text":1},"366":{"text":1},"367":{"text":1},"368":{"text":1},"369":{"text":1},"370":{"text":1},"371":{"text":1},"372":{"text":1},"373":{"text":1},"374":{"text":1},"375":{"text":1},"376":{"text":1},"377":{"text":1},"378":{"text":1},"379":{"text":1},"380":{"text":1},"381":{"text":1},"382":{"text":1},"383":{"text":1},"384":{"text":1},"385":{"text":1},"386":{"text":1},"387":{"page":1},"388":{"text":1},"389":{"heading":1},"390":{"heading":1},"391":{"heading":1},"392":{"heading":1},"393":{"heading":1},"394":{"heading":1},"395":{"heading":1},"396":{"text":1},"397":{"text":1},"398":{"text":1},"399":{"text":1},"400":{"text":1},"401":{"text":1},"402":{"text":1},"403":{"text":1},"404":{"text":1},"405":{"text":1},"406":{"text":1},"407":{"text":1},"408":{"text":1},"409":{"text":1},"410":{"text":1},"411":{"text":1},"412":{"text":1},"413":{"text":1},"414":{"text":1},"415":{"text":1},"416":{"text":1},"417":{"text":1},"418":{"text":1},"419":{"text":1},"420":{"text":1},"421":{"text":1},"422":{"text":1},"423":{"text":1},"424":{"text":1},"425":{"text":1},"426":{"text":1},"427":{"text":1},"428":{"text":1},"429":{"text":1},"430":{"text":1},"431":{"text":1},"432":{"text":1},"433":{"page":1},"434":{"text":1},"435":{"heading":1},"436":{"heading":1},"437":{"heading":1},"438":{"heading":1},"439":{"heading":1},"440":{"text":1},"441":{"text":1},"442":{"text":1},"443":{"text":1},"444":{"text":1},"445":{"text":1},"446":{"text":1},"447":{"text":1},"448":{"text":1},"449":{"text":1},"450":{"text":1},"451":{"text":1},"452":{"text":1},"453":{"text":1},"454":{"text":1},"455":{"text":1},"456":{"text":1},"457":{"text":1},"458":{"text":1},"459":{"text":1},"460":{"text":1},"461":{"text":1},"462":{"text":1},"463":{"text":1},"464":{"text":1},"465":{"text":1},"466":{"text":1},"467":{"text":1},"468":{"text":1},"469":{"text":1},"470":{"text":1},"471":{"text":1},"472":{"text":1},"473":{"text":1},"474":{"text":1},"475":{"text":1},"476":{"text":1},"477":{"text":1},"478":{"text":1},"479":{"text":1},"480":{"text":1},"481":{"text":1},"482":{"text":1},"483":{"text":1},"484":{"text":1},"485":{"text":1},"486":{"text":1},"487":{"text":1},"488":{"text":1},"489":{"text":1},"490":{"text":1},"491":{"text":1},"492":{"text":1},"493":{"text":1},"494":{"text":1},"495":{"text":1},"496":{"text":1},"497":{"text":1},"498":{"text":1},"499":{"page":1},"500":{"text":1},"501":{"heading":1},"502":{"heading":1},"503":{"heading":1},"504":{"heading":1},"505":{"heading":1},"506":{"text":1},"507":{"text":1},"508":{"text":1},"509":{"text":1},"510":{"text":1},"511":{"text":1},"512":{"text":1},"513":{"text":1},"514":{"text":1},"515":{"text":1},"516":{"text":1},"517":{"text":1},"518":{"text":1},"519":{"text":1},"520":{"text":1},"521":{"text":1},"522":{"text":1},"523":{"text":1},"524":{"text":1},"525":{"text":1},"526":{"text":1},"527":{"text":1},"528":{"text":1},"529":{"text":1},"530":{"text":1},"531":{"text":1},"532":{"text":1},"533":{"text":1}},"breadcrumbs":{"1":{"authentication":1},"19":{"authentication":1},"50":{"authentication":1},"76":{"authentication":1},"94":{"authentication":1},"128":{"core":1,"concepts":1},"140":{"core":1,"concepts":1},"157":{"core":1,"concepts":1},"176":{"core":1,"concepts":1},"217":{"core":1,"concepts":1},"280":{"deployment":1},"296":{"deployment":1},"327":{"deployment":1},"344":{"discoverability":1},"387":{"getting":1,"started":1},"433":{"getting":1,"started":1},"499":{"getting":1,"started":1}},"url":{"1":{"docs":1,"authentication":1,"api":1,"key":1},"2":{"docs":1,"authentication":1,"api":1,"key":1},"3":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"4":{"docs":1,"authentication":1,"api":1,"key":1},"5":{"docs":1,"authentication":1,"api":1,"key":1},"6":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"7":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"8":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"9":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"10":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"11":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"12":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"13":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"14":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"15":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"16":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"17":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"18":{"docs":1,"authentication":1,"api":1,"key":1,"options":1},"19":{"docs":1,"authentication":1,"auth0":1},"20":{"docs":1,"authentication":1,"auth0":1},"21":{"docs":1,"authentication":1,"auth0":1,"configure":1},"22":{"docs":1,"authentication":1,"auth0":1,"set":1,"environment":1,"variables":1},"23":{"docs":1,"authentication":1,"auth0":1,"configure":1,"bitmcp":1},"24":{"docs":1,"authentication":1,"auth0":1,"use":1,"ctxuser":1,"in":1,"tools":1},"25":{"docs":1,"authentication":1,"auth0":1,"verify":1},"26":{"docs":1,"authentication":1,"auth0":1,"options":1},"27":{"docs":1,"authentication":1,"auth0":1},"28":{"docs":1,"authentication":1,"auth0":1,"configure":1},"29":{"docs":1,"authentication":1,"auth0":1,"configure":1},"30":{"docs":1,"authentication":1,"auth0":1,"configure":1},"31":{"docs":1,"authentication":1,"auth0":1,"configure":1},"32":{"docs":1,"authentication":1,"auth0":1,"configure":1},"33":{"docs":1,"authentication":1,"auth0":1,"set":1,"environment":1,"variables":1},"34":{"docs":1,"authentication":1,"auth0":1,"configure":1,"bitmcp":1},"35":{"docs":1,"authentication":1,"auth0":1,"use":1,"ctxuser":1,"in":1,"tools":1},"36":{"docs":1,"authentication":1,"auth0":1,"verify":1},"37":{"docs":1,"authentication":1,"auth0":1,"verify":1},"38":{"docs":1,"authentication":1,"auth0":1,"verify":1},"39":{"docs":1,"authentication":1,"auth0":1,"verify":1},"40":{"docs":1,"authentication":1,"auth0":1,"verify":1},"41":{"docs":1,"authentication":1,"auth0":1,"options":1},"42":{"docs":1,"authentication":1,"auth0":1,"options":1},"43":{"docs":1,"authentication":1,"auth0":1,"options":1},"44":{"docs":1,"authentication":1,"auth0":1,"options":1},"45":{"docs":1,"authentication":1,"auth0":1,"options":1},"46":{"docs":1,"authentication":1,"auth0":1,"options":1},"47":{"docs":1,"authentication":1,"auth0":1,"options":1},"48":{"docs":1,"authentication":1,"auth0":1,"options":1},"49":{"docs":1,"authentication":1,"auth0":1,"options":1},"50":{"docs":1,"authentication":1,"better":1,"auth":1},"51":{"docs":1,"authentication":1,"better":1,"auth":1},"52":{"docs":1,"authentication":1,"better":1,"auth":1,"configure":1},"53":{"docs":1,"authentication":1,"better":1,"auth":1,"set":1,"environment":1,"variables":1},"54":{"docs":1,"authentication":1,"better":1,"auth":1,"configure":1,"bitmcp":1},"55":{"docs":1,"authentication":1,"better":1,"auth":1,"use":1,"ctxuser":1,"in":1,"tools":1},"56":{"docs":1,"authentication":1,"better":1,"auth":1,"verify":1},"57":{"docs":1,"authentication":1,"better":1,"auth":1,"options":1},"58":{"docs":1,"authentication":1,"better":1,"auth":1},"59":{"docs":1,"authentication":1,"better":1,"auth":1,"configure":1},"60":{"docs":1,"authentication":1,"better":1,"auth":1,"configure":1},"61":{"docs":1,"authentication":1,"better":1,"auth":1,"configure":1},"62":{"docs":1,"authentication":1,"better":1,"auth":1,"configure":1},"63":{"docs":1,"authentication":1,"better":1,"auth":1,"configure":1,"bitmcp":1},"64":{"docs":1,"authentication":1,"better":1,"auth":1,"verify":1},"65":{"docs":1,"authentication":1,"better":1,"auth":1,"verify":1},"66":{"docs":1,"authentication":1,"better":1,"auth":1,"verify":1},"67":{"docs":1,"authentication":1,"better":1,"auth":1,"verify":1},"68":{"docs":1,"authentication":1,"better":1,"auth":1,"verify":1},"69":{"docs":1,"authentication":1,"better":1,"auth":1,"options":1},"70":{"docs":1,"authentication":1,"better":1,"auth":1,"options":1},"71":{"docs":1,"authentication":1,"better":1,"auth":1,"options":1},"72":{"docs":1,"authentication":1,"better":1,"auth":1,"options":1},"73":{"docs":1,"authentication":1,"better":1,"auth":1,"options":1},"74":{"docs":1,"authentication":1,"better":1,"auth":1,"options":1},"75":{"docs":1,"authentication":1,"better":1,"auth":1,"options":1},"76":{"docs":1,"authentication":1,"custom":1},"77":{"docs":1,"authentication":1,"custom":1},"78":{"docs":1,"authentication":1,"custom":1,"jwt":1,"identity":1,"providers":1},"79":{"docs":1,"authentication":1,"custom":1,"full":1,"control":1,"with":1},"80":{"docs":1,"authentication":1,"custom":1,"resource":1,"binding":1},"81":{"docs":1,"authentication":1,"custom":1,"options":1},"82":{"docs":1,"authentication":1,"custom":1},"83":{"docs":1,"authentication":1,"custom":1,"jwt":1,"identity":1,"providers":1},"84":{"docs":1,"authentication":1,"custom":1,"full":1,"control":1,"with":1},"85":{"docs":1,"authentication":1,"custom":1,"resource":1,"binding":1},"86":{"docs":1,"authentication":1,"custom":1,"resource":1,"binding":1},"87":{"docs":1,"authentication":1,"custom":1,"options":1},"88":{"docs":1,"authentication":1,"custom":1,"options":1},"89":{"docs":1,"authentication":1,"custom":1,"options":1},"90":{"docs":1,"authentication":1,"custom":1,"options":1},"91":{"docs":1,"authentication":1,"custom":1,"options":1},"92":{"docs":1,"authentication":1,"custom":1,"options":1},"93":{"docs":1,"authentication":1,"custom":1,"options":1},"94":{"docs":1,"authentication":1,"supabase":1},"95":{"docs":1,"authentication":1,"supabase":1},"96":{"docs":1,"authentication":1,"supabase":1,"enable":1,"oauth":1},"97":{"docs":1,"authentication":1,"supabase":1,"set":1,"environment":1,"variables":1},"98":{"docs":1,"authentication":1,"supabase":1,"configure":1,"bitmcp":1},"99":{"docs":1,"authentication":1,"supabase":1,"use":1,"ctxuser":1,"in":1,"tools":1},"100":{"docs":1,"authentication":1,"supabase":1,"verify":1},"101":{"docs":1,"authentication":1,"supabase":1,"row":1,"level":1,"security":1},"102":{"docs":1,"authentication":1,"supabase":1,"options":1},"103":{"docs":1,"authentication":1,"supabase":1},"104":{"docs":1,"authentication":1,"supabase":1,"enable":1,"oauth":1},"105":{"docs":1,"authentication":1,"supabase":1,"enable":1,"oauth":1},"106":{"docs":1,"authentication":1,"supabase":1,"enable":1,"oauth":1},"107":{"docs":1,"authentication":1,"supabase":1,"enable":1,"oauth":1},"108":{"docs":1,"authentication":1,"supabase":1,"enable":1,"oauth":1},"109":{"docs":1,"authentication":1,"supabase":1,"enable":1,"oauth":1},"110":{"docs":1,"authentication":1,"supabase":1,"enable":1,"oauth":1},"111":{"docs":1,"authentication":1,"supabase":1,"set":1,"environment":1,"variables":1},"112":{"docs":1,"authentication":1,"supabase":1,"configure":1,"bitmcp":1},"113":{"docs":1,"authentication":1,"supabase":1,"use":1,"ctxuser":1,"in":1,"tools":1},"114":{"docs":1,"authentication":1,"supabase":1,"verify":1},"115":{"docs":1,"authentication":1,"supabase":1,"row":1,"level":1,"security":1},"116":{"docs":1,"authentication":1,"supabase":1,"row":1,"level":1,"security":1},"117":{"docs":1,"authentication":1,"supabase":1,"options":1},"118":{"docs":1,"authentication":1,"supabase":1,"options":1},"119":{"docs":1,"authentication":1,"supabase":1,"options":1},"120":{"docs":1,"authentication":1,"supabase":1,"options":1},"121":{"docs":1,"authentication":1,"supabase":1,"options":1},"122":{"docs":1,"authentication":1,"supabase":1,"options":1},"123":{"docs":1,"authentication":1,"supabase":1,"options":1},"124":{"docs":1,"authentication":1,"supabase":1,"options":1},"125":{"docs":1,"authentication":1,"supabase":1,"options":1},"126":{"docs":1,"authentication":1,"supabase":1,"options":1},"127":{"docs":1,"authentication":1,"supabase":1,"options":1},"128":{"docs":1,"core":1,"concepts":1,"actions":1},"129":{"docs":1,"core":1,"concepts":1,"actions":1},"130":{"docs":1,"core":1,"concepts":1,"actions":1,"naming":1},"131":{"docs":1,"core":1,"concepts":1,"actions":1,"from":1,"the":1,"view":1},"132":{"docs":1,"core":1,"concepts":1,"actions":1,"why":1,"exist":1},"133":{"docs":1,"core":1,"concepts":1,"actions":1},"134":{"docs":1,"core":1,"concepts":1,"actions":1},"135":{"docs":1,"core":1,"concepts":1,"actions":1,"naming":1},"136":{"docs":1,"core":1,"concepts":1,"actions":1,"naming":1},"137":{"docs":1,"core":1,"concepts":1,"actions":1,"from":1,"the":1,"view":1},"138":{"docs":1,"core":1,"concepts":1,"actions":1,"why":1,"exist":1},"139":{"docs":1,"core":1,"concepts":1,"actions":1,"why":1,"exist":1},"140":{"docs":1,"core":1,"concepts":1,"confirmations":1},"141":{"docs":1,"core":1,"concepts":1,"confirmations":1},"142":{"docs":1,"core":1,"concepts":1,"confirmations":1,"mrtr":1},"143":{"docs":1,"core":1,"concepts":1,"confirmations":1,"example":1},"144":{"docs":1,"core":1,"concepts":1,"confirmations":1,"ctxask":1},"145":{"docs":1,"core":1,"concepts":1,"confirmations":1,"never":1,"view":1,"only":1},"146":{"docs":1,"core":1,"concepts":1,"confirmations":1},"147":{"docs":1,"core":1,"concepts":1,"confirmations":1,"mrtr":1},"148":{"docs":1,"core":1,"concepts":1,"confirmations":1,"mrtr":1},"149":{"docs":1,"core":1,"concepts":1,"confirmations":1,"mrtr":1},"150":{"docs":1,"core":1,"concepts":1,"confirmations":1,"mrtr":1},"151":{"docs":1,"core":1,"concepts":1,"confirmations":1,"mrtr":1},"152":{"docs":1,"core":1,"concepts":1,"confirmations":1,"example":1},"153":{"docs":1,"core":1,"concepts":1,"confirmations":1,"ctxask":1},"154":{"docs":1,"core":1,"concepts":1,"confirmations":1,"ctxask":1},"155":{"docs":1,"core":1,"concepts":1,"confirmations":1,"ctxask":1},"156":{"docs":1,"core":1,"concepts":1,"confirmations":1,"never":1,"view":1,"only":1},"157":{"docs":1,"core":1,"concepts":1,"handles":1},"158":{"docs":1,"core":1,"concepts":1,"handles":1},"159":{"docs":1,"core":1,"concepts":1,"handles":1,"ctxhandle":1},"160":{"docs":1,"core":1,"concepts":1,"handles":1,"stateless":1,"requests":1},"161":{"docs":1,"core":1,"concepts":1,"handles":1,"long":1,"work":1},"162":{"docs":1,"core":1,"concepts":1,"handles":1,"what":1,"this":1,"proves":1},"163":{"docs":1,"core":1,"concepts":1,"handles":1},"164":{"docs":1,"core":1,"concepts":1,"handles":1,"ctxhandle":1},"165":{"docs":1,"core":1,"concepts":1,"handles":1,"ctxhandle":1},"166":{"docs":1,"core":1,"concepts":1,"handles":1,"ctxhandle":1},"167":{"docs":1,"core":1,"concepts":1,"handles":1,"ctxhandle":1},"168":{"docs":1,"core":1,"concepts":1,"handles":1,"stateless":1,"requests":1},"169":{"docs":1,"core":1,"concepts":1,"handles":1,"stateless":1,"requests":1},"170":{"docs":1,"core":1,"concepts":1,"handles":1,"long":1,"work":1},"171":{"docs":1,"core":1,"concepts":1,"handles":1,"long":1,"work":1},"172":{"docs":1,"core":1,"concepts":1,"handles":1,"long":1,"work":1},"173":{"docs":1,"core":1,"concepts":1,"handles":1,"what":1,"this":1,"proves":1},"174":{"docs":1,"core":1,"concepts":1,"handles":1,"what":1,"this":1,"proves":1},"175":{"docs":1,"core":1,"concepts":1,"handles":1,"what":1,"this":1,"proves":1},"176":{"docs":1,"core":1,"concepts":1,"tools":1},"177":{"docs":1,"core":1,"concepts":1,"tools":1},"178":{"docs":1,"core":1,"concepts":1,"tools":1,"return":1,"data":1},"179":{"docs":1,"core":1,"concepts":1,"tools":1,"schemas":1},"180":{"docs":1,"core":1,"concepts":1,"tools":1,"csp":1,"allowlists":1},"181":{"docs":1,"core":1,"concepts":1,"tools":1,"visibility":1},"182":{"docs":1,"core":1,"concepts":1,"tools":1,"rules":1},"183":{"docs":1,"core":1,"concepts":1,"tools":1,"definetool":1,"options":1},"184":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"185":{"docs":1,"core":1,"concepts":1,"tools":1,"result":1,"helpers":1},"186":{"docs":1,"core":1,"concepts":1,"tools":1},"187":{"docs":1,"core":1,"concepts":1,"tools":1,"return":1,"data":1},"188":{"docs":1,"core":1,"concepts":1,"tools":1,"return":1,"data":1},"189":{"docs":1,"core":1,"concepts":1,"tools":1,"schemas":1},"190":{"docs":1,"core":1,"concepts":1,"tools":1,"schemas":1},"191":{"docs":1,"core":1,"concepts":1,"tools":1,"csp":1,"allowlists":1},"192":{"docs":1,"core":1,"concepts":1,"tools":1,"csp":1,"allowlists":1},"193":{"docs":1,"core":1,"concepts":1,"tools":1,"csp":1,"allowlists":1},"194":{"docs":1,"core":1,"concepts":1,"tools":1,"visibility":1},"195":{"docs":1,"core":1,"concepts":1,"tools":1,"rules":1},"196":{"docs":1,"core":1,"concepts":1,"tools":1,"rules":1},"197":{"docs":1,"core":1,"concepts":1,"tools":1,"rules":1},"198":{"docs":1,"core":1,"concepts":1,"tools":1,"rules":1},"199":{"docs":1,"core":1,"concepts":1,"tools":1,"definetool":1,"options":1},"200":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"201":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"202":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"203":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"204":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"205":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"206":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"207":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"208":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"209":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"210":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"211":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"212":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"213":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"214":{"docs":1,"core":1,"concepts":1,"tools":1,"toolcontext":1},"215":{"docs":1,"core":1,"concepts":1,"tools":1,"result":1,"helpers":1},"216":{"docs":1,"core":1,"concepts":1,"tools":1,"result":1,"helpers":1},"217":{"docs":1,"core":1,"concepts":1,"views":1},"218":{"docs":1,"core":1,"concepts":1,"views":1},"219":{"docs":1,"core":1,"concepts":1,"views":1,"ui":1,"resources":1},"220":{"docs":1,"core":1,"concepts":1,"views":1,"html":1,"shell":1},"221":{"docs":1,"core":1,"concepts":1,"views":1,"data":1,"flow":1},"222":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"223":{"docs":1,"core":1,"concepts":1,"views":1,"calltool":1},"224":{"docs":1,"core":1,"concepts":1,"views":1,"styling":1},"225":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"226":{"docs":1,"core":1,"concepts":1,"views":1,"escape":1,"hatches":1},"227":{"docs":1,"core":1,"concepts":1,"views":1,"build":1,"boundaries":1},"228":{"docs":1,"core":1,"concepts":1,"views":1},"229":{"docs":1,"core":1,"concepts":1,"views":1,"ui":1,"resources":1},"230":{"docs":1,"core":1,"concepts":1,"views":1,"ui":1,"resources":1},"231":{"docs":1,"core":1,"concepts":1,"views":1,"ui":1,"resources":1},"232":{"docs":1,"core":1,"concepts":1,"views":1,"ui":1,"resources":1},"233":{"docs":1,"core":1,"concepts":1,"views":1,"html":1,"shell":1},"234":{"docs":1,"core":1,"concepts":1,"views":1,"html":1,"shell":1},"235":{"docs":1,"core":1,"concepts":1,"views":1,"html":1,"shell":1},"236":{"docs":1,"core":1,"concepts":1,"views":1,"html":1,"shell":1},"237":{"docs":1,"core":1,"concepts":1,"views":1,"html":1,"shell":1},"238":{"docs":1,"core":1,"concepts":1,"views":1,"html":1,"shell":1},"239":{"docs":1,"core":1,"concepts":1,"views":1,"data":1,"flow":1},"240":{"docs":1,"core":1,"concepts":1,"views":1,"data":1,"flow":1},"241":{"docs":1,"core":1,"concepts":1,"views":1,"data":1,"flow":1},"242":{"docs":1,"core":1,"concepts":1,"views":1,"data":1,"flow":1},"243":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"244":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"245":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"246":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"247":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"248":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"249":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"250":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"251":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"252":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"253":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"254":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"255":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"256":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"257":{"docs":1,"core":1,"concepts":1,"views":1,"useapp":1},"258":{"docs":1,"core":1,"concepts":1,"views":1,"calltool":1},"259":{"docs":1,"core":1,"concepts":1,"views":1,"styling":1},"260":{"docs":1,"core":1,"concepts":1,"views":1,"styling":1},"261":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"262":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"263":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"264":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"265":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"266":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"267":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"268":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"269":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"270":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"271":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"272":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"273":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"274":{"docs":1,"core":1,"concepts":1,"views":1,"host":1,"theme":1},"275":{"docs":1,"core":1,"concepts":1,"views":1,"escape":1,"hatches":1},"276":{"docs":1,"core":1,"concepts":1,"views":1,"escape":1,"hatches":1},"277":{"docs":1,"core":1,"concepts":1,"views":1,"build":1,"boundaries":1},"278":{"docs":1,"core":1,"concepts":1,"views":1,"build":1,"boundaries":1},"279":{"docs":1,"core":1,"concepts":1,"views":1,"build":1,"boundaries":1},"280":{"docs":1,"deployment":1,"cloudflare":1},"281":{"docs":1,"deployment":1,"cloudflare":1},"282":{"docs":1,"deployment":1,"cloudflare":1,"scaffold":1,"for":1},"283":{"docs":1,"deployment":1,"cloudflare":1,"set":1,"secrets":1,"and":1,"config":1},"284":{"docs":1,"deployment":1,"cloudflare":1,"deploy":1},"285":{"docs":1,"deployment":1,"cloudflare":1,"bitmcpconfigts":1},"286":{"docs":1,"deployment":1,"cloudflare":1,"see":1,"also":1},"287":{"docs":1,"deployment":1,"cloudflare":1},"288":{"docs":1,"deployment":1,"cloudflare":1,"scaffold":1,"for":1},"289":{"docs":1,"deployment":1,"cloudflare":1,"set":1,"secrets":1,"and":1,"config":1},"290":{"docs":1,"deployment":1,"cloudflare":1,"set":1,"secrets":1,"and":1,"config":1},"291":{"docs":1,"deployment":1,"cloudflare":1,"set":1,"secrets":1,"and":1,"config":1},"292":{"docs":1,"deployment":1,"cloudflare":1,"set":1,"secrets":1,"and":1,"config":1},"293":{"docs":1,"deployment":1,"cloudflare":1,"deploy":1},"294":{"docs":1,"deployment":1,"cloudflare":1,"bitmcpconfigts":1},"295":{"docs":1,"deployment":1,"cloudflare":1,"see":1,"also":1},"296":{"docs":1,"deployment":1,"node":1},"297":{"docs":1,"deployment":1,"node":1},"298":{"docs":1,"deployment":1,"node":1},"299":{"docs":1,"deployment":1,"node":1,"embed":1,"in":1,"an":1,"existing":1,"app":1},"300":{"docs":1,"deployment":1,"node":1,"createapp":1,"escape":1,"hatch":1},"301":{"docs":1,"deployment":1,"node":1,"stateless":1,"replicas":1},"302":{"docs":1,"deployment":1,"node":1,"host":1,"and":1,"origin":1,"guards":1},"303":{"docs":1,"deployment":1,"node":1,"see":1,"also":1},"304":{"docs":1,"deployment":1,"node":1},"305":{"docs":1,"deployment":1,"node":1},"306":{"docs":1,"deployment":1,"node":1},"307":{"docs":1,"deployment":1,"node":1},"308":{"docs":1,"deployment":1,"node":1},"309":{"docs":1,"deployment":1,"node":1},"310":{"docs":1,"deployment":1,"node":1,"embed":1,"in":1,"an":1,"existing":1,"app":1},"311":{"docs":1,"deployment":1,"node":1,"createapp":1,"escape":1,"hatch":1},"312":{"docs":1,"deployment":1,"node":1,"createapp":1,"escape":1,"hatch":1},"313":{"docs":1,"deployment":1,"node":1,"createapp":1,"escape":1,"hatch":1},"314":{"docs":1,"deployment":1,"node":1,"createapp":1,"escape":1,"hatch":1},"315":{"docs":1,"deployment":1,"node":1,"createapp":1,"escape":1,"hatch":1},"316":{"docs":1,"deployment":1,"node":1,"createapp":1,"escape":1,"hatch":1},"317":{"docs":1,"deployment":1,"node":1,"createapp":1,"escape":1,"hatch":1},"318":{"docs":1,"deployment":1,"node":1,"createapp":1,"escape":1,"hatch":1},"319":{"docs":1,"deployment":1,"node":1,"createapp":1,"escape":1,"hatch":1},"320":{"docs":1,"deployment":1,"node":1,"createapp":1,"escape":1,"hatch":1},"321":{"docs":1,"deployment":1,"node":1,"stateless":1,"replicas":1},"322":{"docs":1,"deployment":1,"node":1,"stateless":1,"replicas":1},"323":{"docs":1,"deployment":1,"node":1,"stateless":1,"replicas":1},"324":{"docs":1,"deployment":1,"node":1,"stateless":1,"replicas":1},"325":{"docs":1,"deployment":1,"node":1,"host":1,"and":1,"origin":1,"guards":1},"326":{"docs":1,"deployment":1,"node":1,"see":1,"also":1},"327":{"docs":1,"deployment":1,"vercel":1},"328":{"docs":1,"deployment":1,"vercel":1},"329":{"docs":1,"deployment":1,"vercel":1,"scaffold":1,"for":1},"330":{"docs":1,"deployment":1,"vercel":1,"set":1,"environment":1,"variables":1},"331":{"docs":1,"deployment":1,"vercel":1,"deploy":1},"332":{"docs":1,"deployment":1,"vercel":1,"bitmcpconfigts":1},"333":{"docs":1,"deployment":1,"vercel":1,"see":1,"also":1},"334":{"docs":1,"deployment":1,"vercel":1},"335":{"docs":1,"deployment":1,"vercel":1,"scaffold":1,"for":1},"336":{"docs":1,"deployment":1,"vercel":1,"set":1,"environment":1,"variables":1},"337":{"docs":1,"deployment":1,"vercel":1,"set":1,"environment":1,"variables":1},"338":{"docs":1,"deployment":1,"vercel":1,"set":1,"environment":1,"variables":1},"339":{"docs":1,"deployment":1,"vercel":1,"set":1,"environment":1,"variables":1},"340":{"docs":1,"deployment":1,"vercel":1,"set":1,"environment":1,"variables":1},"341":{"docs":1,"deployment":1,"vercel":1,"deploy":1},"342":{"docs":1,"deployment":1,"vercel":1,"bitmcpconfigts":1},"343":{"docs":1,"deployment":1,"vercel":1,"see":1,"also":1},"344":{"docs":1,"discoverability":1,"server":1,"card":1},"345":{"docs":1,"discoverability":1,"server":1,"card":1},"346":{"docs":1,"discoverability":1,"server":1,"card":1,"endpoints":1},"347":{"docs":1,"discoverability":1,"server":1,"card":1,"default":1},"348":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"349":{"docs":1,"discoverability":1,"server":1,"card":1,"remote":1,"url":1,"resolution":1},"350":{"docs":1,"discoverability":1,"server":1,"card":1,"vercel":1,"rewrite":1},"351":{"docs":1,"discoverability":1,"server":1,"card":1,"next":1,"step":1},"352":{"docs":1,"discoverability":1,"server":1,"card":1},"353":{"docs":1,"discoverability":1,"server":1,"card":1,"endpoints":1},"354":{"docs":1,"discoverability":1,"server":1,"card":1,"endpoints":1},"355":{"docs":1,"discoverability":1,"server":1,"card":1,"endpoints":1},"356":{"docs":1,"discoverability":1,"server":1,"card":1,"endpoints":1},"357":{"docs":1,"discoverability":1,"server":1,"card":1,"endpoints":1},"358":{"docs":1,"discoverability":1,"server":1,"card":1,"endpoints":1},"359":{"docs":1,"discoverability":1,"server":1,"card":1,"endpoints":1},"360":{"docs":1,"discoverability":1,"server":1,"card":1,"endpoints":1},"361":{"docs":1,"discoverability":1,"server":1,"card":1,"default":1},"362":{"docs":1,"discoverability":1,"server":1,"card":1,"default":1},"363":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"364":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"365":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"366":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"367":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"368":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"369":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"370":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"371":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"372":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"373":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"374":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"375":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"376":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"377":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"378":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"379":{"docs":1,"discoverability":1,"server":1,"card":1,"configure":1},"380":{"docs":1,"discoverability":1,"server":1,"card":1,"remote":1,"url":1,"resolution":1},"381":{"docs":1,"discoverability":1,"server":1,"card":1,"remote":1,"url":1,"resolution":1},"382":{"docs":1,"discoverability":1,"server":1,"card":1,"remote":1,"url":1,"resolution":1},"383":{"docs":1,"discoverability":1,"server":1,"card":1,"remote":1,"url":1,"resolution":1},"384":{"docs":1,"discoverability":1,"server":1,"card":1,"remote":1,"url":1,"resolution":1},"385":{"docs":1,"discoverability":1,"server":1,"card":1,"vercel":1,"rewrite":1},"386":{"docs":1,"discoverability":1,"server":1,"card":1,"next":1,"step":1},"387":{"docs":1,"getting":1,"started":1,"connecting":1},"388":{"docs":1,"getting":1,"started":1,"connecting":1},"389":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"390":{"docs":1,"getting":1,"started":1,"connecting":1,"preview":1,"host":1},"391":{"docs":1,"getting":1,"started":1,"connecting":1,"stdio":1,"clients":1},"392":{"docs":1,"getting":1,"started":1,"connecting":1,"http":1,"clients":1},"393":{"docs":1,"getting":1,"started":1,"connecting":1,"host":1,"compatibility":1},"394":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"395":{"docs":1,"getting":1,"started":1,"connecting":1,"next":1,"step":1},"396":{"docs":1,"getting":1,"started":1,"connecting":1},"397":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"398":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"399":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"400":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"401":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"402":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"403":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"404":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"405":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"406":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"407":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"408":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"409":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"410":{"docs":1,"getting":1,"started":1,"connecting":1,"transports":1},"411":{"docs":1,"getting":1,"started":1,"connecting":1,"preview":1,"host":1},"412":{"docs":1,"getting":1,"started":1,"connecting":1,"stdio":1,"clients":1},"413":{"docs":1,"getting":1,"started":1,"connecting":1,"http":1,"clients":1},"414":{"docs":1,"getting":1,"started":1,"connecting":1,"host":1,"compatibility":1},"415":{"docs":1,"getting":1,"started":1,"connecting":1,"host":1,"compatibility":1},"416":{"docs":1,"getting":1,"started":1,"connecting":1,"host":1,"compatibility":1},"417":{"docs":1,"getting":1,"started":1,"connecting":1,"host":1,"compatibility":1},"418":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"419":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"420":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"421":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"422":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"423":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"424":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"425":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"426":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"427":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"428":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"429":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"430":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"431":{"docs":1,"getting":1,"started":1,"connecting":1,"environment":1,"variables":1},"432":{"docs":1,"getting":1,"started":1,"connecting":1,"next":1,"step":1},"433":{"docs":1,"getting":1,"started":1,"installation":1},"434":{"docs":1,"getting":1,"started":1,"installation":1},"435":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"436":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"437":{"docs":1,"getting":1,"started":1,"installation":1,"bitmcpconfigts":1},"438":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"439":{"docs":1,"getting":1,"started":1,"installation":1,"next":1,"step":1},"440":{"docs":1,"getting":1,"started":1,"installation":1},"441":{"docs":1,"getting":1,"started":1,"installation":1},"442":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"443":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"444":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"445":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"446":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"447":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"448":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"449":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"450":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"451":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"452":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"453":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"454":{"docs":1,"getting":1,"started":1,"installation":1,"scripts":1},"455":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"456":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"457":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"458":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"459":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"460":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"461":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"462":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"463":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"464":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"465":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"466":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"467":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"468":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"469":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"470":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"471":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"472":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"473":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"474":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"475":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"476":{"docs":1,"getting":1,"started":1,"installation":1,"cli":1},"477":{"docs":1,"getting":1,"started":1,"installation":1,"bitmcpconfigts":1},"478":{"docs":1,"getting":1,"started":1,"installation":1,"bitmcpconfigts":1},"479":{"docs":1,"getting":1,"started":1,"installation":1,"bitmcpconfigts":1},"480":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"481":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"482":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"483":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"484":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"485":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"486":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"487":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"488":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"489":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"490":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"491":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"492":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"493":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"494":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"495":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"496":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"497":{"docs":1,"getting":1,"started":1,"installation":1,"environment":1,"variables":1},"498":{"docs":1,"getting":1,"started":1,"installation":1,"next":1,"step":1},"499":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"500":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"501":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"naming":1},"502":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"compiler":1,"boundaries":1},"503":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"what":1,"the":1,"compiler":1,"emits":1},"504":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"config":1,"files":1},"505":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"next":1,"step":1},"506":{"docs":1,"getting":1,"started":1,"project":1,"structure":1},"507":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"naming":1},"508":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"compiler":1,"boundaries":1},"509":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"compiler":1,"boundaries":1},"510":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"compiler":1,"boundaries":1},"511":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"compiler":1,"boundaries":1},"512":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"what":1,"the":1,"compiler":1,"emits":1},"513":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"what":1,"the":1,"compiler":1,"emits":1},"514":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"what":1,"the":1,"compiler":1,"emits":1},"515":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"what":1,"the":1,"compiler":1,"emits":1},"516":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"what":1,"the":1,"compiler":1,"emits":1},"517":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"what":1,"the":1,"compiler":1,"emits":1},"518":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"what":1,"the":1,"compiler":1,"emits":1},"519":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"what":1,"the":1,"compiler":1,"emits":1},"520":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"what":1,"the":1,"compiler":1,"emits":1},"521":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"config":1,"files":1},"522":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"config":1,"files":1},"523":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"config":1,"files":1},"524":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"config":1,"files":1},"525":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"config":1,"files":1},"526":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"config":1,"files":1},"527":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"config":1,"files":1},"528":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"config":1,"files":1},"529":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"config":1,"files":1},"530":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"config":1,"files":1},"531":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"config":1,"files":1},"532":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"config":1,"files":1},"533":{"docs":1,"getting":1,"started":1,"project":1,"structure":1,"next":1,"step":1}}},"tokenOccurrences":{},"avgFieldLength":{"content":6.279549718574109,"page_id":3.7898686679174483,"type":1,"breadcrumbs":1.0364999481437265,"url":5.288930581613511},"fieldLengths":{"content":{"1":2,"2":9,"3":1,"4":21,"5":10,"6":1,"7":1,"8":1,"9":1,"10":1,"11":3,"12":1,"13":3,"14":4,"15":1,"16":4,"17":3,"18":15,"19":1,"20":7,"21":2,"22":3,"23":2,"24":4,"25":1,"26":1,"27":18,"28":4,"29":17,"30":12,"31":8,"32":15,"33":15,"34":2,"35":14,"36":7,"37":7,"38":6,"39":8,"40":8,"41":1,"42":1,"43":1,"44":3,"45":1,"46":6,"47":1,"48":6,"49":10,"50":2,"51":8,"52":3,"53":3,"54":2,"55":4,"56":1,"57":1,"58":27,"59":5,"60":6,"61":13,"62":6,"63":2,"64":9,"65":7,"66":5,"67":5,"68":5,"69":1,"70":1,"71":1,"72":5,"73":1,"74":6,"75":10,"76":1,"77":9,"78":3,"79":4,"80":2,"81":1,"82":29,"83":6,"84":11,"85":29,"86":9,"87":1,"88":1,"89":1,"90":6,"91":1,"92":7,"93":8,"94":1,"95":7,"96":3,"97":3,"98":2,"99":4,"100":1,"101":3,"102":1,"103":25,"104":4,"105":7,"106":5,"107":10,"108":16,"109":7,"110":12,"111":16,"112":4,"113":14,"114":30,"115":38,"116":12,"117":1,"118":1,"119":1,"120":3,"121":1,"122":8,"123":1,"124":5,"125":1,"126":6,"127":20,"128":1,"129":8,"130":1,"131":3,"132":3,"133":12,"134":15,"135":8,"136":5,"137":15,"138":21,"139":11,"140":1,"141":8,"142":1,"143":1,"144":1,"145":3,"146":8,"147":6,"148":5,"149":9,"150":5,"151":10,"152":20,"153":9,"154":15,"155":12,"156":23,"157":1,"158":5,"159":1,"160":2,"161":2,"162":3,"163":12,"164":14,"165":3,"166":10,"167":14,"168":19,"169":7,"170":24,"171":14,"172":23,"173":4,"174":9,"175":11,"176":1,"177":8,"178":2,"179":1,"180":2,"181":1,"182":1,"183":2,"184":1,"185":2,"186":11,"187":16,"188":2,"189":8,"190":9,"191":9,"192":8,"193":9,"194":13,"195":6,"196":4,"197":10,"198":5,"199":14,"200":1,"201":1,"202":3,"203":4,"204":2,"205":4,"206":1,"207":5,"208":1,"209":4,"210":1,"211":6,"212":1,"213":6,"214":8,"215":2,"216":18,"217":1,"218":7,"219":2,"220":2,"221":2,"222":1,"223":1,"224":1,"225":2,"226":2,"227":2,"228":10,"229":16,"230":6,"231":14,"232":6,"233":3,"234":4,"235":4,"236":9,"237":6,"238":22,"239":4,"240":4,"241":9,"242":5,"243":4,"244":24,"245":1,"246":1,"247":1,"248":8,"249":3,"250":10,"251":1,"252":4,"253":1,"254":2,"255":1,"256":4,"257":14,"258":27,"259":20,"260":22,"261":18,"262":1,"263":2,"264":2,"265":3,"266":2,"267":3,"268":2,"269":3,"270":1,"271":3,"272":2,"273":2,"274":24,"275":7,"276":16,"277":6,"278":9,"279":8,"280":1,"281":8,"282":3,"283":4,"284":1,"285":1,"286":2,"287":16,"288":12,"289":8,"290":10,"291":6,"292":10,"293":9,"294":13,"295":10,"296":3,"297":13,"298":1,"299":5,"300":3,"301":2,"302":4,"303":2,"304":24,"305":10,"306":7,"307":13,"308":9,"309":12,"310":20,"311":21,"312":1,"313":1,"314":1,"315":3,"316":2,"317":5,"318":2,"319":3,"320":11,"321":12,"322":7,"323":9,"324":13,"325":16,"326":8,"327":1,"328":9,"329":3,"330":3,"331":1,"332":1,"333":2,"334":20,"335":13,"336":4,"337":2,"338":8,"339":6,"340":17,"341":15,"342":21,"343":10,"344":2,"345":9,"346":1,"347":2,"348":1,"349":3,"350":2,"351":2,"352":23,"353":7,"354":1,"355":1,"356":4,"357":4,"358":6,"359":3,"360":20,"361":16,"362":14,"363":1,"364":1,"365":1,"366":10,"367":1,"368":4,"369":1,"370":6,"371":1,"372":2,"373":1,"374":3,"375":1,"376":3,"377":1,"378":8,"379":5,"380":10,"381":13,"382":10,"383":12,"384":14,"385":20,"386":19,"387":4,"388":12,"389":1,"390":2,"391":2,"392":2,"393":2,"394":2,"395":2,"396":18,"397":1,"398":1,"399":2,"400":1,"401":2,"402":7,"403":1,"404":3,"405":5,"406":1,"407":2,"408":6,"409":12,"410":18,"411":23,"412":6,"413":25,"414":21,"415":29,"416":25,"417":12,"418":1,"419":1,"420":1,"421":3,"422":1,"423":4,"424":1,"425":2,"426":1,"427":4,"428":1,"429":5,"430":1,"431":7,"432":14,"433":1,"434":10,"435":1,"436":1,"437":1,"438":2,"439":2,"440":11,"441":3,"442":1,"443":1,"444":1,"445":1,"446":2,"447":9,"448":1,"449":2,"450":6,"451":1,"452":2,"453":3,"454":13,"455":1,"456":1,"457":2,"458":9,"459":2,"460":10,"461":2,"462":6,"463":2,"464":7,"465":1,"466":2,"467":1,"468":1,"469":1,"470":4,"471":1,"472":1,"473":7,"474":2,"475":2,"476":2,"477":21,"478":14,"479":17,"480":1,"481":1,"482":1,"483":5,"484":1,"485":6,"486":1,"487":3,"488":1,"489":3,"490":1,"491":3,"492":1,"493":4,"494":1,"495":9,"496":1,"497":7,"498":16,"499":2,"500":9,"501":1,"502":2,"503":4,"504":2,"505":2,"506":17,"507":18,"508":5,"509":6,"510":8,"511":9,"512":2,"513":1,"514":1,"515":4,"516":1,"517":7,"518":1,"519":5,"520":24,"521":1,"522":1,"523":1,"524":7,"525":1,"526":6,"527":2,"528":7,"529":1,"530":4,"531":1,"532":4,"533":8},"page_id":{"1":4,"2":4,"3":4,"4":4,"5":4,"6":4,"7":4,"8":4,"9":4,"10":4,"11":4,"12":4,"13":4,"14":4,"15":4,"16":4,"17":4,"18":4,"19":3,"20":3,"21":3,"22":3,"23":3,"24":3,"25":3,"26":3,"27":3,"28":3,"29":3,"30":3,"31":3,"32":3,"33":3,"34":3,"35":3,"36":3,"37":3,"38":3,"39":3,"40":3,"41":3,"42":3,"43":3,"44":3,"45":3,"46":3,"47":3,"48":3,"49":3,"50":4,"51":4,"52":4,"53":4,"54":4,"55":4,"56":4,"57":4,"58":4,"59":4,"60":4,"61":4,"62":4,"63":4,"64":4,"65":4,"66":4,"67":4,"68":4,"69":4,"70":4,"71":4,"72":4,"73":4,"74":4,"75":4,"76":3,"77":3,"78":3,"79":3,"80":3,"81":3,"82":3,"83":3,"84":3,"85":3,"86":3,"87":3,"88":3,"89":3,"90":3,"91":3,"92":3,"93":3,"94":3,"95":3,"96":3,"97":3,"98":3,"99":3,"100":3,"101":3,"102":3,"103":3,"104":3,"105":3,"106":3,"107":3,"108":3,"109":3,"110":3,"111":3,"112":3,"113":3,"114":3,"115":3,"116":3,"117":3,"118":3,"119":3,"120":3,"121":3,"122":3,"123":3,"124":3,"125":3,"126":3,"127":3,"128":4,"129":4,"130":4,"131":4,"132":4,"133":4,"134":4,"135":4,"136":4,"137":4,"138":4,"139":4,"140":4,"141":4,"142":4,"143":4,"144":4,"145":4,"146":4,"147":4,"148":4,"149":4,"150":4,"151":4,"152":4,"153":4,"154":4,"155":4,"156":4,"157":4,"158":4,"159":4,"160":4,"161":4,"162":4,"163":4,"164":4,"165":4,"166":4,"167":4,"168":4,"169":4,"170":4,"171":4,"172":4,"173":4,"174":4,"175":4,"176":4,"177":4,"178":4,"179":4,"180":4,"181":4,"182":4,"183":4,"184":4,"185":4,"186":4,"187":4,"188":4,"189":4,"190":4,"191":4,"192":4,"193":4,"194":4,"195":4,"196":4,"197":4,"198":4,"199":4,"200":4,"201":4,"202":4,"203":4,"204":4,"205":4,"206":4,"207":4,"208":4,"209":4,"210":4,"211":4,"212":4,"213":4,"214":4,"215":4,"216":4,"217":4,"218":4,"219":4,"220":4,"221":4,"222":4,"223":4,"224":4,"225":4,"226":4,"227":4,"228":4,"229":4,"230":4,"231":4,"232":4,"233":4,"234":4,"235":4,"236":4,"237":4,"238":4,"239":4,"240":4,"241":4,"242":4,"243":4,"244":4,"245":4,"246":4,"247":4,"248":4,"249":4,"250":4,"251":4,"252":4,"253":4,"254":4,"255":4,"256":4,"257":4,"258":4,"259":4,"260":4,"261":4,"262":4,"263":4,"264":4,"265":4,"266":4,"267":4,"268":4,"269":4,"270":4,"271":4,"272":4,"273":4,"274":4,"275":4,"276":4,"277":4,"278":4,"279":4,"280":3,"281":3,"282":3,"283":3,"284":3,"285":3,"286":3,"287":3,"288":3,"289":3,"290":3,"291":3,"292":3,"293":3,"294":3,"295":3,"296":3,"297":3,"298":3,"299":3,"300":3,"301":3,"302":3,"303":3,"304":3,"305":3,"306":3,"307":3,"308":3,"309":3,"310":3,"311":3,"312":3,"313":3,"314":3,"315":3,"316":3,"317":3,"318":3,"319":3,"320":3,"321":3,"322":3,"323":3,"324":3,"325":3,"326":3,"327":3,"328":3,"329":3,"330":3,"331":3,"332":3,"333":3,"334":3,"335":3,"336":3,"337":3,"338":3,"339":3,"340":3,"341":3,"342":3,"343":3,"344":4,"345":4,"346":4,"347":4,"348":4,"349":4,"350":4,"351":4,"352":4,"353":4,"354":4,"355":4,"356":4,"357":4,"358":4,"359":4,"360":4,"361":4,"362":4,"363":4,"364":4,"365":4,"366":4,"367":4,"368":4,"369":4,"370":4,"371":4,"372":4,"373":4,"374":4,"375":4,"376":4,"377":4,"378":4,"379":4,"380":4,"381":4,"382":4,"383":4,"384":4,"385":4,"386":4,"387":4,"388":4,"389":4,"390":4,"391":4,"392":4,"393":4,"394":4,"395":4,"396":4,"397":4,"398":4,"399":4,"400":4,"401":4,"402":4,"403":4,"404":4,"405":4,"406":4,"407":4,"408":4,"409":4,"410":4,"411":4,"412":4,"413":4,"414":4,"415":4,"416":4,"417":4,"418":4,"419":4,"420":4,"421":4,"422":4,"423":4,"424":4,"425":4,"426":4,"427":4,"428":4,"429":4,"430":4,"431":4,"432":4,"433":4,"434":4,"435":4,"436":4,"437":4,"438":4,"439":4,"440":4,"441":4,"442":4,"443":4,"444":4,"445":4,"446":4,"447":4,"448":4,"449":4,"450":4,"451":4,"452":4,"453":4,"454":4,"455":4,"456":4,"457":4,"458":4,"459":4,"460":4,"461":4,"462":4,"463":4,"464":4,"465":4,"466":4,"467":4,"468":4,"469":4,"470":4,"471":4,"472":4,"473":4,"474":4,"475":4,"476":4,"477":4,"478":4,"479":4,"480":4,"481":4,"482":4,"483":4,"484":4,"485":4,"486":4,"487":4,"488":4,"489":4,"490":4,"491":4,"492":4,"493":4,"494":4,"495":4,"496":4,"497":4,"498":4,"499":5,"500":5,"501":5,"502":5,"503":5,"504":5,"505":5,"506":5,"507":5,"508":5,"509":5,"510":5,"511":5,"512":5,"513":5,"514":5,"515":5,"516":5,"517":5,"518":5,"519":5,"520":5,"521":5,"522":5,"523":5,"524":5,"525":5,"526":5,"527":5,"528":5,"529":5,"530":5,"531":5,"532":5,"533":5},"type":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"135":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"161":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"177":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"192":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"200":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"211":1,"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"223":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"237":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"250":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1,"266":1,"267":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"278":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1,"286":1,"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1,"295":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1,"309":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1,"318":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"328":1,"329":1,"330":1,"331":1,"332":1,"333":1,"334":1,"335":1,"336":1,"337":1,"338":1,"339":1,"340":1,"341":1,"342":1,"343":1,"344":1,"345":1,"346":1,"347":1,"348":1,"349":1,"350":1,"351":1,"352":1,"353":1,"354":1,"355":1,"356":1,"357":1,"358":1,"359":1,"360":1,"361":1,"362":1,"363":1,"364":1,"365":1,"366":1,"367":1,"368":1,"369":1,"370":1,"371":1,"372":1,"373":1,"374":1,"375":1,"376":1,"377":1,"378":1,"379":1,"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"387":1,"388":1,"389":1,"390":1,"391":1,"392":1,"393":1,"394":1,"395":1,"396":1,"397":1,"398":1,"399":1,"400":1,"401":1,"402":1,"403":1,"404":1,"405":1,"406":1,"407":1,"408":1,"409":1,"410":1,"411":1,"412":1,"413":1,"414":1,"415":1,"416":1,"417":1,"418":1,"419":1,"420":1,"421":1,"422":1,"423":1,"424":1,"425":1,"426":1,"427":1,"428":1,"429":1,"430":1,"431":1,"432":1,"433":1,"434":1,"435":1,"436":1,"437":1,"438":1,"439":1,"440":1,"441":1,"442":1,"443":1,"444":1,"445":1,"446":1,"447":1,"448":1,"449":1,"450":1,"451":1,"452":1,"453":1,"454":1,"455":1,"456":1,"457":1,"458":1,"459":1,"460":1,"461":1,"462":1,"463":1,"464":1,"465":1,"466":1,"467":1,"468":1,"469":1,"470":1,"471":1,"472":1,"473":1,"474":1,"475":1,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1,"482":1,"483":1,"484":1,"485":1,"486":1,"487":1,"488":1,"489":1,"490":1,"491":1,"492":1,"493":1,"494":1,"495":1,"496":1,"497":1,"498":1,"499":1,"500":1,"501":1,"502":1,"503":1,"504":1,"505":1,"506":1,"507":1,"508":1,"509":1,"510":1,"511":1,"512":1,"513":1,"514":1,"515":1,"516":1,"517":1,"518":1,"519":1,"520":1,"521":1,"522":1,"523":1,"524":1,"525":1,"526":1,"527":1,"528":1,"529":1,"530":1,"531":1,"532":1,"533":1},"breadcrumbs":{"1":1,"19":1,"50":1,"76":1,"94":1,"128":2,"140":2,"157":2,"176":2,"217":2,"280":1,"296":1,"327":1,"344":1,"387":2,"433":2,"499":2},"url":{"1":4,"2":4,"3":5,"4":4,"5":4,"6":5,"7":5,"8":5,"9":5,"10":5,"11":5,"12":5,"13":5,"14":5,"15":5,"16":5,"17":5,"18":5,"19":3,"20":3,"21":4,"22":6,"23":5,"24":7,"25":4,"26":4,"27":3,"28":4,"29":4,"30":4,"31":4,"32":4,"33":6,"34":5,"35":7,"36":4,"37":4,"38":4,"39":4,"40":4,"41":4,"42":4,"43":4,"44":4,"45":4,"46":4,"47":4,"48":4,"49":4,"50":4,"51":4,"52":5,"53":7,"54":6,"55":8,"56":5,"57":5,"58":4,"59":5,"60":5,"61":5,"62":5,"63":6,"64":5,"65":5,"66":5,"67":5,"68":5,"69":5,"70":5,"71":5,"72":5,"73":5,"74":5,"75":5,"76":3,"77":3,"78":6,"79":6,"80":5,"81":4,"82":3,"83":6,"84":6,"85":5,"86":5,"87":4,"88":4,"89":4,"90":4,"91":4,"92":4,"93":4,"94":3,"95":3,"96":5,"97":6,"98":5,"99":7,"100":4,"101":6,"102":4,"103":3,"104":5,"105":5,"106":5,"107":5,"108":5,"109":5,"110":5,"111":6,"112":5,"113":7,"114":4,"115":6,"116":6,"117":4,"118":4,"119":4,"120":4,"121":4,"122":4,"123":4,"124":4,"125":4,"126":4,"127":4,"128":4,"129":4,"130":5,"131":7,"132":6,"133":4,"134":4,"135":5,"136":5,"137":7,"138":6,"139":6,"140":4,"141":4,"142":5,"143":5,"144":5,"145":7,"146":4,"147":5,"148":5,"149":5,"150":5,"151":5,"152":5,"153":5,"154":5,"155":5,"156":7,"157":4,"158":4,"159":5,"160":6,"161":6,"162":7,"163":4,"164":5,"165":5,"166":5,"167":5,"168":6,"169":6,"170":6,"171":6,"172":6,"173":7,"174":7,"175":7,"176":4,"177":4,"178":6,"179":5,"180":6,"181":5,"182":5,"183":6,"184":5,"185":6,"186":4,"187":6,"188":6,"189":5,"190":5,"191":6,"192":6,"193":6,"194":5,"195":5,"196":5,"197":5,"198":5,"199":6,"200":5,"201":5,"202":5,"203":5,"204":5,"205":5,"206":5,"207":5,"208":5,"209":5,"210":5,"211":5,"212":5,"213":5,"214":5,"215":6,"216":6,"217":4,"218":4,"219":6,"220":6,"221":6,"222":5,"223":5,"224":5,"225":6,"226":6,"227":6,"228":4,"229":6,"230":6,"231":6,"232":6,"233":6,"234":6,"235":6,"236":6,"237":6,"238":6,"239":6,"240":6,"241":6,"242":6,"243":5,"244":5,"245":5,"246":5,"247":5,"248":5,"249":5,"250":5,"251":5,"252":5,"253":5,"254":5,"255":5,"256":5,"257":5,"258":5,"259":5,"260":5,"261":6,"262":6,"263":6,"264":6,"265":6,"266":6,"267":6,"268":6,"269":6,"270":6,"271":6,"272":6,"273":6,"274":6,"275":6,"276":6,"277":6,"278":6,"279":6,"280":3,"281":3,"282":5,"283":7,"284":4,"285":4,"286":5,"287":3,"288":5,"289":7,"290":7,"291":7,"292":7,"293":4,"294":4,"295":5,"296":3,"297":3,"298":3,"299":8,"300":6,"301":5,"302":7,"303":5,"304":3,"305":3,"306":3,"307":3,"308":3,"309":3,"310":8,"311":6,"312":6,"313":6,"314":6,"315":6,"316":6,"317":6,"318":6,"319":6,"320":6,"321":5,"322":5,"323":5,"324":5,"325":7,"326":5,"327":3,"328":3,"329":5,"330":6,"331":4,"332":4,"333":5,"334":3,"335":5,"336":6,"337":6,"338":6,"339":6,"340":6,"341":4,"342":4,"343":5,"344":4,"345":4,"346":5,"347":5,"348":5,"349":7,"350":6,"351":6,"352":4,"353":5,"354":5,"355":5,"356":5,"357":5,"358":5,"359":5,"360":5,"361":5,"362":5,"363":5,"364":5,"365":5,"366":5,"367":5,"368":5,"369":5,"370":5,"371":5,"372":5,"373":5,"374":5,"375":5,"376":5,"377":5,"378":5,"379":5,"380":7,"381":7,"382":7,"383":7,"384":7,"385":6,"386":6,"387":4,"388":4,"389":5,"390":6,"391":6,"392":6,"393":6,"394":6,"395":6,"396":4,"397":5,"398":5,"399":5,"400":5,"401":5,"402":5,"403":5,"404":5,"405":5,"406":5,"407":5,"408":5,"409":5,"410":5,"411":6,"412":6,"413":6,"414":6,"415":6,"416":6,"417":6,"418":6,"419":6,"420":6,"421":6,"422":6,"423":6,"424":6,"425":6,"426":6,"427":6,"428":6,"429":6,"430":6,"431":6,"432":6,"433":4,"434":4,"435":5,"436":5,"437":5,"438":6,"439":6,"440":4,"441":4,"442":5,"443":5,"444":5,"445":5,"446":5,"447":5,"448":5,"449":5,"450":5,"451":5,"452":5,"453":5,"454":5,"455":5,"456":5,"457":5,"458":5,"459":5,"460":5,"461":5,"462":5,"463":5,"464":5,"465":5,"466":5,"467":5,"468":5,"469":5,"470":5,"471":5,"472":5,"473":5,"474":5,"475":5,"476":5,"477":5,"478":5,"479":5,"480":6,"481":6,"482":6,"483":6,"484":6,"485":6,"486":6,"487":6,"488":6,"489":6,"490":6,"491":6,"492":6,"493":6,"494":6,"495":6,"496":6,"497":6,"498":6,"499":5,"500":5,"501":6,"502":7,"503":9,"504":7,"505":7,"506":5,"507":6,"508":7,"509":7,"510":7,"511":7,"512":9,"513":9,"514":9,"515":9,"516":9,"517":9,"518":9,"519":9,"520":9,"521":7,"522":7,"523":7,"524":7,"525":7,"526":7,"527":7,"528":7,"529":7,"530":7,"531":7,"532":7,"533":7}}},"docs":{"docs":{"1":{"id":"/docs/authentication/api-key","page_id":"/docs/authentication/api-key","type":"page","content":"API key","breadcrumbs":["Docs","Authentication"],"tags":[],"url":"/docs/authentication/api-key"},"2":{"id":"/docs/authentication/api-key-0","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key","content":"Shared-secret dev gate with apiKey(). Not MCP OAuth."},"3":{"id":"/docs/authentication/api-key-1","page_id":"/docs/authentication/api-key","type":"heading","tags":[],"url":"/docs/authentication/api-key#options","content":"Options"},"4":{"id":"/docs/authentication/api-key-2","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key","content":"Use `apiKey()` for internal or development gates only. It validates a header and does not set `ctx.user`. This is not MCP OAuth."},"5":{"id":"/docs/authentication/api-key-3","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key","content":"Clients send the key in the `x-api-key` header by default."},"6":{"id":"/docs/authentication/api-key-4","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key#options","content":"Option"},"7":{"id":"/docs/authentication/api-key-5","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key#options","content":"Default"},"8":{"id":"/docs/authentication/api-key-6","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key#options","content":"Description"},"9":{"id":"/docs/authentication/api-key-7","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key#options","content":"`env`"},"10":{"id":"/docs/authentication/api-key-8","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key#options","content":"`\"API_KEY\"`"},"11":{"id":"/docs/authentication/api-key-9","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key#options","content":"Environment variable name"},"12":{"id":"/docs/authentication/api-key-10","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key#options","content":"`headerName`"},"13":{"id":"/docs/authentication/api-key-11","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key#options","content":"`\"x-api-key\"`"},"14":{"id":"/docs/authentication/api-key-12","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key#options","content":"Request header to read"},"15":{"id":"/docs/authentication/api-key-13","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key#options","content":"`validate`"},"16":{"id":"/docs/authentication/api-key-14","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key#options","content":"compares to env value"},"17":{"id":"/docs/authentication/api-key-15","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key#options","content":"Custom validation function"},"18":{"id":"/docs/authentication/api-key-16","page_id":"/docs/authentication/api-key","tags":[],"type":"text","url":"/docs/authentication/api-key#options","content":"For production user identity, use an OAuth provider from Supabase, Auth0, Better Auth, or Custom."},"19":{"id":"/docs/authentication/auth0","page_id":"/docs/authentication/auth0","type":"page","content":"Auth0","breadcrumbs":["Docs","Authentication"],"tags":[],"url":"/docs/authentication/auth0"},"20":{"id":"/docs/authentication/auth0-0","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0","content":"Auth0 Dynamic Client Registration authentication for bitmcp."},"21":{"id":"/docs/authentication/auth0-1","page_id":"/docs/authentication/auth0","type":"heading","tags":[],"url":"/docs/authentication/auth0#configure-auth0","content":"Configure Auth0"},"22":{"id":"/docs/authentication/auth0-2","page_id":"/docs/authentication/auth0","type":"heading","tags":[],"url":"/docs/authentication/auth0#set-environment-variables","content":"Set environment variables"},"23":{"id":"/docs/authentication/auth0-3","page_id":"/docs/authentication/auth0","type":"heading","tags":[],"url":"/docs/authentication/auth0#configure-bitmcp","content":"Configure bitmcp"},"24":{"id":"/docs/authentication/auth0-4","page_id":"/docs/authentication/auth0","type":"heading","tags":[],"url":"/docs/authentication/auth0#use-ctxuser-in-tools","content":"Use ctx.user in tools"},"25":{"id":"/docs/authentication/auth0-5","page_id":"/docs/authentication/auth0","type":"heading","tags":[],"url":"/docs/authentication/auth0#verify","content":"Verify"},"26":{"id":"/docs/authentication/auth0-6","page_id":"/docs/authentication/auth0","type":"heading","tags":[],"url":"/docs/authentication/auth0#options","content":"Options"},"27":{"id":"/docs/authentication/auth0-7","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0","content":"Use this when Auth0 is your authorization server. MCP clients register directly with Auth0 and send Auth0 access tokens to your MCP server."},"28":{"id":"/docs/authentication/auth0-8","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#configure-auth0","content":"In the Auth0 dashboard:"},"29":{"id":"/docs/authentication/auth0-9","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#configure-auth0","content":"Create an **API** with an identifier you will use as the token audience (for example `https://mcp.example.com/mcp`)"},"30":{"id":"/docs/authentication/auth0-10","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#configure-auth0","content":"Enable **Dynamic Client Registration** for that API if required by your tenant"},"31":{"id":"/docs/authentication/auth0-11","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#configure-auth0","content":"Note your tenant domain (for example `your-tenant.us.auth0.com`)"},"32":{"id":"/docs/authentication/auth0-12","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#configure-auth0","content":"The API identifier should match your public MCP URL or the `resource` you configure in bitmcp."},"33":{"id":"/docs/authentication/auth0-13","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#set-environment-variables","content":"`AUTH0_AUDIENCE` is used as the OAuth resource when you do not pass `resource` in the plugin options."},"34":{"id":"/docs/authentication/auth0-14","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#configure-bitmcp","content":"Or inline:"},"35":{"id":"/docs/authentication/auth0-15","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#use-ctxuser-in-tools","content":"Auth0 roles from the token are available on `ctx.user.roles` when Auth0 includes them in the access token."},"36":{"id":"/docs/authentication/auth0-16","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#verify","content":"Start the server with `pnpm dev` or `pnpm start`"},"37":{"id":"/docs/authentication/auth0-17","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#verify","content":"Connect from an OAuth-capable MCP client"},"38":{"id":"/docs/authentication/auth0-18","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#verify","content":"Complete Auth0 login and client registration"},"39":{"id":"/docs/authentication/auth0-19","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#verify","content":"Call a tool and confirm `ctx.user` is populated"},"40":{"id":"/docs/authentication/auth0-20","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#verify","content":"Call `/mcp` without a token and confirm `401`"},"41":{"id":"/docs/authentication/auth0-21","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#options","content":"Variable"},"42":{"id":"/docs/authentication/auth0-22","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#options","content":"Purpose"},"43":{"id":"/docs/authentication/auth0-23","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#options","content":"`AUTH0_DOMAIN`"},"44":{"id":"/docs/authentication/auth0-24","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#options","content":"Auth0 tenant domain"},"45":{"id":"/docs/authentication/auth0-25","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#options","content":"`AUTH0_AUDIENCE`"},"46":{"id":"/docs/authentication/auth0-26","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#options","content":"Token audience and default OAuth resource"},"47":{"id":"/docs/authentication/auth0-27","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#options","content":"`MCP_URL`"},"48":{"id":"/docs/authentication/auth0-28","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#options","content":"Canonical public MCP URL in production"},"49":{"id":"/docs/authentication/auth0-29","page_id":"/docs/authentication/auth0","tags":[],"type":"text","url":"/docs/authentication/auth0#options","content":"`ctx.user` fields: `id`, `email`, `name`, `nickname`, `picture`, `emailVerified`, `updatedAt`, `roles`."},"50":{"id":"/docs/authentication/better-auth","page_id":"/docs/authentication/better-auth","type":"page","content":"Better Auth","breadcrumbs":["Docs","Authentication"],"tags":[],"url":"/docs/authentication/better-auth"},"51":{"id":"/docs/authentication/better-auth-0","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth","content":"Better Auth OAuth 2.1 provider authentication for bitmcp."},"52":{"id":"/docs/authentication/better-auth-1","page_id":"/docs/authentication/better-auth","type":"heading","tags":[],"url":"/docs/authentication/better-auth#configure-better-auth","content":"Configure Better Auth"},"53":{"id":"/docs/authentication/better-auth-2","page_id":"/docs/authentication/better-auth","type":"heading","tags":[],"url":"/docs/authentication/better-auth#set-environment-variables","content":"Set environment variables"},"54":{"id":"/docs/authentication/better-auth-3","page_id":"/docs/authentication/better-auth","type":"heading","tags":[],"url":"/docs/authentication/better-auth#configure-bitmcp","content":"Configure bitmcp"},"55":{"id":"/docs/authentication/better-auth-4","page_id":"/docs/authentication/better-auth","type":"heading","tags":[],"url":"/docs/authentication/better-auth#use-ctxuser-in-tools","content":"Use ctx.user in tools"},"56":{"id":"/docs/authentication/better-auth-5","page_id":"/docs/authentication/better-auth","type":"heading","tags":[],"url":"/docs/authentication/better-auth#verify","content":"Verify"},"57":{"id":"/docs/authentication/better-auth-6","page_id":"/docs/authentication/better-auth","type":"heading","tags":[],"url":"/docs/authentication/better-auth#options","content":"Options"},"58":{"id":"/docs/authentication/better-auth-7","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth","content":"Use this when Better Auth's OAuth 2.1 plugin is your authorization server. Better Auth owns registration, authorization, consent, and token issuance. bitmcp verifies JWT access tokens against Better Auth's JWKS endpoint."},"59":{"id":"/docs/authentication/better-auth-8","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#configure-better-auth","content":"In your Better Auth app:"},"60":{"id":"/docs/authentication/better-auth-9","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#configure-better-auth","content":"Enable the **OAuth 2.1 Provider** plugin"},"61":{"id":"/docs/authentication/better-auth-10","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#configure-better-auth","content":"Expose the issuer URL including the auth base path (for example `https://app.example.com/api/auth`)"},"62":{"id":"/docs/authentication/better-auth-11","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#configure-better-auth","content":"Confirm JWKS is served at `{authURL}/jwks`"},"63":{"id":"/docs/authentication/better-auth-12","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#configure-bitmcp","content":"Or inline:"},"64":{"id":"/docs/authentication/better-auth-13","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#verify","content":"Start your Better Auth app and the bitmcp server"},"65":{"id":"/docs/authentication/better-auth-14","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#verify","content":"Connect from an OAuth-capable MCP client"},"66":{"id":"/docs/authentication/better-auth-15","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#verify","content":"Complete login through Better Auth"},"67":{"id":"/docs/authentication/better-auth-16","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#verify","content":"Confirm authenticated tools receive `ctx.user`"},"68":{"id":"/docs/authentication/better-auth-17","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#verify","content":"Confirm unauthenticated requests return `401`"},"69":{"id":"/docs/authentication/better-auth-18","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#options","content":"Variable"},"70":{"id":"/docs/authentication/better-auth-19","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#options","content":"Purpose"},"71":{"id":"/docs/authentication/better-auth-20","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#options","content":"`BETTER_AUTH_URL`"},"72":{"id":"/docs/authentication/better-auth-21","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#options","content":"Better Auth issuer base URL"},"73":{"id":"/docs/authentication/better-auth-22","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#options","content":"`MCP_URL`"},"74":{"id":"/docs/authentication/better-auth-23","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#options","content":"Canonical public MCP URL in production"},"75":{"id":"/docs/authentication/better-auth-24","page_id":"/docs/authentication/better-auth","tags":[],"type":"text","url":"/docs/authentication/better-auth#options","content":"`ctx.user` fields: `id`, `email`, `name`, `picture`, `emailVerified`, `sessionId`, `isAnonymous`, `roles`."},"76":{"id":"/docs/authentication/custom","page_id":"/docs/authentication/custom","type":"page","content":"Custom","breadcrumbs":["Docs","Authentication"],"tags":[],"url":"/docs/authentication/custom"},"77":{"id":"/docs/authentication/custom-0","page_id":"/docs/authentication/custom","tags":[],"type":"text","url":"/docs/authentication/custom","content":"Wire any OAuth authorization server with custom() or jwtOAuthProvider()."},"78":{"id":"/docs/authentication/custom-1","page_id":"/docs/authentication/custom","type":"heading","tags":[],"url":"/docs/authentication/custom#jwt-identity-providers","content":"JWT identity providers"},"79":{"id":"/docs/authentication/custom-2","page_id":"/docs/authentication/custom","type":"heading","tags":[],"url":"/docs/authentication/custom#full-control-with-custom","content":"Full control with custom()"},"80":{"id":"/docs/authentication/custom-3","page_id":"/docs/authentication/custom","type":"heading","tags":[],"url":"/docs/authentication/custom#resource-binding","content":"Resource binding"},"81":{"id":"/docs/authentication/custom-4","page_id":"/docs/authentication/custom","type":"heading","tags":[],"url":"/docs/authentication/custom#options","content":"Options"},"82":{"id":"/docs/authentication/custom-5","page_id":"/docs/authentication/custom","tags":[],"type":"text","url":"/docs/authentication/custom","content":"Use a custom provider when your identity provider is not covered by a built-in plugin, you need token introspection instead of JWT verification, or claim mapping differs from the defaults."},"83":{"id":"/docs/authentication/custom-6","page_id":"/docs/authentication/custom","tags":[],"type":"text","url":"/docs/authentication/custom#jwt-identity-providers","content":"Use `jwtOAuthProvider()` with a short spec:"},"84":{"id":"/docs/authentication/custom-7","page_id":"/docs/authentication/custom","tags":[],"type":"text","url":"/docs/authentication/custom#full-control-with-custom","content":"Use `custom()` when verification logic is not a standard JWT flow:"},"85":{"id":"/docs/authentication/custom-8","page_id":"/docs/authentication/custom","tags":[],"type":"text","url":"/docs/authentication/custom#resource-binding","content":"Tokens must target your MCP server. In production set `MCP_URL` to the same URL you use as the OAuth resource (for example `https://mcp.example.com/mcp`). You can also pass `resource` on the provider options."},"86":{"id":"/docs/authentication/custom-9","page_id":"/docs/authentication/custom","tags":[],"type":"text","url":"/docs/authentication/custom#resource-binding","content":"OAuth requires HTTP. `app.stdio()` throws when `auth` is set."},"87":{"id":"/docs/authentication/custom-10","page_id":"/docs/authentication/custom","tags":[],"type":"text","url":"/docs/authentication/custom#options","content":"Variable"},"88":{"id":"/docs/authentication/custom-11","page_id":"/docs/authentication/custom","tags":[],"type":"text","url":"/docs/authentication/custom#options","content":"Purpose"},"89":{"id":"/docs/authentication/custom-12","page_id":"/docs/authentication/custom","tags":[],"type":"text","url":"/docs/authentication/custom#options","content":"`MCP_URL`"},"90":{"id":"/docs/authentication/custom-13","page_id":"/docs/authentication/custom","tags":[],"type":"text","url":"/docs/authentication/custom#options","content":"Canonical public MCP URL in production"},"91":{"id":"/docs/authentication/custom-14","page_id":"/docs/authentication/custom","tags":[],"type":"text","url":"/docs/authentication/custom#options","content":"`BITMCP_STATE_KEY`"},"92":{"id":"/docs/authentication/custom-15","page_id":"/docs/authentication/custom","tags":[],"type":"text","url":"/docs/authentication/custom#options","content":"MRTR state when using confirm or `ctx.ask`"},"93":{"id":"/docs/authentication/custom-16","page_id":"/docs/authentication/custom","tags":[],"type":"text","url":"/docs/authentication/custom#options","content":"Options passed to a factory override environment variables."},"94":{"id":"/docs/authentication/supabase","page_id":"/docs/authentication/supabase","type":"page","content":"Supabase","breadcrumbs":["Docs","Authentication"],"tags":[],"url":"/docs/authentication/supabase"},"95":{"id":"/docs/authentication/supabase-0","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase","content":"Supabase OAuth 2.1 server authentication for bitmcp."},"96":{"id":"/docs/authentication/supabase-1","page_id":"/docs/authentication/supabase","type":"heading","tags":[],"url":"/docs/authentication/supabase#enable-supabase-oauth","content":"Enable Supabase OAuth"},"97":{"id":"/docs/authentication/supabase-2","page_id":"/docs/authentication/supabase","type":"heading","tags":[],"url":"/docs/authentication/supabase#set-environment-variables","content":"Set environment variables"},"98":{"id":"/docs/authentication/supabase-3","page_id":"/docs/authentication/supabase","type":"heading","tags":[],"url":"/docs/authentication/supabase#configure-bitmcp","content":"Configure bitmcp"},"99":{"id":"/docs/authentication/supabase-4","page_id":"/docs/authentication/supabase","type":"heading","tags":[],"url":"/docs/authentication/supabase#use-ctxuser-in-tools","content":"Use ctx.user in tools"},"100":{"id":"/docs/authentication/supabase-5","page_id":"/docs/authentication/supabase","type":"heading","tags":[],"url":"/docs/authentication/supabase#verify","content":"Verify"},"101":{"id":"/docs/authentication/supabase-6","page_id":"/docs/authentication/supabase","type":"heading","tags":[],"url":"/docs/authentication/supabase#row-level-security","content":"Row Level Security"},"102":{"id":"/docs/authentication/supabase-7","page_id":"/docs/authentication/supabase","type":"heading","tags":[],"url":"/docs/authentication/supabase#options","content":"Options"},"103":{"id":"/docs/authentication/supabase-8","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase","content":"Use this when Supabase Auth is your authorization server. Supabase handles login, consent, client registration, and token issuance. bitmcp verifies access tokens and maps claims to `ctx.user`."},"104":{"id":"/docs/authentication/supabase-9","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#enable-supabase-oauth","content":"In the Supabase dashboard:"},"105":{"id":"/docs/authentication/supabase-10","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#enable-supabase-oauth","content":"Open **Authentication → Sign In / Providers → OAuth Server**"},"106":{"id":"/docs/authentication/supabase-11","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#enable-supabase-oauth","content":"Enable the **OAuth 2.1 server**"},"107":{"id":"/docs/authentication/supabase-12","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#enable-supabase-oauth","content":"Enable **Allow Dynamic OAuth Apps** so MCP clients can register"},"108":{"id":"/docs/authentication/supabase-13","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#enable-supabase-oauth","content":"Set the consent URL to a route your app implements (for example `http://localhost:3000/auth/consent`)"},"109":{"id":"/docs/authentication/supabase-14","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#enable-supabase-oauth","content":"Enable at least one sign-in method"},"110":{"id":"/docs/authentication/supabase-15","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#enable-supabase-oauth","content":"Copy your **Project ID** (or full project URL for local/self-hosted Supabase)."},"111":{"id":"/docs/authentication/supabase-16","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#set-environment-variables","content":"Set `MCP_URL` to your public MCP endpoint in production. Set `BITMCP_STATE_KEY` if you use confirm or `ctx.ask`."},"112":{"id":"/docs/authentication/supabase-17","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#configure-bitmcp","content":"Or pass options explicitly:"},"113":{"id":"/docs/authentication/supabase-18","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#use-ctxuser-in-tools","content":"`ctx.user` includes `id`, `email`, `name`, and other Supabase claims when present in the token."},"114":{"id":"/docs/authentication/supabase-19","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#verify","content":"Run the server and connect with an OAuth-capable MCP client. Confirm the client discovers OAuth metadata, login completes through Supabase, authenticated tool calls include `ctx.user`, and requests without a Bearer token return `401`."},"115":{"id":"/docs/authentication/supabase-20","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#row-level-security","content":"To query Supabase as the authenticated user, create a Supabase client in your tool using the access token from the MCP session. bitmcp does not put the raw token on `ctx.user`; read it from your auth layer or pass data scoped by `ctx.user.id` in application code."},"116":{"id":"/docs/authentication/supabase-21","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#row-level-security","content":"For server-owned operations, use the Supabase service role outside the user context."},"117":{"id":"/docs/authentication/supabase-22","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#options","content":"Variable"},"118":{"id":"/docs/authentication/supabase-23","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#options","content":"When"},"119":{"id":"/docs/authentication/supabase-24","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#options","content":"`SUPABASE_PROJECT_ID`"},"120":{"id":"/docs/authentication/supabase-25","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#options","content":"Default project id"},"121":{"id":"/docs/authentication/supabase-26","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#options","content":"`SUPABASE_URL`"},"122":{"id":"/docs/authentication/supabase-27","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#options","content":"Local or self-hosted Supabase instead of `projectId`"},"123":{"id":"/docs/authentication/supabase-28","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#options","content":"`SUPABASE_JWT_SECRET`"},"124":{"id":"/docs/authentication/supabase-29","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#options","content":"Legacy HS256 tokens (32+ bytes)"},"125":{"id":"/docs/authentication/supabase-30","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#options","content":"`MCP_URL`"},"126":{"id":"/docs/authentication/supabase-31","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#options","content":"Canonical public MCP URL in production"},"127":{"id":"/docs/authentication/supabase-32","page_id":"/docs/authentication/supabase","tags":[],"type":"text","url":"/docs/authentication/supabase#options","content":"`ctx.user` fields: `id`, `email`, `name`, `fullName`, `username`, `avatarUrl`, `role`, `aal`, `amr`, `sessionId`. Options passed to the factory override environment variables."},"128":{"id":"/docs/core-concepts/actions","page_id":"/docs/core-concepts/actions","type":"page","content":"Actions","breadcrumbs":["Docs","Core Concepts"],"tags":[],"url":"/docs/core-concepts/actions"},"129":{"id":"/docs/core-concepts/actions-0","page_id":"/docs/core-concepts/actions","tags":[],"type":"text","url":"/docs/core-concepts/actions","content":"defineAction, app-only visibility, and namespaced backing tools."},"130":{"id":"/docs/core-concepts/actions-1","page_id":"/docs/core-concepts/actions","type":"heading","tags":[],"url":"/docs/core-concepts/actions#naming","content":"Naming"},"131":{"id":"/docs/core-concepts/actions-2","page_id":"/docs/core-concepts/actions","type":"heading","tags":[],"url":"/docs/core-concepts/actions#from-the-view","content":"From the View"},"132":{"id":"/docs/core-concepts/actions-3","page_id":"/docs/core-concepts/actions","type":"heading","tags":[],"url":"/docs/core-concepts/actions#why-actions-exist","content":"Why actions exist"},"133":{"id":"/docs/core-concepts/actions-4","page_id":"/docs/core-concepts/actions","tags":[],"type":"text","url":"/docs/core-concepts/actions","content":"Actions are backing tools the View can call. They are hidden from the model."},"134":{"id":"/docs/core-concepts/actions-5","page_id":"/docs/core-concepts/actions","tags":[],"type":"text","url":"/docs/core-concepts/actions","content":"`defineAction` is `defineTool` with `visibility: [\"app\"]` and `kind: \"action\"`. It accepts the same options as `defineTool`."},"135":{"id":"/docs/core-concepts/actions-6","page_id":"/docs/core-concepts/actions","tags":[],"type":"text","url":"/docs/core-concepts/actions#naming","content":"Place named exports in `actions.ts` beside the tool:"},"136":{"id":"/docs/core-concepts/actions-7","page_id":"/docs/core-concepts/actions","tags":[],"type":"text","url":"/docs/core-concepts/actions#naming","content":"The registered name is `forecast.refresh`."},"137":{"id":"/docs/core-concepts/actions-8","page_id":"/docs/core-concepts/actions","tags":[],"type":"text","url":"/docs/core-concepts/actions#from-the-view","content":"Each call is a new stateless `tools/call`. Pass handles or ids explicitly when resuming work."},"138":{"id":"/docs/core-concepts/actions-9","page_id":"/docs/core-concepts/actions","tags":[],"type":"text","url":"/docs/core-concepts/actions#why-actions-exist","content":"Iframe clicks should not pollute `tools/list` with UI-only helpers. The model sees the main tool. The View sees refresh, filter, or pagination helpers."},"139":{"id":"/docs/core-concepts/actions-10","page_id":"/docs/core-concepts/actions","tags":[],"type":"text","url":"/docs/core-concepts/actions#why-actions-exist","content":"This uses the official Apps visibility field, not a bitmcp invention."},"140":{"id":"/docs/core-concepts/confirmations","page_id":"/docs/core-concepts/confirmations","type":"page","content":"Confirmations","breadcrumbs":["Docs","Core Concepts"],"tags":[],"url":"/docs/core-concepts/confirmations"},"141":{"id":"/docs/core-concepts/confirmations-0","page_id":"/docs/core-concepts/confirmations","tags":[],"type":"text","url":"/docs/core-concepts/confirmations","content":"confirm(), MRTR input_required, ctx.ask, and execute after accept."},"142":{"id":"/docs/core-concepts/confirmations-1","page_id":"/docs/core-concepts/confirmations","type":"heading","tags":[],"url":"/docs/core-concepts/confirmations#mrtr","content":"MRTR"},"143":{"id":"/docs/core-concepts/confirmations-2","page_id":"/docs/core-concepts/confirmations","type":"heading","tags":[],"url":"/docs/core-concepts/confirmations#example","content":"Example"},"144":{"id":"/docs/core-concepts/confirmations-3","page_id":"/docs/core-concepts/confirmations","type":"heading","tags":[],"url":"/docs/core-concepts/confirmations#ctxask","content":"ctx.ask"},"145":{"id":"/docs/core-concepts/confirmations-4","page_id":"/docs/core-concepts/confirmations","type":"heading","tags":[],"url":"/docs/core-concepts/confirmations#never-view-only","content":"Never View-only"},"146":{"id":"/docs/core-concepts/confirmations-5","page_id":"/docs/core-concepts/confirmations","tags":[],"type":"text","url":"/docs/core-concepts/confirmations","content":"Destructive or sensitive tools declare confirmation outside `execute`."},"147":{"id":"/docs/core-concepts/confirmations-6","page_id":"/docs/core-concepts/confirmations","tags":[],"type":"text","url":"/docs/core-concepts/confirmations#mrtr","content":"`confirm` maps to `resultType: \"input_required\"` (MRTR)."},"148":{"id":"/docs/core-concepts/confirmations-7","page_id":"/docs/core-concepts/confirmations","tags":[],"type":"text","url":"/docs/core-concepts/confirmations#mrtr","content":"Text-only hosts see `message`"},"149":{"id":"/docs/core-concepts/confirmations-8","page_id":"/docs/core-concepts/confirmations","tags":[],"type":"text","url":"/docs/core-concepts/confirmations#mrtr","content":"UI hosts may render `preview` from the MRTR `structuredContent`"},"150":{"id":"/docs/core-concepts/confirmations-9","page_id":"/docs/core-concepts/confirmations","tags":[],"type":"text","url":"/docs/core-concepts/confirmations#mrtr","content":"`execute` runs once, after accept"},"151":{"id":"/docs/core-concepts/confirmations-10","page_id":"/docs/core-concepts/confirmations","tags":[],"type":"text","url":"/docs/core-concepts/confirmations#mrtr","content":"The mutation does not run on the first call and does not replay"},"152":{"id":"/docs/core-concepts/confirmations-11","page_id":"/docs/core-concepts/confirmations","tags":[],"type":"text","url":"/docs/core-concepts/confirmations#example","content":"The `examples/confirm` app deletes rows only after MRTR acceptance. Try the tool in a text-only client to verify MRTR without a View:"},"153":{"id":"/docs/core-concepts/confirmations-12","page_id":"/docs/core-concepts/confirmations","tags":[],"type":"text","url":"/docs/core-concepts/confirmations#ctxask","content":"For mid-flight fields, use a continuation inside `execute`:"},"154":{"id":"/docs/core-concepts/confirmations-13","page_id":"/docs/core-concepts/confirmations","tags":[],"type":"text","url":"/docs/core-concepts/confirmations#ctxask","content":"`ctx.ask` re-enters `execute` on a new request with `inputResponses`. Do not mutate before `ask`."},"155":{"id":"/docs/core-concepts/confirmations-14","page_id":"/docs/core-concepts/confirmations","tags":[],"type":"text","url":"/docs/core-concepts/confirmations#ctxask","content":"Prefer `confirm` for yes/no gates. Raw `ctx.inputRequired` remains an escape hatch."},"156":{"id":"/docs/core-concepts/confirmations-15","page_id":"/docs/core-concepts/confirmations","tags":[],"type":"text","url":"/docs/core-concepts/confirmations#never-view-only","content":"A View must not be the only confirm path for a side effect. MRTR works in terminal hosts. Views can show previews, not replace the gate."},"157":{"id":"/docs/core-concepts/handles","page_id":"/docs/core-concepts/handles","type":"page","content":"Handles","breadcrumbs":["Docs","Core Concepts"],"tags":[],"url":"/docs/core-concepts/handles"},"158":{"id":"/docs/core-concepts/handles-0","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles","content":"ctx.handle(), HandleStore, and no sessions."},"159":{"id":"/docs/core-concepts/handles-1","page_id":"/docs/core-concepts/handles","type":"heading","tags":[],"url":"/docs/core-concepts/handles#ctxhandle","content":"ctx.handle()"},"160":{"id":"/docs/core-concepts/handles-2","page_id":"/docs/core-concepts/handles","type":"heading","tags":[],"url":"/docs/core-concepts/handles#stateless-requests","content":"Stateless requests"},"161":{"id":"/docs/core-concepts/handles-3","page_id":"/docs/core-concepts/handles","type":"heading","tags":[],"url":"/docs/core-concepts/handles#long-work","content":"Long work"},"162":{"id":"/docs/core-concepts/handles-4","page_id":"/docs/core-concepts/handles","type":"heading","tags":[],"url":"/docs/core-concepts/handles#what-this-proves","content":"What this proves"},"163":{"id":"/docs/core-concepts/handles-5","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles","content":"bitmcp is stateless. There is no `Mcp-Session-Id` and no sticky server memory."},"164":{"id":"/docs/core-concepts/handles-6","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles#ctxhandle","content":"Mints an opaque id (UUID). Store whatever you need under that id with a `HandleStore`:"},"165":{"id":"/docs/core-concepts/handles-7","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles#ctxhandle","content":"`memoryHandleStore()` in development"},"166":{"id":"/docs/core-concepts/handles-8","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles#ctxhandle","content":"KV, Redis, or D1 in production, same `{ get, set }` shape"},"167":{"id":"/docs/core-concepts/handles-9","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles#ctxhandle","content":"The model and the View pass `jobId` back as a normal argument on the next call."},"168":{"id":"/docs/core-concepts/handles-10","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles#stateless-requests","content":"Every HTTP request builds a fresh MCP server. Tool code must assume the next call may hit another replica."},"169":{"id":"/docs/core-concepts/handles-11","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles#stateless-requests","content":"Handles make that safe. Sessions do not."},"170":{"id":"/docs/core-concepts/handles-12","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles#long-work","content":"Return a handle immediately. Let the View poll status via a backing tool. Each poll is a new stateless `tools/call`. `callTool` updates `useApp().result` from `structuredContent`."},"171":{"id":"/docs/core-concepts/handles-13","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles#long-work","content":"The `examples/task` app starts a long ingest job and returns a handle right away:"},"172":{"id":"/docs/core-concepts/handles-14","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles#long-work","content":"Production stores must implement the same `HandleStore` `{ get, set }` shape against KV, Redis, or D1. The in-memory adapter is for a single process."},"173":{"id":"/docs/core-concepts/handles-15","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles#what-this-proves","content":"No open SSE session"},"174":{"id":"/docs/core-concepts/handles-16","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles#what-this-proves","content":"Handles survive restarts when backed by storage you provide"},"175":{"id":"/docs/core-concepts/handles-17","page_id":"/docs/core-concepts/handles","tags":[],"type":"text","url":"/docs/core-concepts/handles#what-this-proves","content":"Stateless replicas can serve status checks with the same `jobId` arg"},"176":{"id":"/docs/core-concepts/tools","page_id":"/docs/core-concepts/tools","type":"page","content":"Tools","breadcrumbs":["Docs","Core Concepts"],"tags":[],"url":"/docs/core-concepts/tools"},"177":{"id":"/docs/core-concepts/tools-0","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools","content":"defineTool, schemas, return data, result(), and CSP allowlists."},"178":{"id":"/docs/core-concepts/tools-1","page_id":"/docs/core-concepts/tools","type":"heading","tags":[],"url":"/docs/core-concepts/tools#return-data","content":"Return data"},"179":{"id":"/docs/core-concepts/tools-2","page_id":"/docs/core-concepts/tools","type":"heading","tags":[],"url":"/docs/core-concepts/tools#schemas","content":"Schemas"},"180":{"id":"/docs/core-concepts/tools-3","page_id":"/docs/core-concepts/tools","type":"heading","tags":[],"url":"/docs/core-concepts/tools#csp-allowlists","content":"CSP allowlists"},"181":{"id":"/docs/core-concepts/tools-4","page_id":"/docs/core-concepts/tools","type":"heading","tags":[],"url":"/docs/core-concepts/tools#visibility","content":"Visibility"},"182":{"id":"/docs/core-concepts/tools-5","page_id":"/docs/core-concepts/tools","type":"heading","tags":[],"url":"/docs/core-concepts/tools#rules","content":"Rules"},"183":{"id":"/docs/core-concepts/tools-6","page_id":"/docs/core-concepts/tools","type":"heading","tags":[],"url":"/docs/core-concepts/tools#definetool-options","content":"defineTool options"},"184":{"id":"/docs/core-concepts/tools-7","page_id":"/docs/core-concepts/tools","type":"heading","tags":[],"url":"/docs/core-concepts/tools#toolcontext","content":"ToolContext"},"185":{"id":"/docs/core-concepts/tools-8","page_id":"/docs/core-concepts/tools","type":"heading","tags":[],"url":"/docs/core-concepts/tools#result-helpers","content":"Result helpers"},"186":{"id":"/docs/core-concepts/tools-9","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools","content":"A tool is a server function exposed to the model through MCP."},"187":{"id":"/docs/core-concepts/tools-10","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#return-data","content":"Returning an object produces `structuredContent` for the View and text for every host (generated summary or JSON)."},"188":{"id":"/docs/core-concepts/tools-11","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#return-data","content":"Custom text:"},"189":{"id":"/docs/core-concepts/tools-12","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#schemas","content":"`input` validates tool arguments (Zod or Standard Schema)"},"190":{"id":"/docs/core-concepts/tools-13","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#schemas","content":"`output` validates the return value and types the View result"},"191":{"id":"/docs/core-concepts/tools-14","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#csp-allowlists","content":"Default CSP is deny-all for iframe network access."},"192":{"id":"/docs/core-concepts/tools-15","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#csp-allowlists","content":"`connect` — `connect-src` allowlist for fetch from the View"},"193":{"id":"/docs/core-concepts/tools-16","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#csp-allowlists","content":"`resources` — asset src allowlist for CDN scripts or styles"},"194":{"id":"/docs/core-concepts/tools-17","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#visibility","content":"Defaults to `[\"model\", \"app\"]`. Model-visible tools appear in `tools/list`. Use Actions for app-only tools."},"195":{"id":"/docs/core-concepts/tools-18","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#rules","content":"`execute` runs on the server only"},"196":{"id":"/docs/core-concepts/tools-19","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#rules","content":"Text is always produced"},"197":{"id":"/docs/core-concepts/tools-20","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#rules","content":"Presence of `view.tsx` attaches UI. Do not set `resourceUri` manually"},"198":{"id":"/docs/core-concepts/tools-21","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#rules","content":"`execute` must not return `undefined`"},"199":{"id":"/docs/core-concepts/tools-22","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#definetool-options","content":"Happy-path fields: `description`, `input`, `execute`. `confirm` sets `destructiveHint: true` unless you override `annotations`."},"200":{"id":"/docs/core-concepts/tools-23","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"Field"},"201":{"id":"/docs/core-concepts/tools-24","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"Description"},"202":{"id":"/docs/core-concepts/tools-25","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"`ask(schema, message?)`"},"203":{"id":"/docs/core-concepts/tools-26","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"MRTR continuation inside `execute`"},"204":{"id":"/docs/core-concepts/tools-27","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"`inputRequired(spec)`"},"205":{"id":"/docs/core-concepts/tools-28","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"Raw MRTR escape hatch"},"206":{"id":"/docs/core-concepts/tools-29","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"`inputResponses`"},"207":{"id":"/docs/core-concepts/tools-30","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"Answers from a prior `ask`"},"208":{"id":"/docs/core-concepts/tools-31","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"`handle()`"},"209":{"id":"/docs/core-concepts/tools-32","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"Mint opaque handle id"},"210":{"id":"/docs/core-concepts/tools-33","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"`user`"},"211":{"id":"/docs/core-concepts/tools-34","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"Authenticated user when OAuth is enabled"},"212":{"id":"/docs/core-concepts/tools-35","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"`request`"},"213":{"id":"/docs/core-concepts/tools-36","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"Incoming HTTP request or stdio envelope"},"214":{"id":"/docs/core-concepts/tools-37","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#toolcontext","content":"When OAuth is enabled and the request is authenticated:"},"215":{"id":"/docs/core-concepts/tools-38","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#result-helpers","content":"`ConfirmResult` shape:"},"216":{"id":"/docs/core-concepts/tools-39","page_id":"/docs/core-concepts/tools","tags":[],"type":"text","url":"/docs/core-concepts/tools#result-helpers","content":"`preview` is included on the MRTR `structuredContent` so a View can render it. Text clients still see `message`."},"217":{"id":"/docs/core-concepts/views","page_id":"/docs/core-concepts/views","type":"page","content":"Views","breadcrumbs":["Docs","Core Concepts"],"tags":[],"url":"/docs/core-concepts/views"},"218":{"id":"/docs/core-concepts/views-0","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views","content":"Hashed ui:// HTML, Tailwind, useApp(), and callTool()."},"219":{"id":"/docs/core-concepts/views-1","page_id":"/docs/core-concepts/views","type":"heading","tags":[],"url":"/docs/core-concepts/views#ui-resources","content":"ui:// resources"},"220":{"id":"/docs/core-concepts/views-2","page_id":"/docs/core-concepts/views","type":"heading","tags":[],"url":"/docs/core-concepts/views#html-shell","content":"HTML shell"},"221":{"id":"/docs/core-concepts/views-3","page_id":"/docs/core-concepts/views","type":"heading","tags":[],"url":"/docs/core-concepts/views#data-flow","content":"Data flow"},"222":{"id":"/docs/core-concepts/views-4","page_id":"/docs/core-concepts/views","type":"heading","tags":[],"url":"/docs/core-concepts/views#useapp","content":"useApp()"},"223":{"id":"/docs/core-concepts/views-5","page_id":"/docs/core-concepts/views","type":"heading","tags":[],"url":"/docs/core-concepts/views#calltool","content":"callTool"},"224":{"id":"/docs/core-concepts/views-6","page_id":"/docs/core-concepts/views","type":"heading","tags":[],"url":"/docs/core-concepts/views#styling","content":"Styling"},"225":{"id":"/docs/core-concepts/views-7","page_id":"/docs/core-concepts/views","type":"heading","tags":[],"url":"/docs/core-concepts/views#host-theme","content":"Host theme"},"226":{"id":"/docs/core-concepts/views-8","page_id":"/docs/core-concepts/views","type":"heading","tags":[],"url":"/docs/core-concepts/views#escape-hatches","content":"Escape hatches"},"227":{"id":"/docs/core-concepts/views-9","page_id":"/docs/core-concepts/views","type":"heading","tags":[],"url":"/docs/core-concepts/views#build-boundaries","content":"Build boundaries"},"228":{"id":"/docs/core-concepts/views-10","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views","content":"A View is a React component compiled into a predeclared HTML resource."},"229":{"id":"/docs/core-concepts/views-11","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#ui-resources","content":"The compiler bundles `view.tsx` with esbuild into one HTML document with MIME type `text/html;profile=mcp-app`."},"230":{"id":"/docs/core-concepts/views-12","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#ui-resources","content":"URI shape: `ui://tools/<name>/<hash>`"},"231":{"id":"/docs/core-concepts/views-13","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#ui-resources","content":"Content-addressed: the hash is the compiled HTML (scripts and CSS inlined), not the TSX source"},"232":{"id":"/docs/core-concepts/views-14","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#ui-resources","content":"Cacheable with `ttlMs` and `cacheScope: public`"},"233":{"id":"/docs/core-concepts/views-15","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#html-shell","content":"The compiler injects:"},"234":{"id":"/docs/core-concepts/views-16","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#html-shell","content":"Official Apps `useApp({ appInfo })`"},"235":{"id":"/docs/core-concepts/views-17","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#html-shell","content":"Host theme via `useHostStyles`"},"236":{"id":"/docs/core-concepts/views-18","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#html-shell","content":"Tailwind v4 CSS for classes used in that View"},"237":{"id":"/docs/core-concepts/views-19","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#html-shell","content":"Typed `result` from the sibling tool"},"238":{"id":"/docs/core-concepts/views-20","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#html-shell","content":"Authors never pass `appInfo` or call `useHostStyles` on the happy path. The compiler injects `AppShell` in the HTML shell. Authors do not render it in `view.tsx`."},"239":{"id":"/docs/core-concepts/views-21","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#data-flow","content":"Host calls the tool"},"240":{"id":"/docs/core-concepts/views-22","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#data-flow","content":"`structuredContent` arrives via `ontoolresult`"},"241":{"id":"/docs/core-concepts/views-23","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#data-flow","content":"Host loads the hashed HTML in a sandbox iframe"},"242":{"id":"/docs/core-concepts/views-24","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#data-flow","content":"View reads `result` from `useApp()`"},"243":{"id":"/docs/core-concepts/views-25","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"Import from `bitmcp/react`:"},"244":{"id":"/docs/core-concepts/views-26","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"File-based tools generate `.bitmcp/views.d.ts` so `result` is inferred from the sibling tool. Pass a generic only when you need to override that."},"245":{"id":"/docs/core-concepts/views-27","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"Field"},"246":{"id":"/docs/core-concepts/views-28","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"Description"},"247":{"id":"/docs/core-concepts/views-29","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"`result`"},"248":{"id":"/docs/core-concepts/views-30","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"`structuredContent` from the host via `ontoolresult`, or from `callTool`"},"249":{"id":"/docs/core-concepts/views-31","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"`callTool(name, args?)`"},"250":{"id":"/docs/core-concepts/views-32","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"Calls a backing tool through the host and updates `result`"},"251":{"id":"/docs/core-concepts/views-33","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"`app`"},"252":{"id":"/docs/core-concepts/views-34","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"Official Apps client instance"},"253":{"id":"/docs/core-concepts/views-35","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"`isConnected`"},"254":{"id":"/docs/core-concepts/views-36","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"Connection state"},"255":{"id":"/docs/core-concepts/views-37","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"`error`"},"256":{"id":"/docs/core-concepts/views-38","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"Connection error if any"},"257":{"id":"/docs/core-concepts/views-39","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#useapp","content":"`callTool` keeps a stable function identity so poll intervals do not reset every render."},"258":{"id":"/docs/core-concepts/views-40","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#calltool","content":"Views never call your server directly. `callTool` goes through the host, which issues a new stateless `tools/call`. Network from the iframe is CSP-gated. Tool calls are not."},"259":{"id":"/docs/core-concepts/views-41","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#styling","content":"Every View is compiled with Tailwind v4. Use `className` utilities. You do not add a Vite plugin or a `tailwind.config` file."},"260":{"id":"/docs/core-concepts/views-42","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#styling","content":"Each View is an isolated iframe. The compiler scans that View and emits only the utilities it uses. CSS is inlined in a `<style>` tag."},"261":{"id":"/docs/core-concepts/views-43","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"`useHostStyles` applies host CSS variables. bitmcp maps a subset into Tailwind `@theme` so chat UI can follow the host:"},"262":{"id":"/docs/core-concepts/views-44","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"Class"},"263":{"id":"/docs/core-concepts/views-45","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"Host variable"},"264":{"id":"/docs/core-concepts/views-46","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"`bg-background`"},"265":{"id":"/docs/core-concepts/views-47","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"`--color-background-primary`"},"266":{"id":"/docs/core-concepts/views-48","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"`text-foreground`"},"267":{"id":"/docs/core-concepts/views-49","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"`--color-text-primary`"},"268":{"id":"/docs/core-concepts/views-50","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"`text-muted`"},"269":{"id":"/docs/core-concepts/views-51","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"`--color-text-secondary`"},"270":{"id":"/docs/core-concepts/views-52","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"`border-border`"},"271":{"id":"/docs/core-concepts/views-53","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"`--color-border-primary`"},"272":{"id":"/docs/core-concepts/views-54","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"`font-sans`"},"273":{"id":"/docs/core-concepts/views-55","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"`--font-sans`"},"274":{"id":"/docs/core-concepts/views-56","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#host-theme","content":"`html`, `body`, and `#root` stay transparent. The compiler injects Tailwind. Add `src/views.css` only for extra `@theme` tokens or `@source` paths. Tailwind IntelliSense reads `.bitmcp/views.css`."},"275":{"id":"/docs/core-concepts/views-57","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#escape-hatches","content":"Re-exported from `@modelcontextprotocol/ext-apps/react`:"},"276":{"id":"/docs/core-concepts/views-58","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#escape-hatches","content":"Use these only when you need direct access to the official client. The happy path is `useApp()`."},"277":{"id":"/docs/core-concepts/views-59","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#build-boundaries","content":"Do not import `tool.ts` from `view.tsx`"},"278":{"id":"/docs/core-concepts/views-60","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#build-boundaries","content":"Do not import Node builtins or secrets in Views"},"279":{"id":"/docs/core-concepts/views-61","page_id":"/docs/core-concepts/views","tags":[],"type":"text","url":"/docs/core-concepts/views#build-boundaries","content":"`fetch` in a View requires a sibling `connect` allowlist"},"280":{"id":"/docs/deployment/cloudflare","page_id":"/docs/deployment/cloudflare","type":"page","content":"Cloudflare","breadcrumbs":["Docs","Deployment"],"tags":[],"url":"/docs/deployment/cloudflare"},"281":{"id":"/docs/deployment/cloudflare-0","page_id":"/docs/deployment/cloudflare","tags":[],"type":"text","url":"/docs/deployment/cloudflare","content":"Deploy bitmcp on Cloudflare Workers from dist/server.js."},"282":{"id":"/docs/deployment/cloudflare-1","page_id":"/docs/deployment/cloudflare","type":"heading","tags":[],"url":"/docs/deployment/cloudflare#scaffold-for-cloudflare","content":"Scaffold for Cloudflare"},"283":{"id":"/docs/deployment/cloudflare-2","page_id":"/docs/deployment/cloudflare","type":"heading","tags":[],"url":"/docs/deployment/cloudflare#set-secrets-and-config","content":"Set secrets and config"},"284":{"id":"/docs/deployment/cloudflare-3","page_id":"/docs/deployment/cloudflare","type":"heading","tags":[],"url":"/docs/deployment/cloudflare#deploy","content":"Deploy"},"285":{"id":"/docs/deployment/cloudflare-4","page_id":"/docs/deployment/cloudflare","type":"heading","tags":[],"url":"/docs/deployment/cloudflare#bitmcpconfigts","content":"bitmcp.config.ts"},"286":{"id":"/docs/deployment/cloudflare-5","page_id":"/docs/deployment/cloudflare","type":"heading","tags":[],"url":"/docs/deployment/cloudflare#see-also","content":"See also"},"287":{"id":"/docs/deployment/cloudflare-6","page_id":"/docs/deployment/cloudflare","tags":[],"type":"text","url":"/docs/deployment/cloudflare","content":"`bitmcp build` emits `dist/server.js`, hashed View HTML under `dist/ui/`, and `dist/manifest.json`. Cloudflare Workers serve `dist/server.js` directly."},"288":{"id":"/docs/deployment/cloudflare-7","page_id":"/docs/deployment/cloudflare","tags":[],"type":"text","url":"/docs/deployment/cloudflare#scaffold-for-cloudflare","content":"That writes `deploy: \"cloudflare\"` and `wrangler.jsonc` with `main` set to `dist/server.js`."},"289":{"id":"/docs/deployment/cloudflare-8","page_id":"/docs/deployment/cloudflare","tags":[],"type":"text","url":"/docs/deployment/cloudflare#set-secrets-and-config","content":"Set `BITMCP_STATE_KEY` as a Worker secret or var"},"290":{"id":"/docs/deployment/cloudflare-9","page_id":"/docs/deployment/cloudflare","tags":[],"type":"text","url":"/docs/deployment/cloudflare#set-secrets-and-config","content":"Set `http.allowedHosts` in `bitmcp.config.ts` to your workers.dev or custom domain"},"291":{"id":"/docs/deployment/cloudflare-10","page_id":"/docs/deployment/cloudflare","tags":[],"type":"text","url":"/docs/deployment/cloudflare#set-secrets-and-config","content":"Set `MCP_URL` when OAuth is enabled"},"292":{"id":"/docs/deployment/cloudflare-11","page_id":"/docs/deployment/cloudflare","tags":[],"type":"text","url":"/docs/deployment/cloudflare#set-secrets-and-config","content":"`nodejs_compat` is required. Confirmations and `ctx.ask` require `BITMCP_STATE_KEY` in production."},"293":{"id":"/docs/deployment/cloudflare-12","page_id":"/docs/deployment/cloudflare","tags":[],"type":"text","url":"/docs/deployment/cloudflare#deploy","content":"Wrangler runs `pnpm build` and serves `dist/server.js` directly."},"294":{"id":"/docs/deployment/cloudflare-13","page_id":"/docs/deployment/cloudflare","tags":[],"type":"text","url":"/docs/deployment/cloudflare#bitmcpconfigts","content":"When OAuth is enabled, set `MCP_URL` to your public MCP endpoint. See Authentication."},"295":{"id":"/docs/deployment/cloudflare-14","page_id":"/docs/deployment/cloudflare","tags":[],"type":"text","url":"/docs/deployment/cloudflare#see-also","content":"Vercel and Node and custom deploy the same `dist/server.js` artifact."},"296":{"id":"/docs/deployment/node","page_id":"/docs/deployment/node","type":"page","content":"Node and custom","breadcrumbs":["Docs","Deployment"],"tags":[],"url":"/docs/deployment/node"},"297":{"id":"/docs/deployment/node-0","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node","content":"Run bitmcp on Node, embed in an existing app, and operate stateless replicas."},"298":{"id":"/docs/deployment/node-1","page_id":"/docs/deployment/node","type":"heading","tags":[],"url":"/docs/deployment/node#node","content":"Node"},"299":{"id":"/docs/deployment/node-2","page_id":"/docs/deployment/node","type":"heading","tags":[],"url":"/docs/deployment/node#embed-in-an-existing-app","content":"Embed in an existing app"},"300":{"id":"/docs/deployment/node-3","page_id":"/docs/deployment/node","type":"heading","tags":[],"url":"/docs/deployment/node#createapp-escape-hatch","content":"createApp escape hatch"},"301":{"id":"/docs/deployment/node-4","page_id":"/docs/deployment/node","type":"heading","tags":[],"url":"/docs/deployment/node#stateless-replicas","content":"Stateless replicas"},"302":{"id":"/docs/deployment/node-5","page_id":"/docs/deployment/node","type":"heading","tags":[],"url":"/docs/deployment/node#host-and-origin-guards","content":"Host and Origin guards"},"303":{"id":"/docs/deployment/node-6","page_id":"/docs/deployment/node","type":"heading","tags":[],"url":"/docs/deployment/node#see-also","content":"See also"},"304":{"id":"/docs/deployment/node-7","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node","content":"`bitmcp build` emits `dist/server.js` with a Web-standard `fetch` handler plus `GET`, `POST`, and `OPTIONS`. Use that file on Node or any Fetch runtime."},"305":{"id":"/docs/deployment/node-8","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#node","content":"`bitmcp start` loads `dist/server.js` and listens on Streamable HTTP."},"306":{"id":"/docs/deployment/node-9","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#node","content":"Default listen address: `http://127.0.0.1:3000/mcp`"},"307":{"id":"/docs/deployment/node-10","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#node","content":"Override with `--port` or `MCP_PORT`, `MCP_HOST`, and `MCP_PATH`. `GET /health` is also served."},"308":{"id":"/docs/deployment/node-11","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#node","content":"Set `deploy: \"node\"` in `bitmcp.config.ts` (this is the default)."},"309":{"id":"/docs/deployment/node-12","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#node","content":"Set `BITMCP_STATE_KEY` in production. Configure `http.allowedHosts` and `http.cors` in `bitmcp.config.ts` for public HTTP."},"310":{"id":"/docs/deployment/node-13","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#embed-in-an-existing-app","content":"`dist/server.js` already exports `GET`, `POST`, `OPTIONS`, and `default.fetch`. Point a platform entry at that file, or call `app.fetch` yourself:"},"311":{"id":"/docs/deployment/node-14","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#createapp-escape-hatch","content":"The CLI uses `createApp.fromDir()` internally. You rarely need this in application code, but it is useful for tests and custom servers:"},"312":{"id":"/docs/deployment/node-15","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#createapp-escape-hatch","content":"Method"},"313":{"id":"/docs/deployment/node-16","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#createapp-escape-hatch","content":"Description"},"314":{"id":"/docs/deployment/node-17","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#createapp-escape-hatch","content":"`stdio()`"},"315":{"id":"/docs/deployment/node-18","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#createapp-escape-hatch","content":"Start stdio transport"},"316":{"id":"/docs/deployment/node-19","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#createapp-escape-hatch","content":"`http(options?)`"},"317":{"id":"/docs/deployment/node-20","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#createapp-escape-hatch","content":"Start Streamable HTTP on Node"},"318":{"id":"/docs/deployment/node-21","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#createapp-escape-hatch","content":"`fetch(request)`"},"319":{"id":"/docs/deployment/node-22","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#createapp-escape-hatch","content":"Web-standard handler"},"320":{"id":"/docs/deployment/node-23","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#createapp-escape-hatch","content":"Loads tools from `src/tools/` using the same discovery rules as the compiler."},"321":{"id":"/docs/deployment/node-24","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#stateless-replicas","content":"Every request builds a fresh MCP server. There is no `Mcp-Session-Id`."},"322":{"id":"/docs/deployment/node-25","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#stateless-replicas","content":"Pass handles and ids in tool arguments"},"323":{"id":"/docs/deployment/node-26","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#stateless-replicas","content":"Store job state behind a `HandleStore` (KV, Redis, D1)"},"324":{"id":"/docs/deployment/node-27","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#stateless-replicas","content":"View HTML is content-addressed. Every replica serves the same hash for the same build"},"325":{"id":"/docs/deployment/node-28","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#host-and-origin-guards","content":"localhost bindings include Host and Origin checks. Production `app.fetch` only enforces hosts you put in `allowedHosts`."},"326":{"id":"/docs/deployment/node-29","page_id":"/docs/deployment/node","tags":[],"type":"text","url":"/docs/deployment/node#see-also","content":"Vercel and Cloudflare for platform-specific scaffold and config."},"327":{"id":"/docs/deployment/vercel","page_id":"/docs/deployment/vercel","type":"page","content":"Vercel","breadcrumbs":["Docs","Deployment"],"tags":[],"url":"/docs/deployment/vercel"},"328":{"id":"/docs/deployment/vercel-0","page_id":"/docs/deployment/vercel","tags":[],"type":"text","url":"/docs/deployment/vercel","content":"Deploy bitmcp on Vercel with a single server artifact."},"329":{"id":"/docs/deployment/vercel-1","page_id":"/docs/deployment/vercel","type":"heading","tags":[],"url":"/docs/deployment/vercel#scaffold-for-vercel","content":"Scaffold for Vercel"},"330":{"id":"/docs/deployment/vercel-2","page_id":"/docs/deployment/vercel","type":"heading","tags":[],"url":"/docs/deployment/vercel#set-environment-variables","content":"Set environment variables"},"331":{"id":"/docs/deployment/vercel-3","page_id":"/docs/deployment/vercel","type":"heading","tags":[],"url":"/docs/deployment/vercel#deploy","content":"Deploy"},"332":{"id":"/docs/deployment/vercel-4","page_id":"/docs/deployment/vercel","type":"heading","tags":[],"url":"/docs/deployment/vercel#bitmcpconfigts","content":"bitmcp.config.ts"},"333":{"id":"/docs/deployment/vercel-5","page_id":"/docs/deployment/vercel","type":"heading","tags":[],"url":"/docs/deployment/vercel#see-also","content":"See also"},"334":{"id":"/docs/deployment/vercel-6","page_id":"/docs/deployment/vercel","tags":[],"type":"text","url":"/docs/deployment/vercel","content":"`bitmcp build` emits `dist/server.js`, hashed View HTML under `dist/ui/`, and `dist/manifest.json`. The same server file runs on every platform."},"335":{"id":"/docs/deployment/vercel-7","page_id":"/docs/deployment/vercel","tags":[],"type":"text","url":"/docs/deployment/vercel#scaffold-for-vercel","content":"That writes `deploy: \"vercel\"` and `vercel.json` with a rewrite from `/mcp` to `/api/mcp`."},"336":{"id":"/docs/deployment/vercel-8","page_id":"/docs/deployment/vercel","tags":[],"type":"text","url":"/docs/deployment/vercel#set-environment-variables","content":"In the Vercel project:"},"337":{"id":"/docs/deployment/vercel-9","page_id":"/docs/deployment/vercel","tags":[],"type":"text","url":"/docs/deployment/vercel#set-environment-variables","content":"Set `BITMCP_STATE_KEY`"},"338":{"id":"/docs/deployment/vercel-10","page_id":"/docs/deployment/vercel","tags":[],"type":"text","url":"/docs/deployment/vercel#set-environment-variables","content":"Set `http.allowedHosts` in `bitmcp.config.ts` to your deployment host"},"339":{"id":"/docs/deployment/vercel-11","page_id":"/docs/deployment/vercel","tags":[],"type":"text","url":"/docs/deployment/vercel#set-environment-variables","content":"Set `MCP_URL` when OAuth is enabled"},"340":{"id":"/docs/deployment/vercel-12","page_id":"/docs/deployment/vercel","tags":[],"type":"text","url":"/docs/deployment/vercel#set-environment-variables","content":"Confirmations and `ctx.ask` mint `requestState` tokens that must verify on any replica. `BITMCP_STATE_KEY` is required in production."},"341":{"id":"/docs/deployment/vercel-13","page_id":"/docs/deployment/vercel","tags":[],"type":"text","url":"/docs/deployment/vercel#deploy","content":"`bitmcp build` writes gitignored `api/mcp.js` that re-exports `dist/server.js`. `vercel` runs `pnpm build` first."},"342":{"id":"/docs/deployment/vercel-14","page_id":"/docs/deployment/vercel","tags":[],"type":"text","url":"/docs/deployment/vercel#bitmcpconfigts","content":"When OAuth is enabled, set `MCP_URL` to your public MCP endpoint (for example `https://your-app.vercel.app/mcp`). See Supabase or other auth guides."},"343":{"id":"/docs/deployment/vercel-15","page_id":"/docs/deployment/vercel","tags":[],"type":"text","url":"/docs/deployment/vercel#see-also","content":"Cloudflare and Node and custom deploy the same `dist/server.js` artifact."},"344":{"id":"/docs/discoverability/server-card","page_id":"/docs/discoverability/server-card","type":"page","content":"Server card","breadcrumbs":["Docs","Discoverability"],"tags":[],"url":"/docs/discoverability/server-card"},"345":{"id":"/docs/discoverability/server-card-0","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card","content":"Publish MCP server metadata at /mcp/server-card for client discovery."},"346":{"id":"/docs/discoverability/server-card-1","page_id":"/docs/discoverability/server-card","type":"heading","tags":[],"url":"/docs/discoverability/server-card#endpoints","content":"Endpoints"},"347":{"id":"/docs/discoverability/server-card-2","page_id":"/docs/discoverability/server-card","type":"heading","tags":[],"url":"/docs/discoverability/server-card#default-card","content":"Default card"},"348":{"id":"/docs/discoverability/server-card-3","page_id":"/docs/discoverability/server-card","type":"heading","tags":[],"url":"/docs/discoverability/server-card#configure","content":"Configure"},"349":{"id":"/docs/discoverability/server-card-4","page_id":"/docs/discoverability/server-card","type":"heading","tags":[],"url":"/docs/discoverability/server-card#remote-url-resolution","content":"Remote URL resolution"},"350":{"id":"/docs/discoverability/server-card-5","page_id":"/docs/discoverability/server-card","type":"heading","tags":[],"url":"/docs/discoverability/server-card#vercel-rewrite","content":"Vercel rewrite"},"351":{"id":"/docs/discoverability/server-card-6","page_id":"/docs/discoverability/server-card","type":"heading","tags":[],"url":"/docs/discoverability/server-card#next-step","content":"Next step"},"352":{"id":"/docs/discoverability/server-card-7","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card","content":"MCP server cards let clients discover your server name, description, and Streamable HTTP endpoint before connecting. bitmcp serves a spec-shaped JSON document automatically."},"353":{"id":"/docs/discoverability/server-card-8","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#endpoints","content":"For an MCP path of `/mcp`, bitmcp serves:"},"354":{"id":"/docs/discoverability/server-card-9","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#endpoints","content":"URL"},"355":{"id":"/docs/discoverability/server-card-10","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#endpoints","content":"Purpose"},"356":{"id":"/docs/discoverability/server-card-11","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#endpoints","content":"`GET /mcp/server-card`"},"357":{"id":"/docs/discoverability/server-card-12","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#endpoints","content":"Primary server card endpoint"},"358":{"id":"/docs/discoverability/server-card-13","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#endpoints","content":"`GET /.well-known/mcp/server-card.json`"},"359":{"id":"/docs/discoverability/server-card-14","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#endpoints","content":"Well-known alias"},"360":{"id":"/docs/discoverability/server-card-15","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#endpoints","content":"Responses use `Content-Type: application/mcp-server-card+json`, public caching with ETag support, and CORS headers for browser discovery."},"361":{"id":"/docs/discoverability/server-card-16","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#default-card","content":"When `serverCard` is not disabled, bitmcp builds a card from your app config and package metadata:"},"362":{"id":"/docs/discoverability/server-card-17","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#default-card","content":"The default `name` comes from your npm package name. Scoped packages map to `scope.package/mcp`."},"363":{"id":"/docs/discoverability/server-card-18","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"Field"},"364":{"id":"/docs/discoverability/server-card-19","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"Description"},"365":{"id":"/docs/discoverability/server-card-20","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"`enabled`"},"366":{"id":"/docs/discoverability/server-card-21","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"Set `false` to disable card generation while keeping other config"},"367":{"id":"/docs/discoverability/server-card-22","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"`name`"},"368":{"id":"/docs/discoverability/server-card-23","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"Override default card name"},"369":{"id":"/docs/discoverability/server-card-24","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"`title`"},"370":{"id":"/docs/discoverability/server-card-25","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"Display title (defaults to app name)"},"371":{"id":"/docs/discoverability/server-card-26","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"`description`"},"372":{"id":"/docs/discoverability/server-card-27","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"Card description"},"373":{"id":"/docs/discoverability/server-card-28","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"`websiteUrl`"},"374":{"id":"/docs/discoverability/server-card-29","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"Public site URL"},"375":{"id":"/docs/discoverability/server-card-30","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"`repository`"},"376":{"id":"/docs/discoverability/server-card-31","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"Source repository metadata"},"377":{"id":"/docs/discoverability/server-card-32","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"`icons`"},"378":{"id":"/docs/discoverability/server-card-33","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"Icon URLs with optional `mimeType`, `sizes`, and `theme`"},"379":{"id":"/docs/discoverability/server-card-34","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#configure","content":"Disable entirely with `serverCard: false`."},"380":{"id":"/docs/discoverability/server-card-35","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#remote-url-resolution","content":"The `remotes[0].url` field reflects where clients should connect:"},"381":{"id":"/docs/discoverability/server-card-36","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#remote-url-resolution","content":"In production, set `MCP_URL` to your public MCP endpoint (for example `https://mcp.example.com/mcp`)"},"382":{"id":"/docs/discoverability/server-card-37","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#remote-url-resolution","content":"Locally, bitmcp resolves the request origin and MCP path automatically"},"383":{"id":"/docs/discoverability/server-card-38","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#remote-url-resolution","content":"When OAuth is enabled, the remote URL must match your configured OAuth resource"},"384":{"id":"/docs/discoverability/server-card-39","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#remote-url-resolution","content":"Set `MCP_URL` in production so the server card advertises the correct public endpoint across replicas."},"385":{"id":"/docs/discoverability/server-card-40","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#vercel-rewrite","content":"Projects scaffolded with `--deploy vercel` include a rewrite from `/mcp/server-card` to the MCP handler so the card is served from the same deployment."},"386":{"id":"/docs/discoverability/server-card-41","page_id":"/docs/discoverability/server-card","tags":[],"type":"text","url":"/docs/discoverability/server-card#next-step","content":"Pair server cards with Authentication so discovery metadata and OAuth protected-resource metadata stay aligned on the same public URL."},"387":{"id":"/docs/getting-started/connecting","page_id":"/docs/getting-started/connecting","type":"page","content":"Connecting to your server","breadcrumbs":["Docs","Getting Started"],"tags":[],"url":"/docs/getting-started/connecting"},"388":{"id":"/docs/getting-started/connecting-0","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting","content":"HTTP preview by default, stdio for desktop hosts, and MCP client setup."},"389":{"id":"/docs/getting-started/connecting-1","page_id":"/docs/getting-started/connecting","type":"heading","tags":[],"url":"/docs/getting-started/connecting#transports","content":"Transports"},"390":{"id":"/docs/getting-started/connecting-2","page_id":"/docs/getting-started/connecting","type":"heading","tags":[],"url":"/docs/getting-started/connecting#preview-host","content":"Preview host"},"391":{"id":"/docs/getting-started/connecting-3","page_id":"/docs/getting-started/connecting","type":"heading","tags":[],"url":"/docs/getting-started/connecting#stdio-clients","content":"stdio clients"},"392":{"id":"/docs/getting-started/connecting-4","page_id":"/docs/getting-started/connecting","type":"heading","tags":[],"url":"/docs/getting-started/connecting#http-clients","content":"HTTP clients"},"393":{"id":"/docs/getting-started/connecting-5","page_id":"/docs/getting-started/connecting","type":"heading","tags":[],"url":"/docs/getting-started/connecting#host-compatibility","content":"Host compatibility"},"394":{"id":"/docs/getting-started/connecting-6","page_id":"/docs/getting-started/connecting","type":"heading","tags":[],"url":"/docs/getting-started/connecting#environment-variables","content":"Environment variables"},"395":{"id":"/docs/getting-started/connecting-7","page_id":"/docs/getting-started/connecting","type":"heading","tags":[],"url":"/docs/getting-started/connecting#next-step","content":"Next step"},"396":{"id":"/docs/getting-started/connecting-8","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting","content":"bitmcp serves Streamable HTTP by default. Use stdio when a desktop host spawns the server as a child process."},"397":{"id":"/docs/getting-started/connecting-9","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"Mode"},"398":{"id":"/docs/getting-started/connecting-10","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"Command"},"399":{"id":"/docs/getting-started/connecting-11","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"Use case"},"400":{"id":"/docs/getting-started/connecting-12","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"HTTP"},"401":{"id":"/docs/getting-started/connecting-13","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"`pnpm dev`"},"402":{"id":"/docs/getting-started/connecting-14","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"Local Apps preview at `http://127.0.0.1:3000`"},"403":{"id":"/docs/getting-started/connecting-15","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"stdio"},"404":{"id":"/docs/getting-started/connecting-16","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"`bitmcp dev --stdio`"},"405":{"id":"/docs/getting-started/connecting-17","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"Claude Desktop, VS Code, Cursor"},"406":{"id":"/docs/getting-started/connecting-18","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"HTTP"},"407":{"id":"/docs/getting-started/connecting-19","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"`pnpm start`"},"408":{"id":"/docs/getting-started/connecting-20","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"Production (`bitmcp start` always uses HTTP)"},"409":{"id":"/docs/getting-started/connecting-21","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"Default listen address: `http://127.0.0.1:3000/mcp`. `GET /health` returns `{ ok: true }`."},"410":{"id":"/docs/getting-started/connecting-22","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#transports","content":"Override with `--port` or `MCP_PORT`, `MCP_HOST`, and `MCP_PATH`. The path match is exact. `/foo/mcp` does not satisfy `/mcp`."},"411":{"id":"/docs/getting-started/connecting-23","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#preview-host","content":"`pnpm dev` starts a local Apps host. It renders your View in a sandbox iframe, injects tool results, and reloads the iframe when the View hash changes."},"412":{"id":"/docs/getting-started/connecting-24","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#stdio-clients","content":"Point your MCP client at stdio:"},"413":{"id":"/docs/getting-started/connecting-25","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#http-clients","content":"Connect to the Streamable HTTP endpoint your server exposes. Host and Origin guards apply on localhost. Production `app.fetch` only enforces hosts you put in `allowedHosts`."},"414":{"id":"/docs/getting-started/connecting-26","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#host-compatibility","content":"MCP hosts differ in what they can render. bitmcp emits official MCP Apps keys: `_meta.ui.resourceUri` and hashed `text/html;profile=mcp-app` resources."},"415":{"id":"/docs/getting-started/connecting-27","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#host-compatibility","content":"UI-capable hosts advertise the extension `io.modelcontextprotocol/ui` and MIME type `text/html;profile=mcp-app`. Cursor, Claude, VS Code, and ChatGPT load your hashed HTML in a sandbox iframe when supported."},"416":{"id":"/docs/getting-started/connecting-28","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#host-compatibility","content":"When the client cannot render Apps, bitmcp strips UI metadata for that request. You still get tool text content and MRTR confirmations. Degradation order: **text → MRTR → View**."},"417":{"id":"/docs/getting-started/connecting-29","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#host-compatibility","content":"App-only `defineAction` tools stay hidden from model lists on text-only clients."},"418":{"id":"/docs/getting-started/connecting-30","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"Variable"},"419":{"id":"/docs/getting-started/connecting-31","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"Description"},"420":{"id":"/docs/getting-started/connecting-32","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"`MCP_TRANSPORT`"},"421":{"id":"/docs/getting-started/connecting-33","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"`stdio` or `http`"},"422":{"id":"/docs/getting-started/connecting-34","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"`MCP_PORT`"},"423":{"id":"/docs/getting-started/connecting-35","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"Listen port for HTTP"},"424":{"id":"/docs/getting-started/connecting-36","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"`MCP_HOST`"},"425":{"id":"/docs/getting-started/connecting-37","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"Bind address"},"426":{"id":"/docs/getting-started/connecting-38","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"`MCP_PATH`"},"427":{"id":"/docs/getting-started/connecting-39","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"HTTP path (default `/mcp`)"},"428":{"id":"/docs/getting-started/connecting-40","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"`BITMCP_ROOT`"},"429":{"id":"/docs/getting-started/connecting-41","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"Project root when cwd differs"},"430":{"id":"/docs/getting-started/connecting-42","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"`BITMCP_STATE_KEY`"},"431":{"id":"/docs/getting-started/connecting-43","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#environment-variables","content":"Required in production HTTP for MRTR `requestState`"},"432":{"id":"/docs/getting-started/connecting-44","page_id":"/docs/getting-started/connecting","tags":[],"type":"text","url":"/docs/getting-started/connecting#next-step","content":"Read Project structure to learn how tool folders compile, or Deployment to ship Streamable HTTP."},"433":{"id":"/docs/getting-started/installation","page_id":"/docs/getting-started/installation","type":"page","content":"Installation","breadcrumbs":["Docs","Getting Started"],"tags":[],"url":"/docs/getting-started/installation"},"434":{"id":"/docs/getting-started/installation-0","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation","content":"Create a bitmcp app with bitmcp create and run the dev server."},"435":{"id":"/docs/getting-started/installation-1","page_id":"/docs/getting-started/installation","type":"heading","tags":[],"url":"/docs/getting-started/installation#scripts","content":"Scripts"},"436":{"id":"/docs/getting-started/installation-2","page_id":"/docs/getting-started/installation","type":"heading","tags":[],"url":"/docs/getting-started/installation#cli","content":"CLI"},"437":{"id":"/docs/getting-started/installation-3","page_id":"/docs/getting-started/installation","type":"heading","tags":[],"url":"/docs/getting-started/installation#bitmcpconfigts","content":"bitmcp.config.ts"},"438":{"id":"/docs/getting-started/installation-4","page_id":"/docs/getting-started/installation","type":"heading","tags":[],"url":"/docs/getting-started/installation#environment-variables","content":"Environment variables"},"439":{"id":"/docs/getting-started/installation-5","page_id":"/docs/getting-started/installation","type":"heading","tags":[],"url":"/docs/getting-started/installation#next-step","content":"Next step"},"440":{"id":"/docs/getting-started/installation-6","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation","content":"Create a new project, install dependencies, and start the dev server."},"441":{"id":"/docs/getting-started/installation-7","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation","content":"The scaffold includes:"},"442":{"id":"/docs/getting-started/installation-8","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#scripts","content":"Script"},"443":{"id":"/docs/getting-started/installation-9","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#scripts","content":"Command"},"444":{"id":"/docs/getting-started/installation-10","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#scripts","content":"Purpose"},"445":{"id":"/docs/getting-started/installation-11","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#scripts","content":"dev"},"446":{"id":"/docs/getting-started/installation-12","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#scripts","content":"`pnpm dev`"},"447":{"id":"/docs/getting-started/installation-13","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#scripts","content":"HTTP plus local Apps preview. Rebuilds Views with esbuild"},"448":{"id":"/docs/getting-started/installation-14","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#scripts","content":"build"},"449":{"id":"/docs/getting-started/installation-15","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#scripts","content":"`pnpm build`"},"450":{"id":"/docs/getting-started/installation-16","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#scripts","content":"Build server bundle and hashed Views"},"451":{"id":"/docs/getting-started/installation-17","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#scripts","content":"start"},"452":{"id":"/docs/getting-started/installation-18","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#scripts","content":"`pnpm start`"},"453":{"id":"/docs/getting-started/installation-19","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#scripts","content":"Production Streamable HTTP"},"454":{"id":"/docs/getting-started/installation-20","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#scripts","content":"Use `bitmcp dev --stdio` when a desktop host should spawn the server on stdio."},"455":{"id":"/docs/getting-started/installation-21","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"Command"},"456":{"id":"/docs/getting-started/installation-22","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"Description"},"457":{"id":"/docs/getting-started/installation-23","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"`bitmcp create`"},"458":{"id":"/docs/getting-started/installation-24","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"Scaffold a new project from the built-in template"},"459":{"id":"/docs/getting-started/installation-25","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"`bitmcp dev`"},"460":{"id":"/docs/getting-started/installation-26","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"esbuild watch for Views, HTTP, and a local Apps preview"},"461":{"id":"/docs/getting-started/installation-27","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"`bitmcp start`"},"462":{"id":"/docs/getting-started/installation-28","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"Production Streamable HTTP from `dist/server.js`"},"463":{"id":"/docs/getting-started/installation-29","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"`bitmcp build`"},"464":{"id":"/docs/getting-started/installation-30","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"Hashed inlined View HTML plus `dist/server.js`"},"465":{"id":"/docs/getting-started/installation-31","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"Flag"},"466":{"id":"/docs/getting-started/installation-32","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"Applies to"},"467":{"id":"/docs/getting-started/installation-33","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"Description"},"468":{"id":"/docs/getting-started/installation-34","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"`--deploy`"},"469":{"id":"/docs/getting-started/installation-35","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"`create`"},"470":{"id":"/docs/getting-started/installation-36","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"`node`, `vercel`, or `cloudflare`"},"471":{"id":"/docs/getting-started/installation-37","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"`--stdio`"},"472":{"id":"/docs/getting-started/installation-38","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"`dev`"},"473":{"id":"/docs/getting-started/installation-39","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"Use stdio instead of HTTP plus preview"},"474":{"id":"/docs/getting-started/installation-40","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"`--port N`"},"475":{"id":"/docs/getting-started/installation-41","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"`dev`, `start`"},"476":{"id":"/docs/getting-started/installation-42","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#cli","content":"Listen port"},"477":{"id":"/docs/getting-started/installation-43","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#bitmcpconfigts","content":"Optional fields include `deploy` (`\"node\"` | `\"vercel\"` | `\"cloudflare\"`), `cacheTtlMs`, `http.cors`, `http.allowedHosts`, and `http.path`. Name and version can also come from `package.json` when omitted."},"478":{"id":"/docs/getting-started/installation-44","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#bitmcpconfigts","content":"Pass `--deploy vercel` or `--deploy cloudflare` to `bitmcp create` to write the matching platform config. See Vercel or Cloudflare."},"479":{"id":"/docs/getting-started/installation-45","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#bitmcpconfigts","content":"Set `BITMCP_STATE_KEY` in production HTTP. Confirmations and `ctx.ask` mint `requestState` tokens that must verify on any replica."},"480":{"id":"/docs/getting-started/installation-46","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"Variable"},"481":{"id":"/docs/getting-started/installation-47","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"Description"},"482":{"id":"/docs/getting-started/installation-48","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"`BITMCP_ROOT`"},"483":{"id":"/docs/getting-started/installation-49","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"Project root for CLI runtime"},"484":{"id":"/docs/getting-started/installation-50","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"`BITMCP_STATE_KEY`"},"485":{"id":"/docs/getting-started/installation-51","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"Shared HMAC key for MRTR `requestState`"},"486":{"id":"/docs/getting-started/installation-52","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"`MCP_TRANSPORT`"},"487":{"id":"/docs/getting-started/installation-53","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"`stdio` or `http`"},"488":{"id":"/docs/getting-started/installation-54","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"`MCP_PORT`"},"489":{"id":"/docs/getting-started/installation-55","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"HTTP listen port"},"490":{"id":"/docs/getting-started/installation-56","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"`MCP_HOST`"},"491":{"id":"/docs/getting-started/installation-57","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"HTTP bind host"},"492":{"id":"/docs/getting-started/installation-58","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"`MCP_PATH`"},"493":{"id":"/docs/getting-started/installation-59","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"HTTP path (default `/mcp`)"},"494":{"id":"/docs/getting-started/installation-60","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"`MCP_URL`"},"495":{"id":"/docs/getting-started/installation-61","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"Public MCP URL when OAuth is enabled in production"},"496":{"id":"/docs/getting-started/installation-62","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"`NODE_ENV`"},"497":{"id":"/docs/getting-started/installation-63","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#environment-variables","content":"`production` requires a state key unless overridden"},"498":{"id":"/docs/getting-started/installation-64","page_id":"/docs/getting-started/installation","tags":[],"type":"text","url":"/docs/getting-started/installation#next-step","content":"Read Connecting to your server to attach a host, or Project structure to learn how tools are discovered."},"499":{"id":"/docs/getting-started/project-structure","page_id":"/docs/getting-started/project-structure","type":"page","content":"Project structure","breadcrumbs":["Docs","Getting Started"],"tags":[],"url":"/docs/getting-started/project-structure"},"500":{"id":"/docs/getting-started/project-structure-0","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure","content":"File-based tool folders, discovery rules, and compiler boundaries."},"501":{"id":"/docs/getting-started/project-structure-1","page_id":"/docs/getting-started/project-structure","type":"heading","tags":[],"url":"/docs/getting-started/project-structure#naming","content":"Naming"},"502":{"id":"/docs/getting-started/project-structure-2","page_id":"/docs/getting-started/project-structure","type":"heading","tags":[],"url":"/docs/getting-started/project-structure#compiler-boundaries","content":"Compiler boundaries"},"503":{"id":"/docs/getting-started/project-structure-3","page_id":"/docs/getting-started/project-structure","type":"heading","tags":[],"url":"/docs/getting-started/project-structure#what-the-compiler-emits","content":"What the compiler emits"},"504":{"id":"/docs/getting-started/project-structure-4","page_id":"/docs/getting-started/project-structure","type":"heading","tags":[],"url":"/docs/getting-started/project-structure#config-files","content":"Config files"},"505":{"id":"/docs/getting-started/project-structure-5","page_id":"/docs/getting-started/project-structure","type":"heading","tags":[],"url":"/docs/getting-started/project-structure#next-step","content":"Next step"},"506":{"id":"/docs/getting-started/project-structure-6","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure","content":"Each tool lives under `src/tools/<name>/`. The compiler discovers folders that contain `tool.ts`, `tool.tsx`, or `index.ts`."},"507":{"id":"/docs/getting-started/project-structure-7","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#naming","content":"The tool name defaults to the folder name (`hello`, `forecast`, `delete_rows`). Actions in `actions.ts` are namespaced as `<folder>.<export>` (`forecast.refresh`, `hello.shout`)."},"508":{"id":"/docs/getting-started/project-structure-8","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#compiler-boundaries","content":"These imports fail the build:"},"509":{"id":"/docs/getting-started/project-structure-9","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#compiler-boundaries","content":"`tool.ts` importing `view.tsx` or `bitmcp/react`"},"510":{"id":"/docs/getting-started/project-structure-10","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#compiler-boundaries","content":"`view.tsx` importing `tool.ts`, Node builtins, or server modules"},"511":{"id":"/docs/getting-started/project-structure-11","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#compiler-boundaries","content":"The server graph must not leak into the iframe bundle."},"512":{"id":"/docs/getting-started/project-structure-12","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#what-the-compiler-emits","content":"Author file"},"513":{"id":"/docs/getting-started/project-structure-13","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#what-the-compiler-emits","content":"Output"},"514":{"id":"/docs/getting-started/project-structure-14","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#what-the-compiler-emits","content":"`tool.ts`"},"515":{"id":"/docs/getting-started/project-structure-15","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#what-the-compiler-emits","content":"Model-visible MCP tool"},"516":{"id":"/docs/getting-started/project-structure-16","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#what-the-compiler-emits","content":"`view.tsx`"},"517":{"id":"/docs/getting-started/project-structure-17","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#what-the-compiler-emits","content":"Hashed `ui://tools/<name>/<hash>` HTML shell"},"518":{"id":"/docs/getting-started/project-structure-18","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#what-the-compiler-emits","content":"`actions.ts`"},"519":{"id":"/docs/getting-started/project-structure-19","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#what-the-compiler-emits","content":"App-only tools with `visibility: [\"app\"]`"},"520":{"id":"/docs/getting-started/project-structure-20","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#what-the-compiler-emits","content":"Authors do not set `resourceUri`, `structuredContent`, CSP, or `appInfo` by hand on the happy path. `.bitmcp/` holds generated View types and the Tailwind IntelliSense entry."},"521":{"id":"/docs/getting-started/project-structure-21","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#config-files","content":"File"},"522":{"id":"/docs/getting-started/project-structure-22","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#config-files","content":"Purpose"},"523":{"id":"/docs/getting-started/project-structure-23","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#config-files","content":"`bitmcp.config.ts`"},"524":{"id":"/docs/getting-started/project-structure-24","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#config-files","content":"Server name, version, `deploy`, cache TTL, auth"},"525":{"id":"/docs/getting-started/project-structure-25","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#config-files","content":"`package.json`"},"526":{"id":"/docs/getting-started/project-structure-26","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#config-files","content":"Scripts that call the `bitmcp` CLI"},"527":{"id":"/docs/getting-started/project-structure-27","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#config-files","content":"`src/views.css`"},"528":{"id":"/docs/getting-started/project-structure-28","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#config-files","content":"Optional. Extra `@theme` tokens or `@source` paths"},"529":{"id":"/docs/getting-started/project-structure-29","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#config-files","content":"`vercel.json`"},"530":{"id":"/docs/getting-started/project-structure-30","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#config-files","content":"Written by `--deploy vercel`"},"531":{"id":"/docs/getting-started/project-structure-31","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#config-files","content":"`wrangler.jsonc`"},"532":{"id":"/docs/getting-started/project-structure-32","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#config-files","content":"Written by `--deploy cloudflare`"},"533":{"id":"/docs/getting-started/project-structure-33","page_id":"/docs/getting-started/project-structure","tags":[],"type":"text","url":"/docs/getting-started/project-structure#next-step","content":"Read Tools to define your first tool handler."}},"count":533},"sorting":{"language":"multilingual","sortableProperties":["content","page_id","type","url"],"sortablePropertiesWithTypes":{"content":"string","page_id":"string","type":"string","url":"string"},"sorts":{"content":{"docs":{"1":131,"2":435,"3":347,"4":484,"5":168,"6":344,"7":211,"8":225,"9":52,"10":8,"11":251,"12":63,"13":9,"14":392,"15":119,"16":174,"17":209,"18":270,"19":135,"20":136,"21":180,"22":428,"23":182,"24":490,"25":509,"26":348,"27":495,"28":302,"29":201,"30":245,"31":339,"32":459,"33":14,"34":353,"35":137,"36":440,"37":191,"38":176,"39":157,"40":156,"41":499,"42":380,"43":15,"44":138,"45":13,"46":473,"47":79,"48":160,"49":43,"50":143,"51":145,"52":181,"53":429,"54":183,"55":491,"56":510,"57":349,"58":496,"59":305,"60":248,"61":260,"62":186,"63":354,"64":441,"65":192,"66":177,"67":185,"68":187,"69":500,"70":381,"71":16,"72":144,"73":80,"74":161,"75":44,"76":207,"77":529,"78":308,"79":273,"80":394,"81":350,"82":488,"83":487,"84":486,"85":474,"86":340,"87":501,"88":382,"89":81,"90":162,"91":30,"92":328,"93":352,"94":449,"95":450,"96":247,"97":430,"98":184,"99":492,"100":511,"101":400,"102":351,"103":497,"104":303,"105":343,"106":249,"107":244,"108":433,"109":246,"110":198,"111":425,"112":355,"113":45,"114":403,"115":472,"116":271,"117":502,"118":521,"119":110,"120":216,"121":111,"122":315,"123":109,"124":310,"125":82,"126":163,"127":42,"128":128,"129":218,"130":329,"131":272,"132":528,"133":129,"134":46,"135":363,"136":466,"137":240,"138":299,"139":471,"140":189,"141":188,"142":326,"143":259,"144":204,"145":331,"146":234,"147":37,"148":453,"149":479,"150":56,"151":465,"152":456,"153":269,"154":41,"155":365,"156":127,"157":274,"158":206,"159":205,"160":444,"161":318,"162":520,"163":147,"164":323,"165":84,"166":309,"167":464,"168":256,"169":275,"170":397,"171":457,"172":370,"173":336,"174":276,"175":443,"176":476,"177":220,"178":398,"179":407,"180":203,"181":516,"182":401,"183":219,"184":475,"185":396,"186":125,"187":399,"188":208,"189":67,"190":89,"191":213,"192":39,"193":101,"194":217,"195":55,"196":452,"197":366,"198":54,"199":277,"200":261,"201":226,"202":12,"203":327,"204":68,"205":386,"206":69,"207":130,"208":62,"209":322,"210":118,"211":139,"212":100,"213":306,"214":523,"215":38,"216":97,"217":514,"218":280,"219":481,"220":288,"221":210,"222":498,"223":159,"224":448,"225":285,"226":255,"227":153,"228":126,"229":461,"230":482,"231":197,"232":155,"233":462,"234":341,"235":286,"236":451,"237":478,"238":142,"239":282,"240":107,"241":284,"242":513,"243":300,"244":266,"245":262,"246":227,"247":102,"248":108,"249":35,"250":158,"251":11,"252":342,"253":70,"254":196,"255":53,"256":195,"257":36,"258":515,"259":258,"260":242,"261":117,"262":165,"263":287,"264":17,"265":0,"266":112,"267":2,"268":113,"269":3,"270":34,"271":1,"272":59,"273":5,"274":64,"275":387,"276":494,"277":238,"278":239,"279":58,"280":169,"281":223,"282":405,"283":432,"284":221,"285":149,"286":411,"287":20,"288":454,"289":417,"290":423,"291":426,"292":88,"293":530,"294":525,"295":507,"296":338,"297":402,"298":337,"299":243,"300":202,"301":442,"302":281,"303":412,"304":19,"305":27,"306":214,"307":358,"308":420,"309":419,"310":50,"311":460,"312":321,"313":228,"314":104,"315":438,"316":65,"317":439,"318":57,"319":517,"320":313,"321":257,"322":362,"323":447,"324":512,"325":316,"326":506,"327":505,"328":224,"329":406,"330":431,"331":222,"332":150,"333":413,"334":21,"335":455,"336":304,"337":416,"338":422,"339":427,"340":190,"341":22,"342":524,"343":170,"344":414,"345":379,"346":250,"347":212,"348":179,"349":391,"350":508,"351":332,"352":320,"353":268,"354":483,"355":383,"356":61,"357":368,"358":60,"359":518,"360":395,"361":522,"362":463,"363":263,"364":229,"365":51,"366":421,"367":85,"368":357,"369":114,"370":237,"371":47,"372":164,"373":123,"374":378,"375":99,"376":436,"377":66,"378":298,"379":236,"380":458,"381":301,"382":317,"383":526,"384":424,"385":376,"386":360,"387":194,"388":297,"389":477,"390":367,"391":446,"392":292,"393":283,"394":252,"395":333,"396":148,"397":324,"398":171,"399":489,"400":289,"401":92,"402":314,"403":445,"404":24,"405":166,"406":290,"407":95,"408":369,"409":215,"410":359,"411":94,"412":364,"413":193,"414":319,"415":480,"416":527,"417":132,"418":503,"419":230,"420":77,"421":105,"422":75,"423":312,"424":71,"425":146,"426":73,"427":294,"428":28,"429":374,"430":31,"431":393,"432":389,"433":307,"434":199,"435":409,"436":167,"437":151,"438":253,"439":334,"440":200,"441":467,"442":408,"443":172,"444":384,"445":235,"446":93,"447":296,"448":152,"449":91,"450":154,"451":437,"452":96,"453":371,"454":485,"455":173,"456":231,"457":23,"458":404,"459":25,"460":254,"461":26,"462":372,"463":18,"464":279,"465":267,"466":134,"467":232,"468":4,"469":40,"470":87,"471":7,"472":48,"473":493,"474":6,"475":49,"476":311,"477":345,"478":361,"479":418,"480":504,"481":233,"482":29,"483":373,"484":32,"485":434,"486":78,"487":106,"488":76,"489":293,"490":72,"491":291,"492":74,"493":295,"494":83,"495":377,"496":86,"497":98,"498":388,"499":375,"500":265,"501":330,"502":175,"503":519,"504":178,"505":335,"506":241,"507":469,"508":470,"509":116,"510":122,"511":468,"512":140,"513":356,"514":115,"515":325,"516":121,"517":278,"518":10,"519":133,"520":141,"521":264,"522":385,"523":33,"524":415,"525":90,"526":410,"527":103,"528":346,"529":120,"530":532,"531":124,"532":531,"533":390},"orderedDocs":[[265,"`--color-background-primary`"],[271,"`--color-border-primary`"],[267,"`--color-text-primary`"],[269,"`--color-text-secondary`"],[468,"`--deploy`"],[273,"`--font-sans`"],[474,"`--port N`"],[471,"`--stdio`"],[10,"`\"API_KEY\"`"],[13,"`\"x-api-key\"`"],[518,"`actions.ts`"],[251,"`app`"],[202,"`ask(schema, message?)`"],[45,"`AUTH0_AUDIENCE`"],[33,"`AUTH0_AUDIENCE` is used as the OAuth resource when you do not pass `resource` in the plugin options."],[43,"`AUTH0_DOMAIN`"],[71,"`BETTER_AUTH_URL`"],[264,"`bg-background`"],[463,"`bitmcp build`"],[304,"`bitmcp build` emits `dist/server.js` with a Web-standard `fetch` handler plus `GET`, `POST`, and `OPTIONS`. Use that file on Node or any Fetch runtime."],[287,"`bitmcp build` emits `dist/server.js`, hashed View HTML under `dist/ui/`, and `dist/manifest.json`. Cloudflare Workers serve `dist/server.js` directly."],[334,"`bitmcp build` emits `dist/server.js`, hashed View HTML under `dist/ui/`, and `dist/manifest.json`. The same server file runs on every platform."],[341,"`bitmcp build` writes gitignored `api/mcp.js` that re-exports `dist/server.js`. `vercel` runs `pnpm build` first."],[457,"`bitmcp create`"],[404,"`bitmcp dev --stdio`"],[459,"`bitmcp dev`"],[461,"`bitmcp start`"],[305,"`bitmcp start` loads `dist/server.js` and listens on Streamable HTTP."],[428,"`BITMCP_ROOT`"],[482,"`BITMCP_ROOT`"],[91,"`BITMCP_STATE_KEY`"],[430,"`BITMCP_STATE_KEY`"],[484,"`BITMCP_STATE_KEY`"],[523,"`bitmcp.config.ts`"],[270,"`border-border`"],[249,"`callTool(name, args?)`"],[257,"`callTool` keeps a stable function identity so poll intervals do not reset every render."],[147,"`confirm` maps to `resultType: \"input_required\"` (MRTR)."],[215,"`ConfirmResult` shape:"],[192,"`connect` — `connect-src` allowlist for fetch from the View"],[469,"`create`"],[154,"`ctx.ask` re-enters `execute` on a new request with `inputResponses`. Do not mutate before `ask`."],[127,"`ctx.user` fields: `id`, `email`, `name`, `fullName`, `username`, `avatarUrl`, `role`, `aal`, `amr`, `sessionId`. Options passed to the factory override environment variables."],[49,"`ctx.user` fields: `id`, `email`, `name`, `nickname`, `picture`, `emailVerified`, `updatedAt`, `roles`."],[75,"`ctx.user` fields: `id`, `email`, `name`, `picture`, `emailVerified`, `sessionId`, `isAnonymous`, `roles`."],[113,"`ctx.user` includes `id`, `email`, `name`, and other Supabase claims when present in the token."],[134,"`defineAction` is `defineTool` with `visibility: [\"app\"]` and `kind: \"action\"`. It accepts the same options as `defineTool`."],[371,"`description`"],[472,"`dev`"],[475,"`dev`, `start`"],[310,"`dist/server.js` already exports `GET`, `POST`, `OPTIONS`, and `default.fetch`. Point a platform entry at that file, or call `app.fetch` yourself:"],[365,"`enabled`"],[9,"`env`"],[255,"`error`"],[198,"`execute` must not return `undefined`"],[195,"`execute` runs on the server only"],[150,"`execute` runs once, after accept"],[318,"`fetch(request)`"],[279,"`fetch` in a View requires a sibling `connect` allowlist"],[272,"`font-sans`"],[358,"`GET /.well-known/mcp/server-card.json`"],[356,"`GET /mcp/server-card`"],[208,"`handle()`"],[12,"`headerName`"],[274,"`html`, `body`, and `#root` stay transparent. The compiler injects Tailwind. Add `src/views.css` only for extra `@theme` tokens or `@source` paths. Tailwind IntelliSense reads `.bitmcp/views.css`."],[316,"`http(options?)`"],[377,"`icons`"],[189,"`input` validates tool arguments (Zod or Standard Schema)"],[204,"`inputRequired(spec)`"],[206,"`inputResponses`"],[253,"`isConnected`"],[424,"`MCP_HOST`"],[490,"`MCP_HOST`"],[426,"`MCP_PATH`"],[492,"`MCP_PATH`"],[422,"`MCP_PORT`"],[488,"`MCP_PORT`"],[420,"`MCP_TRANSPORT`"],[486,"`MCP_TRANSPORT`"],[47,"`MCP_URL`"],[73,"`MCP_URL`"],[89,"`MCP_URL`"],[125,"`MCP_URL`"],[494,"`MCP_URL`"],[165,"`memoryHandleStore()` in development"],[367,"`name`"],[496,"`NODE_ENV`"],[470,"`node`, `vercel`, or `cloudflare`"],[292,"`nodejs_compat` is required. Confirmations and `ctx.ask` require `BITMCP_STATE_KEY` in production."],[190,"`output` validates the return value and types the View result"],[525,"`package.json`"],[449,"`pnpm build`"],[401,"`pnpm dev`"],[446,"`pnpm dev`"],[411,"`pnpm dev` starts a local Apps host. It renders your View in a sandbox iframe, injects tool results, and reloads the iframe when the View hash changes."],[407,"`pnpm start`"],[452,"`pnpm start`"],[216,"`preview` is included on the MRTR `structuredContent` so a View can render it. Text clients still see `message`."],[497,"`production` requires a state key unless overridden"],[375,"`repository`"],[212,"`request`"],[193,"`resources` — asset src allowlist for CDN scripts or styles"],[247,"`result`"],[527,"`src/views.css`"],[314,"`stdio()`"],[421,"`stdio` or `http`"],[487,"`stdio` or `http`"],[240,"`structuredContent` arrives via `ontoolresult`"],[248,"`structuredContent` from the host via `ontoolresult`, or from `callTool`"],[123,"`SUPABASE_JWT_SECRET`"],[119,"`SUPABASE_PROJECT_ID`"],[121,"`SUPABASE_URL`"],[266,"`text-foreground`"],[268,"`text-muted`"],[369,"`title`"],[514,"`tool.ts`"],[509,"`tool.ts` importing `view.tsx` or `bitmcp/react`"],[261,"`useHostStyles` applies host CSS variables. bitmcp maps a subset into Tailwind `@theme` so chat UI can follow the host:"],[210,"`user`"],[15,"`validate`"],[529,"`vercel.json`"],[516,"`view.tsx`"],[510,"`view.tsx` importing `tool.ts`, Node builtins, or server modules"],[373,"`websiteUrl`"],[531,"`wrangler.jsonc`"],[186,"A tool is a server function exposed to the model through MCP."],[228,"A View is a React component compiled into a predeclared HTML resource."],[156,"A View must not be the only confirm path for a side effect. MRTR works in terminal hosts. Views can show previews, not replace the gate."],[128,"Actions"],[133,"Actions are backing tools the View can call. They are hidden from the model."],[207,"Answers from a prior `ask`"],[1,"API key"],[417,"App-only `defineAction` tools stay hidden from model lists on text-only clients."],[519,"App-only tools with `visibility: [\"app\"]`"],[466,"Applies to"],[19,"Auth0"],[20,"Auth0 Dynamic Client Registration authentication for bitmcp."],[35,"Auth0 roles from the token are available on `ctx.user.roles` when Auth0 includes them in the access token."],[44,"Auth0 tenant domain"],[211,"Authenticated user when OAuth is enabled"],[512,"Author file"],[520,"Authors do not set `resourceUri`, `structuredContent`, CSP, or `appInfo` by hand on the happy path. `.bitmcp/` holds generated View types and the Tailwind IntelliSense entry."],[238,"Authors never pass `appInfo` or call `useHostStyles` on the happy path. The compiler injects `AppShell` in the HTML shell. Authors do not render it in `view.tsx`."],[50,"Better Auth"],[72,"Better Auth issuer base URL"],[51,"Better Auth OAuth 2.1 provider authentication for bitmcp."],[425,"Bind address"],[163,"bitmcp is stateless. There is no `Mcp-Session-Id` and no sticky server memory."],[396,"bitmcp serves Streamable HTTP by default. Use stdio when a desktop host spawns the server as a child process."],[285,"bitmcp.config.ts"],[332,"bitmcp.config.ts"],[437,"bitmcp.config.ts"],[448,"build"],[227,"Build boundaries"],[450,"Build server bundle and hashed Views"],[232,"Cacheable with `ttlMs` and `cacheScope: public`"],[40,"Call `/mcp` without a token and confirm `401`"],[39,"Call a tool and confirm `ctx.user` is populated"],[250,"Calls a backing tool through the host and updates `result`"],[223,"callTool"],[48,"Canonical public MCP URL in production"],[74,"Canonical public MCP URL in production"],[90,"Canonical public MCP URL in production"],[126,"Canonical public MCP URL in production"],[372,"Card description"],[262,"Class"],[405,"Claude Desktop, VS Code, Cursor"],[436,"CLI"],[5,"Clients send the key in the `x-api-key` header by default."],[280,"Cloudflare"],[343,"Cloudflare and Node and custom deploy the same `dist/server.js` artifact."],[398,"Command"],[443,"Command"],[455,"Command"],[16,"compares to env value"],[502,"Compiler boundaries"],[38,"Complete Auth0 login and client registration"],[66,"Complete login through Better Auth"],[504,"Config files"],[348,"Configure"],[21,"Configure Auth0"],[52,"Configure Better Auth"],[23,"Configure bitmcp"],[54,"Configure bitmcp"],[98,"Configure bitmcp"],[67,"Confirm authenticated tools receive `ctx.user`"],[62,"Confirm JWKS is served at `{authURL}/jwks`"],[68,"Confirm unauthenticated requests return `401`"],[141,"confirm(), MRTR input_required, ctx.ask, and execute after accept."],[140,"Confirmations"],[340,"Confirmations and `ctx.ask` mint `requestState` tokens that must verify on any replica. `BITMCP_STATE_KEY` is required in production."],[37,"Connect from an OAuth-capable MCP client"],[65,"Connect from an OAuth-capable MCP client"],[413,"Connect to the Streamable HTTP endpoint your server exposes. Host and Origin guards apply on localhost. Production `app.fetch` only enforces hosts you put in `allowedHosts`."],[387,"Connecting to your server"],[256,"Connection error if any"],[254,"Connection state"],[231,"Content-addressed: the hash is the compiled HTML (scripts and CSS inlined), not the TSX source"],[110,"Copy your **Project ID** (or full project URL for local/self-hosted Supabase)."],[434,"Create a bitmcp app with bitmcp create and run the dev server."],[440,"Create a new project, install dependencies, and start the dev server."],[29,"Create an **API** with an identifier you will use as the token audience (for example `https://mcp.example.com/mcp`)"],[300,"createApp escape hatch"],[180,"CSP allowlists"],[144,"ctx.ask"],[159,"ctx.handle()"],[158,"ctx.handle(), HandleStore, and no sessions."],[76,"Custom"],[188,"Custom text:"],[17,"Custom validation function"],[221,"Data flow"],[7,"Default"],[347,"Default card"],[191,"Default CSP is deny-all for iframe network access."],[306,"Default listen address: `http://127.0.0.1:3000/mcp`"],[409,"Default listen address: `http://127.0.0.1:3000/mcp`. `GET /health` returns `{ ok: true }`."],[120,"Default project id"],[194,"Defaults to `[\"model\", \"app\"]`. Model-visible tools appear in `tools/list`. Use Actions for app-only tools."],[129,"defineAction, app-only visibility, and namespaced backing tools."],[183,"defineTool options"],[177,"defineTool, schemas, return data, result(), and CSP allowlists."],[284,"Deploy"],[331,"Deploy"],[281,"Deploy bitmcp on Cloudflare Workers from dist/server.js."],[328,"Deploy bitmcp on Vercel with a single server artifact."],[8,"Description"],[201,"Description"],[246,"Description"],[313,"Description"],[364,"Description"],[419,"Description"],[456,"Description"],[467,"Description"],[481,"Description"],[146,"Destructive or sensitive tools declare confirmation outside `execute`."],[445,"dev"],[379,"Disable entirely with `serverCard: false`."],[370,"Display title (defaults to app name)"],[277,"Do not import `tool.ts` from `view.tsx`"],[278,"Do not import Node builtins or secrets in Views"],[137,"Each call is a new stateless `tools/call`. Pass handles or ids explicitly when resuming work."],[506,"Each tool lives under `src/tools/<name>/`. The compiler discovers folders that contain `tool.ts`, `tool.tsx`, or `index.ts`."],[260,"Each View is an isolated iframe. The compiler scans that View and emits only the utilities it uses. CSS is inlined in a `<style>` tag."],[299,"Embed in an existing app"],[107,"Enable **Allow Dynamic OAuth Apps** so MCP clients can register"],[30,"Enable **Dynamic Client Registration** for that API if required by your tenant"],[109,"Enable at least one sign-in method"],[96,"Enable Supabase OAuth"],[60,"Enable the **OAuth 2.1 Provider** plugin"],[106,"Enable the **OAuth 2.1 server**"],[346,"Endpoints"],[11,"Environment variable name"],[394,"Environment variables"],[438,"Environment variables"],[460,"esbuild watch for Views, HTTP, and a local Apps preview"],[226,"Escape hatches"],[168,"Every HTTP request builds a fresh MCP server. Tool code must assume the next call may hit another replica."],[321,"Every request builds a fresh MCP server. There is no `Mcp-Session-Id`."],[259,"Every View is compiled with Tailwind v4. Use `className` utilities. You do not add a Vite plugin or a `tailwind.config` file."],[143,"Example"],[61,"Expose the issuer URL including the auth base path (for example `https://app.example.com/api/auth`)"],[200,"Field"],[245,"Field"],[363,"Field"],[521,"File"],[500,"File-based tool folders, discovery rules, and compiler boundaries."],[244,"File-based tools generate `.bitmcp/views.d.ts` so `result` is inferred from the sibling tool. Pass a generic only when you need to override that."],[465,"Flag"],[353,"For an MCP path of `/mcp`, bitmcp serves:"],[153,"For mid-flight fields, use a continuation inside `execute`:"],[18,"For production user identity, use an OAuth provider from Supabase, Auth0, Better Auth, or Custom."],[116,"For server-owned operations, use the Supabase service role outside the user context."],[131,"From the View"],[79,"Full control with custom()"],[157,"Handles"],[169,"Handles make that safe. Sessions do not."],[174,"Handles survive restarts when backed by storage you provide"],[199,"Happy-path fields: `description`, `input`, `execute`. `confirm` sets `destructiveHint: true` unless you override `annotations`."],[517,"Hashed `ui://tools/<name>/<hash>` HTML shell"],[464,"Hashed inlined View HTML plus `dist/server.js`"],[218,"Hashed ui:// HTML, Tailwind, useApp(), and callTool()."],[302,"Host and Origin guards"],[239,"Host calls the tool"],[393,"Host compatibility"],[241,"Host loads the hashed HTML in a sandbox iframe"],[225,"Host theme"],[235,"Host theme via `useHostStyles`"],[263,"Host variable"],[220,"HTML shell"],[400,"HTTP"],[406,"HTTP"],[491,"HTTP bind host"],[392,"HTTP clients"],[489,"HTTP listen port"],[427,"HTTP path (default `/mcp`)"],[493,"HTTP path (default `/mcp`)"],[447,"HTTP plus local Apps preview. Rebuilds Views with esbuild"],[388,"HTTP preview by default, stdio for desktop hosts, and MCP client setup."],[378,"Icon URLs with optional `mimeType`, `sizes`, and `theme`"],[138,"Iframe clicks should not pollute `tools/list` with UI-only helpers. The model sees the main tool. The View sees refresh, filter, or pagination helpers."],[243,"Import from `bitmcp/react`:"],[381,"In production, set `MCP_URL` to your public MCP endpoint (for example `https://mcp.example.com/mcp`)"],[28,"In the Auth0 dashboard:"],[104,"In the Supabase dashboard:"],[336,"In the Vercel project:"],[59,"In your Better Auth app:"],[213,"Incoming HTTP request or stdio envelope"],[433,"Installation"],[78,"JWT identity providers"],[166,"KV, Redis, or D1 in production, same `{ get, set }` shape"],[124,"Legacy HS256 tokens (32+ bytes)"],[476,"Listen port"],[423,"Listen port for HTTP"],[320,"Loads tools from `src/tools/` using the same discovery rules as the compiler."],[402,"Local Apps preview at `http://127.0.0.1:3000`"],[122,"Local or self-hosted Supabase instead of `projectId`"],[325,"localhost bindings include Host and Origin checks. Production `app.fetch` only enforces hosts you put in `allowedHosts`."],[382,"Locally, bitmcp resolves the request origin and MCP path automatically"],[161,"Long work"],[414,"MCP hosts differ in what they can render. bitmcp emits official MCP Apps keys: `_meta.ui.resourceUri` and hashed `text/html;profile=mcp-app` resources."],[352,"MCP server cards let clients discover your server name, description, and Streamable HTTP endpoint before connecting. bitmcp serves a spec-shaped JSON document automatically."],[312,"Method"],[209,"Mint opaque handle id"],[164,"Mints an opaque id (UUID). Store whatever you need under that id with a `HandleStore`:"],[397,"Mode"],[515,"Model-visible MCP tool"],[142,"MRTR"],[203,"MRTR continuation inside `execute`"],[92,"MRTR state when using confirm or `ctx.ask`"],[130,"Naming"],[501,"Naming"],[145,"Never View-only"],[351,"Next step"],[395,"Next step"],[439,"Next step"],[505,"Next step"],[173,"No open SSE session"],[298,"Node"],[296,"Node and custom"],[31,"Note your tenant domain (for example `your-tenant.us.auth0.com`)"],[86,"OAuth requires HTTP. `app.stdio()` throws when `auth` is set."],[234,"Official Apps `useApp({ appInfo })`"],[252,"Official Apps client instance"],[105,"Open **Authentication → Sign In / Providers → OAuth Server**"],[6,"Option"],[477,"Optional fields include `deploy` (`\"node\"` | `\"vercel\"` | `\"cloudflare\"`), `cacheTtlMs`, `http.cors`, `http.allowedHosts`, and `http.path`. Name and version can also come from `package.json` when omitted."],[528,"Optional. Extra `@theme` tokens or `@source` paths"],[3,"Options"],[26,"Options"],[57,"Options"],[81,"Options"],[102,"Options"],[93,"Options passed to a factory override environment variables."],[34,"Or inline:"],[63,"Or inline:"],[112,"Or pass options explicitly:"],[513,"Output"],[368,"Override default card name"],[307,"Override with `--port` or `MCP_PORT`, `MCP_HOST`, and `MCP_PATH`. `GET /health` is also served."],[410,"Override with `--port` or `MCP_PORT`, `MCP_HOST`, and `MCP_PATH`. The path match is exact. `/foo/mcp` does not satisfy `/mcp`."],[386,"Pair server cards with Authentication so discovery metadata and OAuth protected-resource metadata stay aligned on the same public URL."],[478,"Pass `--deploy vercel` or `--deploy cloudflare` to `bitmcp create` to write the matching platform config. See Vercel or Cloudflare."],[322,"Pass handles and ids in tool arguments"],[135,"Place named exports in `actions.ts` beside the tool:"],[412,"Point your MCP client at stdio:"],[155,"Prefer `confirm` for yes/no gates. Raw `ctx.inputRequired` remains an escape hatch."],[197,"Presence of `view.tsx` attaches UI. Do not set `resourceUri` manually"],[390,"Preview host"],[357,"Primary server card endpoint"],[408,"Production (`bitmcp start` always uses HTTP)"],[172,"Production stores must implement the same `HandleStore` `{ get, set }` shape against KV, Redis, or D1. The in-memory adapter is for a single process."],[453,"Production Streamable HTTP"],[462,"Production Streamable HTTP from `dist/server.js`"],[483,"Project root for CLI runtime"],[429,"Project root when cwd differs"],[499,"Project structure"],[385,"Projects scaffolded with `--deploy vercel` include a rewrite from `/mcp/server-card` to the MCP handler so the card is served from the same deployment."],[495,"Public MCP URL when OAuth is enabled in production"],[374,"Public site URL"],[345,"Publish MCP server metadata at /mcp/server-card for client discovery."],[42,"Purpose"],[70,"Purpose"],[88,"Purpose"],[355,"Purpose"],[444,"Purpose"],[522,"Purpose"],[205,"Raw MRTR escape hatch"],[275,"Re-exported from `@modelcontextprotocol/ext-apps/react`:"],[498,"Read Connecting to your server to attach a host, or Project structure to learn how tools are discovered."],[432,"Read Project structure to learn how tool folders compile, or Deployment to ship Streamable HTTP."],[533,"Read Tools to define your first tool handler."],[349,"Remote URL resolution"],[14,"Request header to read"],[431,"Required in production HTTP for MRTR `requestState`"],[80,"Resource binding"],[360,"Responses use `Content-Type: application/mcp-server-card+json`, public caching with ETag support, and CORS headers for browser discovery."],[185,"Result helpers"],[170,"Return a handle immediately. Let the View poll status via a backing tool. Each poll is a new stateless `tools/call`. `callTool` updates `useApp().result` from `structuredContent`."],[178,"Return data"],[187,"Returning an object produces `structuredContent` for the View and text for every host (generated summary or JSON)."],[101,"Row Level Security"],[182,"Rules"],[297,"Run bitmcp on Node, embed in an existing app, and operate stateless replicas."],[114,"Run the server and connect with an OAuth-capable MCP client. Confirm the client discovers OAuth metadata, login completes through Supabase, authenticated tool calls include `ctx.user`, and requests without a Bearer token return `401`."],[458,"Scaffold a new project from the built-in template"],[282,"Scaffold for Cloudflare"],[329,"Scaffold for Vercel"],[179,"Schemas"],[442,"Script"],[435,"Scripts"],[526,"Scripts that call the `bitmcp` CLI"],[286,"See also"],[303,"See also"],[333,"See also"],[344,"Server card"],[524,"Server name, version, `deploy`, cache TTL, auth"],[337,"Set `BITMCP_STATE_KEY`"],[289,"Set `BITMCP_STATE_KEY` as a Worker secret or var"],[479,"Set `BITMCP_STATE_KEY` in production HTTP. Confirmations and `ctx.ask` mint `requestState` tokens that must verify on any replica."],[309,"Set `BITMCP_STATE_KEY` in production. Configure `http.allowedHosts` and `http.cors` in `bitmcp.config.ts` for public HTTP."],[308,"Set `deploy: \"node\"` in `bitmcp.config.ts` (this is the default)."],[366,"Set `false` to disable card generation while keeping other config"],[338,"Set `http.allowedHosts` in `bitmcp.config.ts` to your deployment host"],[290,"Set `http.allowedHosts` in `bitmcp.config.ts` to your workers.dev or custom domain"],[384,"Set `MCP_URL` in production so the server card advertises the correct public endpoint across replicas."],[111,"Set `MCP_URL` to your public MCP endpoint in production. Set `BITMCP_STATE_KEY` if you use confirm or `ctx.ask`."],[291,"Set `MCP_URL` when OAuth is enabled"],[339,"Set `MCP_URL` when OAuth is enabled"],[22,"Set environment variables"],[53,"Set environment variables"],[97,"Set environment variables"],[330,"Set environment variables"],[283,"Set secrets and config"],[108,"Set the consent URL to a route your app implements (for example `http://localhost:3000/auth/consent`)"],[485,"Shared HMAC key for MRTR `requestState`"],[2,"Shared-secret dev gate with apiKey(). Not MCP OAuth."],[376,"Source repository metadata"],[451,"start"],[315,"Start stdio transport"],[317,"Start Streamable HTTP on Node"],[36,"Start the server with `pnpm dev` or `pnpm start`"],[64,"Start your Better Auth app and the bitmcp server"],[301,"Stateless replicas"],[175,"Stateless replicas can serve status checks with the same `jobId` arg"],[160,"Stateless requests"],[403,"stdio"],[391,"stdio clients"],[323,"Store job state behind a `HandleStore` (KV, Redis, D1)"],[224,"Styling"],[94,"Supabase"],[95,"Supabase OAuth 2.1 server authentication for bitmcp."],[236,"Tailwind v4 CSS for classes used in that View"],[196,"Text is always produced"],[148,"Text-only hosts see `message`"],[288,"That writes `deploy: \"cloudflare\"` and `wrangler.jsonc` with `main` set to `dist/server.js`."],[335,"That writes `deploy: \"vercel\"` and `vercel.json` with a rewrite from `/mcp` to `/api/mcp`."],[152,"The `examples/confirm` app deletes rows only after MRTR acceptance. Try the tool in a text-only client to verify MRTR without a View:"],[171,"The `examples/task` app starts a long ingest job and returns a handle right away:"],[380,"The `remotes[0].url` field reflects where clients should connect:"],[32,"The API identifier should match your public MCP URL or the `resource` you configure in bitmcp."],[311,"The CLI uses `createApp.fromDir()` internally. You rarely need this in application code, but it is useful for tests and custom servers:"],[229,"The compiler bundles `view.tsx` with esbuild into one HTML document with MIME type `text/html;profile=mcp-app`."],[233,"The compiler injects:"],[362,"The default `name` comes from your npm package name. Scoped packages map to `scope.package/mcp`."],[167,"The model and the View pass `jobId` back as a normal argument on the next call."],[151,"The mutation does not run on the first call and does not replay"],[136,"The registered name is `forecast.refresh`."],[441,"The scaffold includes:"],[511,"The server graph must not leak into the iframe bundle."],[507,"The tool name defaults to the folder name (`hello`, `forecast`, `delete_rows`). Actions in `actions.ts` are namespaced as `<folder>.<export>` (`forecast.refresh`, `hello.shout`)."],[508,"These imports fail the build:"],[139,"This uses the official Apps visibility field, not a bitmcp invention."],[115,"To query Supabase as the authenticated user, create a Supabase client in your tool using the access token from the MCP session. bitmcp does not put the raw token on `ctx.user`; read it from your auth layer or pass data scoped by `ctx.user.id` in application code."],[46,"Token audience and default OAuth resource"],[85,"Tokens must target your MCP server. In production set `MCP_URL` to the same URL you use as the OAuth resource (for example `https://mcp.example.com/mcp`). You can also pass `resource` on the provider options."],[184,"ToolContext"],[176,"Tools"],[389,"Transports"],[237,"Typed `result` from the sibling tool"],[149,"UI hosts may render `preview` from the MRTR `structuredContent`"],[415,"UI-capable hosts advertise the extension `io.modelcontextprotocol/ui` and MIME type `text/html;profile=mcp-app`. Cursor, Claude, VS Code, and ChatGPT load your hashed HTML in a sandbox iframe when supported."],[219,"ui:// resources"],[230,"URI shape: `ui://tools/<name>/<hash>`"],[354,"URL"],[4,"Use `apiKey()` for internal or development gates only. It validates a header and does not set `ctx.user`. This is not MCP OAuth."],[454,"Use `bitmcp dev --stdio` when a desktop host should spawn the server on stdio."],[84,"Use `custom()` when verification logic is not a standard JWT flow:"],[83,"Use `jwtOAuthProvider()` with a short spec:"],[82,"Use a custom provider when your identity provider is not covered by a built-in plugin, you need token introspection instead of JWT verification, or claim mapping differs from the defaults."],[399,"Use case"],[24,"Use ctx.user in tools"],[55,"Use ctx.user in tools"],[99,"Use ctx.user in tools"],[473,"Use stdio instead of HTTP plus preview"],[276,"Use these only when you need direct access to the official client. The happy path is `useApp()`."],[27,"Use this when Auth0 is your authorization server. MCP clients register directly with Auth0 and send Auth0 access tokens to your MCP server."],[58,"Use this when Better Auth's OAuth 2.1 plugin is your authorization server. Better Auth owns registration, authorization, consent, and token issuance. bitmcp verifies JWT access tokens against Better Auth's JWKS endpoint."],[103,"Use this when Supabase Auth is your authorization server. Supabase handles login, consent, client registration, and token issuance. bitmcp verifies access tokens and maps claims to `ctx.user`."],[222,"useApp()"],[41,"Variable"],[69,"Variable"],[87,"Variable"],[117,"Variable"],[418,"Variable"],[480,"Variable"],[327,"Vercel"],[326,"Vercel and Cloudflare for platform-specific scaffold and config."],[295,"Vercel and Node and custom deploy the same `dist/server.js` artifact."],[350,"Vercel rewrite"],[25,"Verify"],[56,"Verify"],[100,"Verify"],[324,"View HTML is content-addressed. Every replica serves the same hash for the same build"],[242,"View reads `result` from `useApp()`"],[217,"Views"],[258,"Views never call your server directly. `callTool` goes through the host, which issues a new stateless `tools/call`. Network from the iframe is CSP-gated. Tool calls are not."],[181,"Visibility"],[319,"Web-standard handler"],[359,"Well-known alias"],[503,"What the compiler emits"],[162,"What this proves"],[118,"When"],[361,"When `serverCard` is not disabled, bitmcp builds a card from your app config and package metadata:"],[214,"When OAuth is enabled and the request is authenticated:"],[342,"When OAuth is enabled, set `MCP_URL` to your public MCP endpoint (for example `https://your-app.vercel.app/mcp`). See Supabase or other auth guides."],[294,"When OAuth is enabled, set `MCP_URL` to your public MCP endpoint. See Authentication."],[383,"When OAuth is enabled, the remote URL must match your configured OAuth resource"],[416,"When the client cannot render Apps, bitmcp strips UI metadata for that request. You still get tool text content and MRTR confirmations. Degradation order: **text → MRTR → View**."],[132,"Why actions exist"],[77,"Wire any OAuth authorization server with custom() or jwtOAuthProvider()."],[293,"Wrangler runs `pnpm build` and serves `dist/server.js` directly."],[532,"Written by `--deploy cloudflare`"],[530,"Written by `--deploy vercel`"]],"type":"string"},"page_id":{"docs":{"1":0,"2":1,"3":2,"4":3,"5":4,"6":5,"7":6,"8":7,"9":8,"10":9,"11":10,"12":11,"13":12,"14":13,"15":14,"16":15,"17":16,"18":17,"19":18,"20":19,"21":20,"22":21,"23":22,"24":23,"25":24,"26":25,"27":26,"28":27,"29":28,"30":29,"31":30,"32":31,"33":32,"34":33,"35":34,"36":35,"37":36,"38":37,"39":38,"40":39,"41":40,"42":41,"43":42,"44":43,"45":44,"46":45,"47":46,"48":47,"49":48,"50":49,"51":50,"52":51,"53":52,"54":53,"55":54,"56":55,"57":56,"58":57,"59":58,"60":59,"61":60,"62":61,"63":62,"64":63,"65":64,"66":65,"67":66,"68":67,"69":68,"70":69,"71":70,"72":71,"73":72,"74":73,"75":74,"76":75,"77":76,"78":77,"79":78,"80":79,"81":80,"82":81,"83":82,"84":83,"85":84,"86":85,"87":86,"88":87,"89":88,"90":89,"91":90,"92":91,"93":92,"94":93,"95":94,"96":95,"97":96,"98":97,"99":98,"100":99,"101":100,"102":101,"103":102,"104":103,"105":104,"106":105,"107":106,"108":107,"109":108,"110":109,"111":110,"112":111,"113":112,"114":113,"115":114,"116":115,"117":116,"118":117,"119":118,"120":119,"121":120,"122":121,"123":122,"124":123,"125":124,"126":125,"127":126,"128":127,"129":128,"130":129,"131":130,"132":131,"133":132,"134":133,"135":134,"136":135,"137":136,"138":137,"139":138,"140":139,"141":140,"142":141,"143":142,"144":143,"145":144,"146":145,"147":146,"148":147,"149":148,"150":149,"151":150,"152":151,"153":152,"154":153,"155":154,"156":155,"157":156,"158":157,"159":158,"160":159,"161":160,"162":161,"163":162,"164":163,"165":164,"166":165,"167":166,"168":167,"169":168,"170":169,"171":170,"172":171,"173":172,"174":173,"175":174,"176":175,"177":176,"178":177,"179":178,"180":179,"181":180,"182":181,"183":182,"184":183,"185":184,"186":185,"187":186,"188":187,"189":188,"190":189,"191":190,"192":191,"193":192,"194":193,"195":194,"196":195,"197":196,"198":197,"199":198,"200":199,"201":200,"202":201,"203":202,"204":203,"205":204,"206":205,"207":206,"208":207,"209":208,"210":209,"211":210,"212":211,"213":212,"214":213,"215":214,"216":215,"217":216,"218":217,"219":218,"220":219,"221":220,"222":221,"223":222,"224":223,"225":224,"226":225,"227":226,"228":227,"229":228,"230":229,"231":230,"232":231,"233":232,"234":233,"235":234,"236":235,"237":236,"238":237,"239":238,"240":239,"241":240,"242":241,"243":242,"244":243,"245":244,"246":245,"247":246,"248":247,"249":248,"250":249,"251":250,"252":251,"253":252,"254":253,"255":254,"256":255,"257":256,"258":257,"259":258,"260":259,"261":260,"262":261,"263":262,"264":263,"265":264,"266":265,"267":266,"268":267,"269":268,"270":269,"271":270,"272":271,"273":272,"274":273,"275":274,"276":275,"277":276,"278":277,"279":278,"280":279,"281":280,"282":281,"283":282,"284":283,"285":284,"286":285,"287":286,"288":287,"289":288,"290":289,"291":290,"292":291,"293":292,"294":293,"295":294,"296":295,"297":296,"298":297,"299":298,"300":299,"301":300,"302":301,"303":302,"304":303,"305":304,"306":305,"307":306,"308":307,"309":308,"310":309,"311":310,"312":311,"313":312,"314":313,"315":314,"316":315,"317":316,"318":317,"319":318,"320":319,"321":320,"322":321,"323":322,"324":323,"325":324,"326":325,"327":326,"328":327,"329":328,"330":329,"331":330,"332":331,"333":332,"334":333,"335":334,"336":335,"337":336,"338":337,"339":338,"340":339,"341":340,"342":341,"343":342,"344":343,"345":344,"346":345,"347":346,"348":347,"349":348,"350":349,"351":350,"352":351,"353":352,"354":353,"355":354,"356":355,"357":356,"358":357,"359":358,"360":359,"361":360,"362":361,"363":362,"364":363,"365":364,"366":365,"367":366,"368":367,"369":368,"370":369,"371":370,"372":371,"373":372,"374":373,"375":374,"376":375,"377":376,"378":377,"379":378,"380":379,"381":380,"382":381,"383":382,"384":383,"385":384,"386":385,"387":386,"388":387,"389":388,"390":389,"391":390,"392":391,"393":392,"394":393,"395":394,"396":395,"397":396,"398":397,"399":398,"400":399,"401":400,"402":401,"403":402,"404":403,"405":404,"406":405,"407":406,"408":407,"409":408,"410":409,"411":410,"412":411,"413":412,"414":413,"415":414,"416":415,"417":416,"418":417,"419":418,"420":419,"421":420,"422":421,"423":422,"424":423,"425":424,"426":425,"427":426,"428":427,"429":428,"430":429,"431":430,"432":431,"433":432,"434":433,"435":434,"436":435,"437":436,"438":437,"439":438,"440":439,"441":440,"442":441,"443":442,"444":443,"445":444,"446":445,"447":446,"448":447,"449":448,"450":449,"451":450,"452":451,"453":452,"454":453,"455":454,"456":455,"457":456,"458":457,"459":458,"460":459,"461":460,"462":461,"463":462,"464":463,"465":464,"466":465,"467":466,"468":467,"469":468,"470":469,"471":470,"472":471,"473":472,"474":473,"475":474,"476":475,"477":476,"478":477,"479":478,"480":479,"481":480,"482":481,"483":482,"484":483,"485":484,"486":485,"487":486,"488":487,"489":488,"490":489,"491":490,"492":491,"493":492,"494":493,"495":494,"496":495,"497":496,"498":497,"499":498,"500":499,"501":500,"502":501,"503":502,"504":503,"505":504,"506":505,"507":506,"508":507,"509":508,"510":509,"511":510,"512":511,"513":512,"514":513,"515":514,"516":515,"517":516,"518":517,"519":518,"520":519,"521":520,"522":521,"523":522,"524":523,"525":524,"526":525,"527":526,"528":527,"529":528,"530":529,"531":530,"532":531,"533":532},"orderedDocs":[[1,"/docs/authentication/api-key"],[2,"/docs/authentication/api-key"],[3,"/docs/authentication/api-key"],[4,"/docs/authentication/api-key"],[5,"/docs/authentication/api-key"],[6,"/docs/authentication/api-key"],[7,"/docs/authentication/api-key"],[8,"/docs/authentication/api-key"],[9,"/docs/authentication/api-key"],[10,"/docs/authentication/api-key"],[11,"/docs/authentication/api-key"],[12,"/docs/authentication/api-key"],[13,"/docs/authentication/api-key"],[14,"/docs/authentication/api-key"],[15,"/docs/authentication/api-key"],[16,"/docs/authentication/api-key"],[17,"/docs/authentication/api-key"],[18,"/docs/authentication/api-key"],[19,"/docs/authentication/auth0"],[20,"/docs/authentication/auth0"],[21,"/docs/authentication/auth0"],[22,"/docs/authentication/auth0"],[23,"/docs/authentication/auth0"],[24,"/docs/authentication/auth0"],[25,"/docs/authentication/auth0"],[26,"/docs/authentication/auth0"],[27,"/docs/authentication/auth0"],[28,"/docs/authentication/auth0"],[29,"/docs/authentication/auth0"],[30,"/docs/authentication/auth0"],[31,"/docs/authentication/auth0"],[32,"/docs/authentication/auth0"],[33,"/docs/authentication/auth0"],[34,"/docs/authentication/auth0"],[35,"/docs/authentication/auth0"],[36,"/docs/authentication/auth0"],[37,"/docs/authentication/auth0"],[38,"/docs/authentication/auth0"],[39,"/docs/authentication/auth0"],[40,"/docs/authentication/auth0"],[41,"/docs/authentication/auth0"],[42,"/docs/authentication/auth0"],[43,"/docs/authentication/auth0"],[44,"/docs/authentication/auth0"],[45,"/docs/authentication/auth0"],[46,"/docs/authentication/auth0"],[47,"/docs/authentication/auth0"],[48,"/docs/authentication/auth0"],[49,"/docs/authentication/auth0"],[50,"/docs/authentication/better-auth"],[51,"/docs/authentication/better-auth"],[52,"/docs/authentication/better-auth"],[53,"/docs/authentication/better-auth"],[54,"/docs/authentication/better-auth"],[55,"/docs/authentication/better-auth"],[56,"/docs/authentication/better-auth"],[57,"/docs/authentication/better-auth"],[58,"/docs/authentication/better-auth"],[59,"/docs/authentication/better-auth"],[60,"/docs/authentication/better-auth"],[61,"/docs/authentication/better-auth"],[62,"/docs/authentication/better-auth"],[63,"/docs/authentication/better-auth"],[64,"/docs/authentication/better-auth"],[65,"/docs/authentication/better-auth"],[66,"/docs/authentication/better-auth"],[67,"/docs/authentication/better-auth"],[68,"/docs/authentication/better-auth"],[69,"/docs/authentication/better-auth"],[70,"/docs/authentication/better-auth"],[71,"/docs/authentication/better-auth"],[72,"/docs/authentication/better-auth"],[73,"/docs/authentication/better-auth"],[74,"/docs/authentication/better-auth"],[75,"/docs/authentication/better-auth"],[76,"/docs/authentication/custom"],[77,"/docs/authentication/custom"],[78,"/docs/authentication/custom"],[79,"/docs/authentication/custom"],[80,"/docs/authentication/custom"],[81,"/docs/authentication/custom"],[82,"/docs/authentication/custom"],[83,"/docs/authentication/custom"],[84,"/docs/authentication/custom"],[85,"/docs/authentication/custom"],[86,"/docs/authentication/custom"],[87,"/docs/authentication/custom"],[88,"/docs/authentication/custom"],[89,"/docs/authentication/custom"],[90,"/docs/authentication/custom"],[91,"/docs/authentication/custom"],[92,"/docs/authentication/custom"],[93,"/docs/authentication/custom"],[94,"/docs/authentication/supabase"],[95,"/docs/authentication/supabase"],[96,"/docs/authentication/supabase"],[97,"/docs/authentication/supabase"],[98,"/docs/authentication/supabase"],[99,"/docs/authentication/supabase"],[100,"/docs/authentication/supabase"],[101,"/docs/authentication/supabase"],[102,"/docs/authentication/supabase"],[103,"/docs/authentication/supabase"],[104,"/docs/authentication/supabase"],[105,"/docs/authentication/supabase"],[106,"/docs/authentication/supabase"],[107,"/docs/authentication/supabase"],[108,"/docs/authentication/supabase"],[109,"/docs/authentication/supabase"],[110,"/docs/authentication/supabase"],[111,"/docs/authentication/supabase"],[112,"/docs/authentication/supabase"],[113,"/docs/authentication/supabase"],[114,"/docs/authentication/supabase"],[115,"/docs/authentication/supabase"],[116,"/docs/authentication/supabase"],[117,"/docs/authentication/supabase"],[118,"/docs/authentication/supabase"],[119,"/docs/authentication/supabase"],[120,"/docs/authentication/supabase"],[121,"/docs/authentication/supabase"],[122,"/docs/authentication/supabase"],[123,"/docs/authentication/supabase"],[124,"/docs/authentication/supabase"],[125,"/docs/authentication/supabase"],[126,"/docs/authentication/supabase"],[127,"/docs/authentication/supabase"],[128,"/docs/core-concepts/actions"],[129,"/docs/core-concepts/actions"],[130,"/docs/core-concepts/actions"],[131,"/docs/core-concepts/actions"],[132,"/docs/core-concepts/actions"],[133,"/docs/core-concepts/actions"],[134,"/docs/core-concepts/actions"],[135,"/docs/core-concepts/actions"],[136,"/docs/core-concepts/actions"],[137,"/docs/core-concepts/actions"],[138,"/docs/core-concepts/actions"],[139,"/docs/core-concepts/actions"],[140,"/docs/core-concepts/confirmations"],[141,"/docs/core-concepts/confirmations"],[142,"/docs/core-concepts/confirmations"],[143,"/docs/core-concepts/confirmations"],[144,"/docs/core-concepts/confirmations"],[145,"/docs/core-concepts/confirmations"],[146,"/docs/core-concepts/confirmations"],[147,"/docs/core-concepts/confirmations"],[148,"/docs/core-concepts/confirmations"],[149,"/docs/core-concepts/confirmations"],[150,"/docs/core-concepts/confirmations"],[151,"/docs/core-concepts/confirmations"],[152,"/docs/core-concepts/confirmations"],[153,"/docs/core-concepts/confirmations"],[154,"/docs/core-concepts/confirmations"],[155,"/docs/core-concepts/confirmations"],[156,"/docs/core-concepts/confirmations"],[157,"/docs/core-concepts/handles"],[158,"/docs/core-concepts/handles"],[159,"/docs/core-concepts/handles"],[160,"/docs/core-concepts/handles"],[161,"/docs/core-concepts/handles"],[162,"/docs/core-concepts/handles"],[163,"/docs/core-concepts/handles"],[164,"/docs/core-concepts/handles"],[165,"/docs/core-concepts/handles"],[166,"/docs/core-concepts/handles"],[167,"/docs/core-concepts/handles"],[168,"/docs/core-concepts/handles"],[169,"/docs/core-concepts/handles"],[170,"/docs/core-concepts/handles"],[171,"/docs/core-concepts/handles"],[172,"/docs/core-concepts/handles"],[173,"/docs/core-concepts/handles"],[174,"/docs/core-concepts/handles"],[175,"/docs/core-concepts/handles"],[176,"/docs/core-concepts/tools"],[177,"/docs/core-concepts/tools"],[178,"/docs/core-concepts/tools"],[179,"/docs/core-concepts/tools"],[180,"/docs/core-concepts/tools"],[181,"/docs/core-concepts/tools"],[182,"/docs/core-concepts/tools"],[183,"/docs/core-concepts/tools"],[184,"/docs/core-concepts/tools"],[185,"/docs/core-concepts/tools"],[186,"/docs/core-concepts/tools"],[187,"/docs/core-concepts/tools"],[188,"/docs/core-concepts/tools"],[189,"/docs/core-concepts/tools"],[190,"/docs/core-concepts/tools"],[191,"/docs/core-concepts/tools"],[192,"/docs/core-concepts/tools"],[193,"/docs/core-concepts/tools"],[194,"/docs/core-concepts/tools"],[195,"/docs/core-concepts/tools"],[196,"/docs/core-concepts/tools"],[197,"/docs/core-concepts/tools"],[198,"/docs/core-concepts/tools"],[199,"/docs/core-concepts/tools"],[200,"/docs/core-concepts/tools"],[201,"/docs/core-concepts/tools"],[202,"/docs/core-concepts/tools"],[203,"/docs/core-concepts/tools"],[204,"/docs/core-concepts/tools"],[205,"/docs/core-concepts/tools"],[206,"/docs/core-concepts/tools"],[207,"/docs/core-concepts/tools"],[208,"/docs/core-concepts/tools"],[209,"/docs/core-concepts/tools"],[210,"/docs/core-concepts/tools"],[211,"/docs/core-concepts/tools"],[212,"/docs/core-concepts/tools"],[213,"/docs/core-concepts/tools"],[214,"/docs/core-concepts/tools"],[215,"/docs/core-concepts/tools"],[216,"/docs/core-concepts/tools"],[217,"/docs/core-concepts/views"],[218,"/docs/core-concepts/views"],[219,"/docs/core-concepts/views"],[220,"/docs/core-concepts/views"],[221,"/docs/core-concepts/views"],[222,"/docs/core-concepts/views"],[223,"/docs/core-concepts/views"],[224,"/docs/core-concepts/views"],[225,"/docs/core-concepts/views"],[226,"/docs/core-concepts/views"],[227,"/docs/core-concepts/views"],[228,"/docs/core-concepts/views"],[229,"/docs/core-concepts/views"],[230,"/docs/core-concepts/views"],[231,"/docs/core-concepts/views"],[232,"/docs/core-concepts/views"],[233,"/docs/core-concepts/views"],[234,"/docs/core-concepts/views"],[235,"/docs/core-concepts/views"],[236,"/docs/core-concepts/views"],[237,"/docs/core-concepts/views"],[238,"/docs/core-concepts/views"],[239,"/docs/core-concepts/views"],[240,"/docs/core-concepts/views"],[241,"/docs/core-concepts/views"],[242,"/docs/core-concepts/views"],[243,"/docs/core-concepts/views"],[244,"/docs/core-concepts/views"],[245,"/docs/core-concepts/views"],[246,"/docs/core-concepts/views"],[247,"/docs/core-concepts/views"],[248,"/docs/core-concepts/views"],[249,"/docs/core-concepts/views"],[250,"/docs/core-concepts/views"],[251,"/docs/core-concepts/views"],[252,"/docs/core-concepts/views"],[253,"/docs/core-concepts/views"],[254,"/docs/core-concepts/views"],[255,"/docs/core-concepts/views"],[256,"/docs/core-concepts/views"],[257,"/docs/core-concepts/views"],[258,"/docs/core-concepts/views"],[259,"/docs/core-concepts/views"],[260,"/docs/core-concepts/views"],[261,"/docs/core-concepts/views"],[262,"/docs/core-concepts/views"],[263,"/docs/core-concepts/views"],[264,"/docs/core-concepts/views"],[265,"/docs/core-concepts/views"],[266,"/docs/core-concepts/views"],[267,"/docs/core-concepts/views"],[268,"/docs/core-concepts/views"],[269,"/docs/core-concepts/views"],[270,"/docs/core-concepts/views"],[271,"/docs/core-concepts/views"],[272,"/docs/core-concepts/views"],[273,"/docs/core-concepts/views"],[274,"/docs/core-concepts/views"],[275,"/docs/core-concepts/views"],[276,"/docs/core-concepts/views"],[277,"/docs/core-concepts/views"],[278,"/docs/core-concepts/views"],[279,"/docs/core-concepts/views"],[280,"/docs/deployment/cloudflare"],[281,"/docs/deployment/cloudflare"],[282,"/docs/deployment/cloudflare"],[283,"/docs/deployment/cloudflare"],[284,"/docs/deployment/cloudflare"],[285,"/docs/deployment/cloudflare"],[286,"/docs/deployment/cloudflare"],[287,"/docs/deployment/cloudflare"],[288,"/docs/deployment/cloudflare"],[289,"/docs/deployment/cloudflare"],[290,"/docs/deployment/cloudflare"],[291,"/docs/deployment/cloudflare"],[292,"/docs/deployment/cloudflare"],[293,"/docs/deployment/cloudflare"],[294,"/docs/deployment/cloudflare"],[295,"/docs/deployment/cloudflare"],[296,"/docs/deployment/node"],[297,"/docs/deployment/node"],[298,"/docs/deployment/node"],[299,"/docs/deployment/node"],[300,"/docs/deployment/node"],[301,"/docs/deployment/node"],[302,"/docs/deployment/node"],[303,"/docs/deployment/node"],[304,"/docs/deployment/node"],[305,"/docs/deployment/node"],[306,"/docs/deployment/node"],[307,"/docs/deployment/node"],[308,"/docs/deployment/node"],[309,"/docs/deployment/node"],[310,"/docs/deployment/node"],[311,"/docs/deployment/node"],[312,"/docs/deployment/node"],[313,"/docs/deployment/node"],[314,"/docs/deployment/node"],[315,"/docs/deployment/node"],[316,"/docs/deployment/node"],[317,"/docs/deployment/node"],[318,"/docs/deployment/node"],[319,"/docs/deployment/node"],[320,"/docs/deployment/node"],[321,"/docs/deployment/node"],[322,"/docs/deployment/node"],[323,"/docs/deployment/node"],[324,"/docs/deployment/node"],[325,"/docs/deployment/node"],[326,"/docs/deployment/node"],[327,"/docs/deployment/vercel"],[328,"/docs/deployment/vercel"],[329,"/docs/deployment/vercel"],[330,"/docs/deployment/vercel"],[331,"/docs/deployment/vercel"],[332,"/docs/deployment/vercel"],[333,"/docs/deployment/vercel"],[334,"/docs/deployment/vercel"],[335,"/docs/deployment/vercel"],[336,"/docs/deployment/vercel"],[337,"/docs/deployment/vercel"],[338,"/docs/deployment/vercel"],[339,"/docs/deployment/vercel"],[340,"/docs/deployment/vercel"],[341,"/docs/deployment/vercel"],[342,"/docs/deployment/vercel"],[343,"/docs/deployment/vercel"],[344,"/docs/discoverability/server-card"],[345,"/docs/discoverability/server-card"],[346,"/docs/discoverability/server-card"],[347,"/docs/discoverability/server-card"],[348,"/docs/discoverability/server-card"],[349,"/docs/discoverability/server-card"],[350,"/docs/discoverability/server-card"],[351,"/docs/discoverability/server-card"],[352,"/docs/discoverability/server-card"],[353,"/docs/discoverability/server-card"],[354,"/docs/discoverability/server-card"],[355,"/docs/discoverability/server-card"],[356,"/docs/discoverability/server-card"],[357,"/docs/discoverability/server-card"],[358,"/docs/discoverability/server-card"],[359,"/docs/discoverability/server-card"],[360,"/docs/discoverability/server-card"],[361,"/docs/discoverability/server-card"],[362,"/docs/discoverability/server-card"],[363,"/docs/discoverability/server-card"],[364,"/docs/discoverability/server-card"],[365,"/docs/discoverability/server-card"],[366,"/docs/discoverability/server-card"],[367,"/docs/discoverability/server-card"],[368,"/docs/discoverability/server-card"],[369,"/docs/discoverability/server-card"],[370,"/docs/discoverability/server-card"],[371,"/docs/discoverability/server-card"],[372,"/docs/discoverability/server-card"],[373,"/docs/discoverability/server-card"],[374,"/docs/discoverability/server-card"],[375,"/docs/discoverability/server-card"],[376,"/docs/discoverability/server-card"],[377,"/docs/discoverability/server-card"],[378,"/docs/discoverability/server-card"],[379,"/docs/discoverability/server-card"],[380,"/docs/discoverability/server-card"],[381,"/docs/discoverability/server-card"],[382,"/docs/discoverability/server-card"],[383,"/docs/discoverability/server-card"],[384,"/docs/discoverability/server-card"],[385,"/docs/discoverability/server-card"],[386,"/docs/discoverability/server-card"],[387,"/docs/getting-started/connecting"],[388,"/docs/getting-started/connecting"],[389,"/docs/getting-started/connecting"],[390,"/docs/getting-started/connecting"],[391,"/docs/getting-started/connecting"],[392,"/docs/getting-started/connecting"],[393,"/docs/getting-started/connecting"],[394,"/docs/getting-started/connecting"],[395,"/docs/getting-started/connecting"],[396,"/docs/getting-started/connecting"],[397,"/docs/getting-started/connecting"],[398,"/docs/getting-started/connecting"],[399,"/docs/getting-started/connecting"],[400,"/docs/getting-started/connecting"],[401,"/docs/getting-started/connecting"],[402,"/docs/getting-started/connecting"],[403,"/docs/getting-started/connecting"],[404,"/docs/getting-started/connecting"],[405,"/docs/getting-started/connecting"],[406,"/docs/getting-started/connecting"],[407,"/docs/getting-started/connecting"],[408,"/docs/getting-started/connecting"],[409,"/docs/getting-started/connecting"],[410,"/docs/getting-started/connecting"],[411,"/docs/getting-started/connecting"],[412,"/docs/getting-started/connecting"],[413,"/docs/getting-started/connecting"],[414,"/docs/getting-started/connecting"],[415,"/docs/getting-started/connecting"],[416,"/docs/getting-started/connecting"],[417,"/docs/getting-started/connecting"],[418,"/docs/getting-started/connecting"],[419,"/docs/getting-started/connecting"],[420,"/docs/getting-started/connecting"],[421,"/docs/getting-started/connecting"],[422,"/docs/getting-started/connecting"],[423,"/docs/getting-started/connecting"],[424,"/docs/getting-started/connecting"],[425,"/docs/getting-started/connecting"],[426,"/docs/getting-started/connecting"],[427,"/docs/getting-started/connecting"],[428,"/docs/getting-started/connecting"],[429,"/docs/getting-started/connecting"],[430,"/docs/getting-started/connecting"],[431,"/docs/getting-started/connecting"],[432,"/docs/getting-started/connecting"],[433,"/docs/getting-started/installation"],[434,"/docs/getting-started/installation"],[435,"/docs/getting-started/installation"],[436,"/docs/getting-started/installation"],[437,"/docs/getting-started/installation"],[438,"/docs/getting-started/installation"],[439,"/docs/getting-started/installation"],[440,"/docs/getting-started/installation"],[441,"/docs/getting-started/installation"],[442,"/docs/getting-started/installation"],[443,"/docs/getting-started/installation"],[444,"/docs/getting-started/installation"],[445,"/docs/getting-started/installation"],[446,"/docs/getting-started/installation"],[447,"/docs/getting-started/installation"],[448,"/docs/getting-started/installation"],[449,"/docs/getting-started/installation"],[450,"/docs/getting-started/installation"],[451,"/docs/getting-started/installation"],[452,"/docs/getting-started/installation"],[453,"/docs/getting-started/installation"],[454,"/docs/getting-started/installation"],[455,"/docs/getting-started/installation"],[456,"/docs/getting-started/installation"],[457,"/docs/getting-started/installation"],[458,"/docs/getting-started/installation"],[459,"/docs/getting-started/installation"],[460,"/docs/getting-started/installation"],[461,"/docs/getting-started/installation"],[462,"/docs/getting-started/installation"],[463,"/docs/getting-started/installation"],[464,"/docs/getting-started/installation"],[465,"/docs/getting-started/installation"],[466,"/docs/getting-started/installation"],[467,"/docs/getting-started/installation"],[468,"/docs/getting-started/installation"],[469,"/docs/getting-started/installation"],[470,"/docs/getting-started/installation"],[471,"/docs/getting-started/installation"],[472,"/docs/getting-started/installation"],[473,"/docs/getting-started/installation"],[474,"/docs/getting-started/installation"],[475,"/docs/getting-started/installation"],[476,"/docs/getting-started/installation"],[477,"/docs/getting-started/installation"],[478,"/docs/getting-started/installation"],[479,"/docs/getting-started/installation"],[480,"/docs/getting-started/installation"],[481,"/docs/getting-started/installation"],[482,"/docs/getting-started/installation"],[483,"/docs/getting-started/installation"],[484,"/docs/getting-started/installation"],[485,"/docs/getting-started/installation"],[486,"/docs/getting-started/installation"],[487,"/docs/getting-started/installation"],[488,"/docs/getting-started/installation"],[489,"/docs/getting-started/installation"],[490,"/docs/getting-started/installation"],[491,"/docs/getting-started/installation"],[492,"/docs/getting-started/installation"],[493,"/docs/getting-started/installation"],[494,"/docs/getting-started/installation"],[495,"/docs/getting-started/installation"],[496,"/docs/getting-started/installation"],[497,"/docs/getting-started/installation"],[498,"/docs/getting-started/installation"],[499,"/docs/getting-started/project-structure"],[500,"/docs/getting-started/project-structure"],[501,"/docs/getting-started/project-structure"],[502,"/docs/getting-started/project-structure"],[503,"/docs/getting-started/project-structure"],[504,"/docs/getting-started/project-structure"],[505,"/docs/getting-started/project-structure"],[506,"/docs/getting-started/project-structure"],[507,"/docs/getting-started/project-structure"],[508,"/docs/getting-started/project-structure"],[509,"/docs/getting-started/project-structure"],[510,"/docs/getting-started/project-structure"],[511,"/docs/getting-started/project-structure"],[512,"/docs/getting-started/project-structure"],[513,"/docs/getting-started/project-structure"],[514,"/docs/getting-started/project-structure"],[515,"/docs/getting-started/project-structure"],[516,"/docs/getting-started/project-structure"],[517,"/docs/getting-started/project-structure"],[518,"/docs/getting-started/project-structure"],[519,"/docs/getting-started/project-structure"],[520,"/docs/getting-started/project-structure"],[521,"/docs/getting-started/project-structure"],[522,"/docs/getting-started/project-structure"],[523,"/docs/getting-started/project-structure"],[524,"/docs/getting-started/project-structure"],[525,"/docs/getting-started/project-structure"],[526,"/docs/getting-started/project-structure"],[527,"/docs/getting-started/project-structure"],[528,"/docs/getting-started/project-structure"],[529,"/docs/getting-started/project-structure"],[530,"/docs/getting-started/project-structure"],[531,"/docs/getting-started/project-structure"],[532,"/docs/getting-started/project-structure"],[533,"/docs/getting-started/project-structure"]],"type":"string"},"type":{"docs":{"1":91,"2":108,"3":0,"4":109,"5":110,"6":111,"7":112,"8":113,"9":114,"10":115,"11":116,"12":117,"13":118,"14":119,"15":120,"16":121,"17":122,"18":123,"19":92,"20":124,"21":1,"22":2,"23":3,"24":4,"25":5,"26":6,"27":125,"28":126,"29":127,"30":128,"31":129,"32":130,"33":131,"34":132,"35":133,"36":134,"37":135,"38":136,"39":137,"40":138,"41":139,"42":140,"43":141,"44":142,"45":143,"46":144,"47":145,"48":146,"49":147,"50":93,"51":148,"52":7,"53":8,"54":9,"55":10,"56":11,"57":12,"58":149,"59":150,"60":151,"61":152,"62":153,"63":154,"64":155,"65":156,"66":157,"67":158,"68":159,"69":160,"70":161,"71":162,"72":163,"73":164,"74":165,"75":166,"76":94,"77":167,"78":13,"79":14,"80":15,"81":16,"82":168,"83":169,"84":170,"85":171,"86":172,"87":173,"88":174,"89":175,"90":176,"91":177,"92":178,"93":179,"94":95,"95":180,"96":17,"97":18,"98":19,"99":20,"100":21,"101":22,"102":23,"103":181,"104":182,"105":183,"106":184,"107":185,"108":186,"109":187,"110":188,"111":189,"112":190,"113":191,"114":192,"115":193,"116":194,"117":195,"118":196,"119":197,"120":198,"121":199,"122":200,"123":201,"124":202,"125":203,"126":204,"127":205,"128":96,"129":206,"130":24,"131":25,"132":26,"133":207,"134":208,"135":209,"136":210,"137":211,"138":212,"139":213,"140":97,"141":214,"142":27,"143":28,"144":29,"145":30,"146":215,"147":216,"148":217,"149":218,"150":219,"151":220,"152":221,"153":222,"154":223,"155":224,"156":225,"157":98,"158":226,"159":31,"160":32,"161":33,"162":34,"163":227,"164":228,"165":229,"166":230,"167":231,"168":232,"169":233,"170":234,"171":235,"172":236,"173":237,"174":238,"175":239,"176":99,"177":240,"178":35,"179":36,"180":37,"181":38,"182":39,"183":40,"184":41,"185":42,"186":241,"187":242,"188":243,"189":244,"190":245,"191":246,"192":247,"193":248,"194":249,"195":250,"196":251,"197":252,"198":253,"199":254,"200":255,"201":256,"202":257,"203":258,"204":259,"205":260,"206":261,"207":262,"208":263,"209":264,"210":265,"211":266,"212":267,"213":268,"214":269,"215":270,"216":271,"217":100,"218":272,"219":43,"220":44,"221":45,"222":46,"223":47,"224":48,"225":49,"226":50,"227":51,"228":273,"229":274,"230":275,"231":276,"232":277,"233":278,"234":279,"235":280,"236":281,"237":282,"238":283,"239":284,"240":285,"241":286,"242":287,"243":288,"244":289,"245":290,"246":291,"247":292,"248":293,"249":294,"250":295,"251":296,"252":297,"253":298,"254":299,"255":300,"256":301,"257":302,"258":303,"259":304,"260":305,"261":306,"262":307,"263":308,"264":309,"265":310,"266":311,"267":312,"268":313,"269":314,"270":315,"271":316,"272":317,"273":318,"274":319,"275":320,"276":321,"277":322,"278":323,"279":324,"280":101,"281":325,"282":52,"283":53,"284":54,"285":55,"286":56,"287":326,"288":327,"289":328,"290":329,"291":330,"292":331,"293":332,"294":333,"295":334,"296":102,"297":335,"298":57,"299":58,"300":59,"301":60,"302":61,"303":62,"304":336,"305":337,"306":338,"307":339,"308":340,"309":341,"310":342,"311":343,"312":344,"313":345,"314":346,"315":347,"316":348,"317":349,"318":350,"319":351,"320":352,"321":353,"322":354,"323":355,"324":356,"325":357,"326":358,"327":103,"328":359,"329":63,"330":64,"331":65,"332":66,"333":67,"334":360,"335":361,"336":362,"337":363,"338":364,"339":365,"340":366,"341":367,"342":368,"343":369,"344":104,"345":370,"346":68,"347":69,"348":70,"349":71,"350":72,"351":73,"352":371,"353":372,"354":373,"355":374,"356":375,"357":376,"358":377,"359":378,"360":379,"361":380,"362":381,"363":382,"364":383,"365":384,"366":385,"367":386,"368":387,"369":388,"370":389,"371":390,"372":391,"373":392,"374":393,"375":394,"376":395,"377":396,"378":397,"379":398,"380":399,"381":400,"382":401,"383":402,"384":403,"385":404,"386":405,"387":105,"388":406,"389":74,"390":75,"391":76,"392":77,"393":78,"394":79,"395":80,"396":407,"397":408,"398":409,"399":410,"400":411,"401":412,"402":413,"403":414,"404":415,"405":416,"406":417,"407":418,"408":419,"409":420,"410":421,"411":422,"412":423,"413":424,"414":425,"415":426,"416":427,"417":428,"418":429,"419":430,"420":431,"421":432,"422":433,"423":434,"424":435,"425":436,"426":437,"427":438,"428":439,"429":440,"430":441,"431":442,"432":443,"433":106,"434":444,"435":81,"436":82,"437":83,"438":84,"439":85,"440":445,"441":446,"442":447,"443":448,"444":449,"445":450,"446":451,"447":452,"448":453,"449":454,"450":455,"451":456,"452":457,"453":458,"454":459,"455":460,"456":461,"457":462,"458":463,"459":464,"460":465,"461":466,"462":467,"463":468,"464":469,"465":470,"466":471,"467":472,"468":473,"469":474,"470":475,"471":476,"472":477,"473":478,"474":479,"475":480,"476":481,"477":482,"478":483,"479":484,"480":485,"481":486,"482":487,"483":488,"484":489,"485":490,"486":491,"487":492,"488":493,"489":494,"490":495,"491":496,"492":497,"493":498,"494":499,"495":500,"496":501,"497":502,"498":503,"499":107,"500":504,"501":86,"502":87,"503":88,"504":89,"505":90,"506":505,"507":506,"508":507,"509":508,"510":509,"511":510,"512":511,"513":512,"514":513,"515":514,"516":515,"517":516,"518":517,"519":518,"520":519,"521":520,"522":521,"523":522,"524":523,"525":524,"526":525,"527":526,"528":527,"529":528,"530":529,"531":530,"532":531,"533":532},"orderedDocs":[[3,"heading"],[21,"heading"],[22,"heading"],[23,"heading"],[24,"heading"],[25,"heading"],[26,"heading"],[52,"heading"],[53,"heading"],[54,"heading"],[55,"heading"],[56,"heading"],[57,"heading"],[78,"heading"],[79,"heading"],[80,"heading"],[81,"heading"],[96,"heading"],[97,"heading"],[98,"heading"],[99,"heading"],[100,"heading"],[101,"heading"],[102,"heading"],[130,"heading"],[131,"heading"],[132,"heading"],[142,"heading"],[143,"heading"],[144,"heading"],[145,"heading"],[159,"heading"],[160,"heading"],[161,"heading"],[162,"heading"],[178,"heading"],[179,"heading"],[180,"heading"],[181,"heading"],[182,"heading"],[183,"heading"],[184,"heading"],[185,"heading"],[219,"heading"],[220,"heading"],[221,"heading"],[222,"heading"],[223,"heading"],[224,"heading"],[225,"heading"],[226,"heading"],[227,"heading"],[282,"heading"],[283,"heading"],[284,"heading"],[285,"heading"],[286,"heading"],[298,"heading"],[299,"heading"],[300,"heading"],[301,"heading"],[302,"heading"],[303,"heading"],[329,"heading"],[330,"heading"],[331,"heading"],[332,"heading"],[333,"heading"],[346,"heading"],[347,"heading"],[348,"heading"],[349,"heading"],[350,"heading"],[351,"heading"],[389,"heading"],[390,"heading"],[391,"heading"],[392,"heading"],[393,"heading"],[394,"heading"],[395,"heading"],[435,"heading"],[436,"heading"],[437,"heading"],[438,"heading"],[439,"heading"],[501,"heading"],[502,"heading"],[503,"heading"],[504,"heading"],[505,"heading"],[1,"page"],[19,"page"],[50,"page"],[76,"page"],[94,"page"],[128,"page"],[140,"page"],[157,"page"],[176,"page"],[217,"page"],[280,"page"],[296,"page"],[327,"page"],[344,"page"],[387,"page"],[433,"page"],[499,"page"],[2,"text"],[4,"text"],[5,"text"],[6,"text"],[7,"text"],[8,"text"],[9,"text"],[10,"text"],[11,"text"],[12,"text"],[13,"text"],[14,"text"],[15,"text"],[16,"text"],[17,"text"],[18,"text"],[20,"text"],[27,"text"],[28,"text"],[29,"text"],[30,"text"],[31,"text"],[32,"text"],[33,"text"],[34,"text"],[35,"text"],[36,"text"],[37,"text"],[38,"text"],[39,"text"],[40,"text"],[41,"text"],[42,"text"],[43,"text"],[44,"text"],[45,"text"],[46,"text"],[47,"text"],[48,"text"],[49,"text"],[51,"text"],[58,"text"],[59,"text"],[60,"text"],[61,"text"],[62,"text"],[63,"text"],[64,"text"],[65,"text"],[66,"text"],[67,"text"],[68,"text"],[69,"text"],[70,"text"],[71,"text"],[72,"text"],[73,"text"],[74,"text"],[75,"text"],[77,"text"],[82,"text"],[83,"text"],[84,"text"],[85,"text"],[86,"text"],[87,"text"],[88,"text"],[89,"text"],[90,"text"],[91,"text"],[92,"text"],[93,"text"],[95,"text"],[103,"text"],[104,"text"],[105,"text"],[106,"text"],[107,"text"],[108,"text"],[109,"text"],[110,"text"],[111,"text"],[112,"text"],[113,"text"],[114,"text"],[115,"text"],[116,"text"],[117,"text"],[118,"text"],[119,"text"],[120,"text"],[121,"text"],[122,"text"],[123,"text"],[124,"text"],[125,"text"],[126,"text"],[127,"text"],[129,"text"],[133,"text"],[134,"text"],[135,"text"],[136,"text"],[137,"text"],[138,"text"],[139,"text"],[141,"text"],[146,"text"],[147,"text"],[148,"text"],[149,"text"],[150,"text"],[151,"text"],[152,"text"],[153,"text"],[154,"text"],[155,"text"],[156,"text"],[158,"text"],[163,"text"],[164,"text"],[165,"text"],[166,"text"],[167,"text"],[168,"text"],[169,"text"],[170,"text"],[171,"text"],[172,"text"],[173,"text"],[174,"text"],[175,"text"],[177,"text"],[186,"text"],[187,"text"],[188,"text"],[189,"text"],[190,"text"],[191,"text"],[192,"text"],[193,"text"],[194,"text"],[195,"text"],[196,"text"],[197,"text"],[198,"text"],[199,"text"],[200,"text"],[201,"text"],[202,"text"],[203,"text"],[204,"text"],[205,"text"],[206,"text"],[207,"text"],[208,"text"],[209,"text"],[210,"text"],[211,"text"],[212,"text"],[213,"text"],[214,"text"],[215,"text"],[216,"text"],[218,"text"],[228,"text"],[229,"text"],[230,"text"],[231,"text"],[232,"text"],[233,"text"],[234,"text"],[235,"text"],[236,"text"],[237,"text"],[238,"text"],[239,"text"],[240,"text"],[241,"text"],[242,"text"],[243,"text"],[244,"text"],[245,"text"],[246,"text"],[247,"text"],[248,"text"],[249,"text"],[250,"text"],[251,"text"],[252,"text"],[253,"text"],[254,"text"],[255,"text"],[256,"text"],[257,"text"],[258,"text"],[259,"text"],[260,"text"],[261,"text"],[262,"text"],[263,"text"],[264,"text"],[265,"text"],[266,"text"],[267,"text"],[268,"text"],[269,"text"],[270,"text"],[271,"text"],[272,"text"],[273,"text"],[274,"text"],[275,"text"],[276,"text"],[277,"text"],[278,"text"],[279,"text"],[281,"text"],[287,"text"],[288,"text"],[289,"text"],[290,"text"],[291,"text"],[292,"text"],[293,"text"],[294,"text"],[295,"text"],[297,"text"],[304,"text"],[305,"text"],[306,"text"],[307,"text"],[308,"text"],[309,"text"],[310,"text"],[311,"text"],[312,"text"],[313,"text"],[314,"text"],[315,"text"],[316,"text"],[317,"text"],[318,"text"],[319,"text"],[320,"text"],[321,"text"],[322,"text"],[323,"text"],[324,"text"],[325,"text"],[326,"text"],[328,"text"],[334,"text"],[335,"text"],[336,"text"],[337,"text"],[338,"text"],[339,"text"],[340,"text"],[341,"text"],[342,"text"],[343,"text"],[345,"text"],[352,"text"],[353,"text"],[354,"text"],[355,"text"],[356,"text"],[357,"text"],[358,"text"],[359,"text"],[360,"text"],[361,"text"],[362,"text"],[363,"text"],[364,"text"],[365,"text"],[366,"text"],[367,"text"],[368,"text"],[369,"text"],[370,"text"],[371,"text"],[372,"text"],[373,"text"],[374,"text"],[375,"text"],[376,"text"],[377,"text"],[378,"text"],[379,"text"],[380,"text"],[381,"text"],[382,"text"],[383,"text"],[384,"text"],[385,"text"],[386,"text"],[388,"text"],[396,"text"],[397,"text"],[398,"text"],[399,"text"],[400,"text"],[401,"text"],[402,"text"],[403,"text"],[404,"text"],[405,"text"],[406,"text"],[407,"text"],[408,"text"],[409,"text"],[410,"text"],[411,"text"],[412,"text"],[413,"text"],[414,"text"],[415,"text"],[416,"text"],[417,"text"],[418,"text"],[419,"text"],[420,"text"],[421,"text"],[422,"text"],[423,"text"],[424,"text"],[425,"text"],[426,"text"],[427,"text"],[428,"text"],[429,"text"],[430,"text"],[431,"text"],[432,"text"],[434,"text"],[440,"text"],[441,"text"],[442,"text"],[443,"text"],[444,"text"],[445,"text"],[446,"text"],[447,"text"],[448,"text"],[449,"text"],[450,"text"],[451,"text"],[452,"text"],[453,"text"],[454,"text"],[455,"text"],[456,"text"],[457,"text"],[458,"text"],[459,"text"],[460,"text"],[461,"text"],[462,"text"],[463,"text"],[464,"text"],[465,"text"],[466,"text"],[467,"text"],[468,"text"],[469,"text"],[470,"text"],[471,"text"],[472,"text"],[473,"text"],[474,"text"],[475,"text"],[476,"text"],[477,"text"],[478,"text"],[479,"text"],[480,"text"],[481,"text"],[482,"text"],[483,"text"],[484,"text"],[485,"text"],[486,"text"],[487,"text"],[488,"text"],[489,"text"],[490,"text"],[491,"text"],[492,"text"],[493,"text"],[494,"text"],[495,"text"],[496,"text"],[497,"text"],[498,"text"],[500,"text"],[506,"text"],[507,"text"],[508,"text"],[509,"text"],[510,"text"],[511,"text"],[512,"text"],[513,"text"],[514,"text"],[515,"text"],[516,"text"],[517,"text"],[518,"text"],[519,"text"],[520,"text"],[521,"text"],[522,"text"],[523,"text"],[524,"text"],[525,"text"],[526,"text"],[527,"text"],[528,"text"],[529,"text"],[530,"text"],[531,"text"],[532,"text"],[533,"text"]],"type":"string"},"url":{"docs":{"1":0,"2":1,"3":4,"4":2,"5":3,"6":5,"7":6,"8":7,"9":8,"10":9,"11":10,"12":11,"13":12,"14":13,"15":14,"16":15,"17":16,"18":17,"19":18,"20":19,"21":21,"22":39,"23":27,"24":41,"25":43,"26":29,"27":20,"28":22,"29":23,"30":24,"31":25,"32":26,"33":40,"34":28,"35":42,"36":44,"37":45,"38":46,"39":47,"40":48,"41":30,"42":31,"43":32,"44":33,"45":34,"46":35,"47":36,"48":37,"49":38,"50":49,"51":50,"52":52,"53":67,"54":57,"55":68,"56":69,"57":59,"58":51,"59":53,"60":54,"61":55,"62":56,"63":58,"64":70,"65":71,"66":72,"67":73,"68":74,"69":60,"70":61,"71":62,"72":63,"73":64,"74":65,"75":66,"76":75,"77":76,"78":80,"79":78,"80":90,"81":82,"82":77,"83":81,"84":79,"85":91,"86":92,"87":83,"88":84,"89":85,"90":86,"91":87,"92":88,"93":89,"94":93,"95":94,"96":98,"97":121,"98":96,"99":123,"100":125,"101":118,"102":106,"103":95,"104":99,"105":100,"106":101,"107":102,"108":103,"109":104,"110":105,"111":122,"112":97,"113":124,"114":126,"115":119,"116":120,"117":107,"118":108,"119":109,"120":110,"121":111,"122":112,"123":113,"124":114,"125":115,"126":116,"127":117,"128":127,"129":128,"130":133,"131":131,"132":136,"133":129,"134":130,"135":134,"136":135,"137":132,"138":137,"139":138,"140":139,"141":140,"142":148,"143":146,"144":142,"145":154,"146":141,"147":149,"148":150,"149":151,"150":152,"151":153,"152":147,"153":143,"154":144,"155":145,"156":155,"157":156,"158":157,"159":159,"160":168,"161":164,"162":171,"163":158,"164":160,"165":161,"166":162,"167":163,"168":169,"169":170,"170":165,"171":166,"172":167,"173":172,"174":173,"175":174,"176":175,"177":176,"178":187,"179":195,"180":178,"181":214,"182":190,"183":182,"184":198,"185":184,"186":177,"187":188,"188":189,"189":196,"190":197,"191":179,"192":180,"193":181,"194":215,"195":191,"196":192,"197":193,"198":194,"199":183,"200":199,"201":200,"202":201,"203":202,"204":203,"205":204,"206":205,"207":206,"208":207,"209":208,"210":209,"211":210,"212":211,"213":212,"214":213,"215":185,"216":186,"217":216,"218":217,"219":258,"220":248,"221":225,"222":263,"223":223,"224":255,"225":233,"226":230,"227":219,"228":218,"229":259,"230":260,"231":261,"232":262,"233":249,"234":250,"235":251,"236":252,"237":253,"238":254,"239":226,"240":227,"241":228,"242":229,"243":264,"244":265,"245":266,"246":267,"247":268,"248":269,"249":270,"250":271,"251":272,"252":273,"253":274,"254":275,"255":276,"256":277,"257":278,"258":224,"259":256,"260":257,"261":234,"262":235,"263":236,"264":237,"265":238,"266":239,"267":240,"268":241,"269":242,"270":243,"271":244,"272":245,"273":246,"274":247,"275":231,"276":232,"277":220,"278":221,"279":222,"280":279,"281":280,"282":286,"283":290,"284":284,"285":282,"286":288,"287":281,"288":287,"289":291,"290":292,"291":293,"292":294,"293":285,"294":283,"295":289,"296":295,"297":296,"298":313,"299":309,"300":298,"301":321,"302":311,"303":319,"304":297,"305":314,"306":315,"307":316,"308":317,"309":318,"310":310,"311":299,"312":300,"313":301,"314":302,"315":303,"316":304,"317":305,"318":306,"319":307,"320":308,"321":322,"322":323,"323":324,"324":325,"325":312,"326":320,"327":326,"328":327,"329":333,"330":337,"331":331,"332":329,"333":335,"334":328,"335":334,"336":338,"337":339,"338":340,"339":341,"340":342,"341":332,"342":330,"343":336,"344":343,"345":344,"346":367,"347":364,"348":346,"349":378,"350":384,"351":376,"352":345,"353":368,"354":369,"355":370,"356":371,"357":372,"358":373,"359":374,"360":375,"361":365,"362":366,"363":347,"364":348,"365":349,"366":350,"367":351,"368":352,"369":353,"370":354,"371":355,"372":356,"373":357,"374":358,"375":359,"376":360,"377":361,"378":362,"379":363,"380":379,"381":380,"382":381,"383":382,"384":383,"385":385,"386":377,"387":386,"388":387,"389":417,"390":413,"391":415,"392":409,"393":404,"394":389,"395":411,"396":388,"397":418,"398":419,"399":420,"400":421,"401":422,"402":423,"403":424,"404":425,"405":426,"406":427,"407":428,"408":429,"409":430,"410":431,"411":414,"412":416,"413":410,"414":405,"415":406,"416":407,"417":408,"418":390,"419":391,"420":392,"421":393,"422":394,"423":395,"424":396,"425":397,"426":398,"427":399,"428":400,"429":401,"430":402,"431":403,"432":412,"433":432,"434":433,"435":484,"436":440,"437":436,"438":463,"439":482,"440":434,"441":435,"442":485,"443":486,"444":487,"445":488,"446":489,"447":490,"448":491,"449":492,"450":493,"451":494,"452":495,"453":496,"454":497,"455":441,"456":442,"457":443,"458":444,"459":445,"460":446,"461":447,"462":448,"463":449,"464":450,"465":451,"466":452,"467":453,"468":454,"469":455,"470":456,"471":457,"472":458,"473":459,"474":460,"475":461,"476":462,"477":437,"478":438,"479":439,"480":464,"481":465,"482":466,"483":467,"484":468,"485":469,"486":470,"487":471,"488":472,"489":473,"490":474,"491":475,"492":476,"493":477,"494":478,"495":479,"496":480,"497":481,"498":483,"499":498,"500":499,"501":519,"502":501,"503":523,"504":506,"505":521,"506":500,"507":520,"508":502,"509":503,"510":504,"511":505,"512":524,"513":525,"514":526,"515":527,"516":528,"517":529,"518":530,"519":531,"520":532,"521":507,"522":508,"523":509,"524":510,"525":511,"526":512,"527":513,"528":514,"529":515,"530":516,"531":517,"532":518,"533":522},"orderedDocs":[[1,"/docs/authentication/api-key"],[2,"/docs/authentication/api-key"],[4,"/docs/authentication/api-key"],[5,"/docs/authentication/api-key"],[3,"/docs/authentication/api-key#options"],[6,"/docs/authentication/api-key#options"],[7,"/docs/authentication/api-key#options"],[8,"/docs/authentication/api-key#options"],[9,"/docs/authentication/api-key#options"],[10,"/docs/authentication/api-key#options"],[11,"/docs/authentication/api-key#options"],[12,"/docs/authentication/api-key#options"],[13,"/docs/authentication/api-key#options"],[14,"/docs/authentication/api-key#options"],[15,"/docs/authentication/api-key#options"],[16,"/docs/authentication/api-key#options"],[17,"/docs/authentication/api-key#options"],[18,"/docs/authentication/api-key#options"],[19,"/docs/authentication/auth0"],[20,"/docs/authentication/auth0"],[27,"/docs/authentication/auth0"],[21,"/docs/authentication/auth0#configure-auth0"],[28,"/docs/authentication/auth0#configure-auth0"],[29,"/docs/authentication/auth0#configure-auth0"],[30,"/docs/authentication/auth0#configure-auth0"],[31,"/docs/authentication/auth0#configure-auth0"],[32,"/docs/authentication/auth0#configure-auth0"],[23,"/docs/authentication/auth0#configure-bitmcp"],[34,"/docs/authentication/auth0#configure-bitmcp"],[26,"/docs/authentication/auth0#options"],[41,"/docs/authentication/auth0#options"],[42,"/docs/authentication/auth0#options"],[43,"/docs/authentication/auth0#options"],[44,"/docs/authentication/auth0#options"],[45,"/docs/authentication/auth0#options"],[46,"/docs/authentication/auth0#options"],[47,"/docs/authentication/auth0#options"],[48,"/docs/authentication/auth0#options"],[49,"/docs/authentication/auth0#options"],[22,"/docs/authentication/auth0#set-environment-variables"],[33,"/docs/authentication/auth0#set-environment-variables"],[24,"/docs/authentication/auth0#use-ctxuser-in-tools"],[35,"/docs/authentication/auth0#use-ctxuser-in-tools"],[25,"/docs/authentication/auth0#verify"],[36,"/docs/authentication/auth0#verify"],[37,"/docs/authentication/auth0#verify"],[38,"/docs/authentication/auth0#verify"],[39,"/docs/authentication/auth0#verify"],[40,"/docs/authentication/auth0#verify"],[50,"/docs/authentication/better-auth"],[51,"/docs/authentication/better-auth"],[58,"/docs/authentication/better-auth"],[52,"/docs/authentication/better-auth#configure-better-auth"],[59,"/docs/authentication/better-auth#configure-better-auth"],[60,"/docs/authentication/better-auth#configure-better-auth"],[61,"/docs/authentication/better-auth#configure-better-auth"],[62,"/docs/authentication/better-auth#configure-better-auth"],[54,"/docs/authentication/better-auth#configure-bitmcp"],[63,"/docs/authentication/better-auth#configure-bitmcp"],[57,"/docs/authentication/better-auth#options"],[69,"/docs/authentication/better-auth#options"],[70,"/docs/authentication/better-auth#options"],[71,"/docs/authentication/better-auth#options"],[72,"/docs/authentication/better-auth#options"],[73,"/docs/authentication/better-auth#options"],[74,"/docs/authentication/better-auth#options"],[75,"/docs/authentication/better-auth#options"],[53,"/docs/authentication/better-auth#set-environment-variables"],[55,"/docs/authentication/better-auth#use-ctxuser-in-tools"],[56,"/docs/authentication/better-auth#verify"],[64,"/docs/authentication/better-auth#verify"],[65,"/docs/authentication/better-auth#verify"],[66,"/docs/authentication/better-auth#verify"],[67,"/docs/authentication/better-auth#verify"],[68,"/docs/authentication/better-auth#verify"],[76,"/docs/authentication/custom"],[77,"/docs/authentication/custom"],[82,"/docs/authentication/custom"],[79,"/docs/authentication/custom#full-control-with-custom"],[84,"/docs/authentication/custom#full-control-with-custom"],[78,"/docs/authentication/custom#jwt-identity-providers"],[83,"/docs/authentication/custom#jwt-identity-providers"],[81,"/docs/authentication/custom#options"],[87,"/docs/authentication/custom#options"],[88,"/docs/authentication/custom#options"],[89,"/docs/authentication/custom#options"],[90,"/docs/authentication/custom#options"],[91,"/docs/authentication/custom#options"],[92,"/docs/authentication/custom#options"],[93,"/docs/authentication/custom#options"],[80,"/docs/authentication/custom#resource-binding"],[85,"/docs/authentication/custom#resource-binding"],[86,"/docs/authentication/custom#resource-binding"],[94,"/docs/authentication/supabase"],[95,"/docs/authentication/supabase"],[103,"/docs/authentication/supabase"],[98,"/docs/authentication/supabase#configure-bitmcp"],[112,"/docs/authentication/supabase#configure-bitmcp"],[96,"/docs/authentication/supabase#enable-supabase-oauth"],[104,"/docs/authentication/supabase#enable-supabase-oauth"],[105,"/docs/authentication/supabase#enable-supabase-oauth"],[106,"/docs/authentication/supabase#enable-supabase-oauth"],[107,"/docs/authentication/supabase#enable-supabase-oauth"],[108,"/docs/authentication/supabase#enable-supabase-oauth"],[109,"/docs/authentication/supabase#enable-supabase-oauth"],[110,"/docs/authentication/supabase#enable-supabase-oauth"],[102,"/docs/authentication/supabase#options"],[117,"/docs/authentication/supabase#options"],[118,"/docs/authentication/supabase#options"],[119,"/docs/authentication/supabase#options"],[120,"/docs/authentication/supabase#options"],[121,"/docs/authentication/supabase#options"],[122,"/docs/authentication/supabase#options"],[123,"/docs/authentication/supabase#options"],[124,"/docs/authentication/supabase#options"],[125,"/docs/authentication/supabase#options"],[126,"/docs/authentication/supabase#options"],[127,"/docs/authentication/supabase#options"],[101,"/docs/authentication/supabase#row-level-security"],[115,"/docs/authentication/supabase#row-level-security"],[116,"/docs/authentication/supabase#row-level-security"],[97,"/docs/authentication/supabase#set-environment-variables"],[111,"/docs/authentication/supabase#set-environment-variables"],[99,"/docs/authentication/supabase#use-ctxuser-in-tools"],[113,"/docs/authentication/supabase#use-ctxuser-in-tools"],[100,"/docs/authentication/supabase#verify"],[114,"/docs/authentication/supabase#verify"],[128,"/docs/core-concepts/actions"],[129,"/docs/core-concepts/actions"],[133,"/docs/core-concepts/actions"],[134,"/docs/core-concepts/actions"],[131,"/docs/core-concepts/actions#from-the-view"],[137,"/docs/core-concepts/actions#from-the-view"],[130,"/docs/core-concepts/actions#naming"],[135,"/docs/core-concepts/actions#naming"],[136,"/docs/core-concepts/actions#naming"],[132,"/docs/core-concepts/actions#why-actions-exist"],[138,"/docs/core-concepts/actions#why-actions-exist"],[139,"/docs/core-concepts/actions#why-actions-exist"],[140,"/docs/core-concepts/confirmations"],[141,"/docs/core-concepts/confirmations"],[146,"/docs/core-concepts/confirmations"],[144,"/docs/core-concepts/confirmations#ctxask"],[153,"/docs/core-concepts/confirmations#ctxask"],[154,"/docs/core-concepts/confirmations#ctxask"],[155,"/docs/core-concepts/confirmations#ctxask"],[143,"/docs/core-concepts/confirmations#example"],[152,"/docs/core-concepts/confirmations#example"],[142,"/docs/core-concepts/confirmations#mrtr"],[147,"/docs/core-concepts/confirmations#mrtr"],[148,"/docs/core-concepts/confirmations#mrtr"],[149,"/docs/core-concepts/confirmations#mrtr"],[150,"/docs/core-concepts/confirmations#mrtr"],[151,"/docs/core-concepts/confirmations#mrtr"],[145,"/docs/core-concepts/confirmations#never-view-only"],[156,"/docs/core-concepts/confirmations#never-view-only"],[157,"/docs/core-concepts/handles"],[158,"/docs/core-concepts/handles"],[163,"/docs/core-concepts/handles"],[159,"/docs/core-concepts/handles#ctxhandle"],[164,"/docs/core-concepts/handles#ctxhandle"],[165,"/docs/core-concepts/handles#ctxhandle"],[166,"/docs/core-concepts/handles#ctxhandle"],[167,"/docs/core-concepts/handles#ctxhandle"],[161,"/docs/core-concepts/handles#long-work"],[170,"/docs/core-concepts/handles#long-work"],[171,"/docs/core-concepts/handles#long-work"],[172,"/docs/core-concepts/handles#long-work"],[160,"/docs/core-concepts/handles#stateless-requests"],[168,"/docs/core-concepts/handles#stateless-requests"],[169,"/docs/core-concepts/handles#stateless-requests"],[162,"/docs/core-concepts/handles#what-this-proves"],[173,"/docs/core-concepts/handles#what-this-proves"],[174,"/docs/core-concepts/handles#what-this-proves"],[175,"/docs/core-concepts/handles#what-this-proves"],[176,"/docs/core-concepts/tools"],[177,"/docs/core-concepts/tools"],[186,"/docs/core-concepts/tools"],[180,"/docs/core-concepts/tools#csp-allowlists"],[191,"/docs/core-concepts/tools#csp-allowlists"],[192,"/docs/core-concepts/tools#csp-allowlists"],[193,"/docs/core-concepts/tools#csp-allowlists"],[183,"/docs/core-concepts/tools#definetool-options"],[199,"/docs/core-concepts/tools#definetool-options"],[185,"/docs/core-concepts/tools#result-helpers"],[215,"/docs/core-concepts/tools#result-helpers"],[216,"/docs/core-concepts/tools#result-helpers"],[178,"/docs/core-concepts/tools#return-data"],[187,"/docs/core-concepts/tools#return-data"],[188,"/docs/core-concepts/tools#return-data"],[182,"/docs/core-concepts/tools#rules"],[195,"/docs/core-concepts/tools#rules"],[196,"/docs/core-concepts/tools#rules"],[197,"/docs/core-concepts/tools#rules"],[198,"/docs/core-concepts/tools#rules"],[179,"/docs/core-concepts/tools#schemas"],[189,"/docs/core-concepts/tools#schemas"],[190,"/docs/core-concepts/tools#schemas"],[184,"/docs/core-concepts/tools#toolcontext"],[200,"/docs/core-concepts/tools#toolcontext"],[201,"/docs/core-concepts/tools#toolcontext"],[202,"/docs/core-concepts/tools#toolcontext"],[203,"/docs/core-concepts/tools#toolcontext"],[204,"/docs/core-concepts/tools#toolcontext"],[205,"/docs/core-concepts/tools#toolcontext"],[206,"/docs/core-concepts/tools#toolcontext"],[207,"/docs/core-concepts/tools#toolcontext"],[208,"/docs/core-concepts/tools#toolcontext"],[209,"/docs/core-concepts/tools#toolcontext"],[210,"/docs/core-concepts/tools#toolcontext"],[211,"/docs/core-concepts/tools#toolcontext"],[212,"/docs/core-concepts/tools#toolcontext"],[213,"/docs/core-concepts/tools#toolcontext"],[214,"/docs/core-concepts/tools#toolcontext"],[181,"/docs/core-concepts/tools#visibility"],[194,"/docs/core-concepts/tools#visibility"],[217,"/docs/core-concepts/views"],[218,"/docs/core-concepts/views"],[228,"/docs/core-concepts/views"],[227,"/docs/core-concepts/views#build-boundaries"],[277,"/docs/core-concepts/views#build-boundaries"],[278,"/docs/core-concepts/views#build-boundaries"],[279,"/docs/core-concepts/views#build-boundaries"],[223,"/docs/core-concepts/views#calltool"],[258,"/docs/core-concepts/views#calltool"],[221,"/docs/core-concepts/views#data-flow"],[239,"/docs/core-concepts/views#data-flow"],[240,"/docs/core-concepts/views#data-flow"],[241,"/docs/core-concepts/views#data-flow"],[242,"/docs/core-concepts/views#data-flow"],[226,"/docs/core-concepts/views#escape-hatches"],[275,"/docs/core-concepts/views#escape-hatches"],[276,"/docs/core-concepts/views#escape-hatches"],[225,"/docs/core-concepts/views#host-theme"],[261,"/docs/core-concepts/views#host-theme"],[262,"/docs/core-concepts/views#host-theme"],[263,"/docs/core-concepts/views#host-theme"],[264,"/docs/core-concepts/views#host-theme"],[265,"/docs/core-concepts/views#host-theme"],[266,"/docs/core-concepts/views#host-theme"],[267,"/docs/core-concepts/views#host-theme"],[268,"/docs/core-concepts/views#host-theme"],[269,"/docs/core-concepts/views#host-theme"],[270,"/docs/core-concepts/views#host-theme"],[271,"/docs/core-concepts/views#host-theme"],[272,"/docs/core-concepts/views#host-theme"],[273,"/docs/core-concepts/views#host-theme"],[274,"/docs/core-concepts/views#host-theme"],[220,"/docs/core-concepts/views#html-shell"],[233,"/docs/core-concepts/views#html-shell"],[234,"/docs/core-concepts/views#html-shell"],[235,"/docs/core-concepts/views#html-shell"],[236,"/docs/core-concepts/views#html-shell"],[237,"/docs/core-concepts/views#html-shell"],[238,"/docs/core-concepts/views#html-shell"],[224,"/docs/core-concepts/views#styling"],[259,"/docs/core-concepts/views#styling"],[260,"/docs/core-concepts/views#styling"],[219,"/docs/core-concepts/views#ui-resources"],[229,"/docs/core-concepts/views#ui-resources"],[230,"/docs/core-concepts/views#ui-resources"],[231,"/docs/core-concepts/views#ui-resources"],[232,"/docs/core-concepts/views#ui-resources"],[222,"/docs/core-concepts/views#useapp"],[243,"/docs/core-concepts/views#useapp"],[244,"/docs/core-concepts/views#useapp"],[245,"/docs/core-concepts/views#useapp"],[246,"/docs/core-concepts/views#useapp"],[247,"/docs/core-concepts/views#useapp"],[248,"/docs/core-concepts/views#useapp"],[249,"/docs/core-concepts/views#useapp"],[250,"/docs/core-concepts/views#useapp"],[251,"/docs/core-concepts/views#useapp"],[252,"/docs/core-concepts/views#useapp"],[253,"/docs/core-concepts/views#useapp"],[254,"/docs/core-concepts/views#useapp"],[255,"/docs/core-concepts/views#useapp"],[256,"/docs/core-concepts/views#useapp"],[257,"/docs/core-concepts/views#useapp"],[280,"/docs/deployment/cloudflare"],[281,"/docs/deployment/cloudflare"],[287,"/docs/deployment/cloudflare"],[285,"/docs/deployment/cloudflare#bitmcpconfigts"],[294,"/docs/deployment/cloudflare#bitmcpconfigts"],[284,"/docs/deployment/cloudflare#deploy"],[293,"/docs/deployment/cloudflare#deploy"],[282,"/docs/deployment/cloudflare#scaffold-for-cloudflare"],[288,"/docs/deployment/cloudflare#scaffold-for-cloudflare"],[286,"/docs/deployment/cloudflare#see-also"],[295,"/docs/deployment/cloudflare#see-also"],[283,"/docs/deployment/cloudflare#set-secrets-and-config"],[289,"/docs/deployment/cloudflare#set-secrets-and-config"],[290,"/docs/deployment/cloudflare#set-secrets-and-config"],[291,"/docs/deployment/cloudflare#set-secrets-and-config"],[292,"/docs/deployment/cloudflare#set-secrets-and-config"],[296,"/docs/deployment/node"],[297,"/docs/deployment/node"],[304,"/docs/deployment/node"],[300,"/docs/deployment/node#createapp-escape-hatch"],[311,"/docs/deployment/node#createapp-escape-hatch"],[312,"/docs/deployment/node#createapp-escape-hatch"],[313,"/docs/deployment/node#createapp-escape-hatch"],[314,"/docs/deployment/node#createapp-escape-hatch"],[315,"/docs/deployment/node#createapp-escape-hatch"],[316,"/docs/deployment/node#createapp-escape-hatch"],[317,"/docs/deployment/node#createapp-escape-hatch"],[318,"/docs/deployment/node#createapp-escape-hatch"],[319,"/docs/deployment/node#createapp-escape-hatch"],[320,"/docs/deployment/node#createapp-escape-hatch"],[299,"/docs/deployment/node#embed-in-an-existing-app"],[310,"/docs/deployment/node#embed-in-an-existing-app"],[302,"/docs/deployment/node#host-and-origin-guards"],[325,"/docs/deployment/node#host-and-origin-guards"],[298,"/docs/deployment/node#node"],[305,"/docs/deployment/node#node"],[306,"/docs/deployment/node#node"],[307,"/docs/deployment/node#node"],[308,"/docs/deployment/node#node"],[309,"/docs/deployment/node#node"],[303,"/docs/deployment/node#see-also"],[326,"/docs/deployment/node#see-also"],[301,"/docs/deployment/node#stateless-replicas"],[321,"/docs/deployment/node#stateless-replicas"],[322,"/docs/deployment/node#stateless-replicas"],[323,"/docs/deployment/node#stateless-replicas"],[324,"/docs/deployment/node#stateless-replicas"],[327,"/docs/deployment/vercel"],[328,"/docs/deployment/vercel"],[334,"/docs/deployment/vercel"],[332,"/docs/deployment/vercel#bitmcpconfigts"],[342,"/docs/deployment/vercel#bitmcpconfigts"],[331,"/docs/deployment/vercel#deploy"],[341,"/docs/deployment/vercel#deploy"],[329,"/docs/deployment/vercel#scaffold-for-vercel"],[335,"/docs/deployment/vercel#scaffold-for-vercel"],[333,"/docs/deployment/vercel#see-also"],[343,"/docs/deployment/vercel#see-also"],[330,"/docs/deployment/vercel#set-environment-variables"],[336,"/docs/deployment/vercel#set-environment-variables"],[337,"/docs/deployment/vercel#set-environment-variables"],[338,"/docs/deployment/vercel#set-environment-variables"],[339,"/docs/deployment/vercel#set-environment-variables"],[340,"/docs/deployment/vercel#set-environment-variables"],[344,"/docs/discoverability/server-card"],[345,"/docs/discoverability/server-card"],[352,"/docs/discoverability/server-card"],[348,"/docs/discoverability/server-card#configure"],[363,"/docs/discoverability/server-card#configure"],[364,"/docs/discoverability/server-card#configure"],[365,"/docs/discoverability/server-card#configure"],[366,"/docs/discoverability/server-card#configure"],[367,"/docs/discoverability/server-card#configure"],[368,"/docs/discoverability/server-card#configure"],[369,"/docs/discoverability/server-card#configure"],[370,"/docs/discoverability/server-card#configure"],[371,"/docs/discoverability/server-card#configure"],[372,"/docs/discoverability/server-card#configure"],[373,"/docs/discoverability/server-card#configure"],[374,"/docs/discoverability/server-card#configure"],[375,"/docs/discoverability/server-card#configure"],[376,"/docs/discoverability/server-card#configure"],[377,"/docs/discoverability/server-card#configure"],[378,"/docs/discoverability/server-card#configure"],[379,"/docs/discoverability/server-card#configure"],[347,"/docs/discoverability/server-card#default-card"],[361,"/docs/discoverability/server-card#default-card"],[362,"/docs/discoverability/server-card#default-card"],[346,"/docs/discoverability/server-card#endpoints"],[353,"/docs/discoverability/server-card#endpoints"],[354,"/docs/discoverability/server-card#endpoints"],[355,"/docs/discoverability/server-card#endpoints"],[356,"/docs/discoverability/server-card#endpoints"],[357,"/docs/discoverability/server-card#endpoints"],[358,"/docs/discoverability/server-card#endpoints"],[359,"/docs/discoverability/server-card#endpoints"],[360,"/docs/discoverability/server-card#endpoints"],[351,"/docs/discoverability/server-card#next-step"],[386,"/docs/discoverability/server-card#next-step"],[349,"/docs/discoverability/server-card#remote-url-resolution"],[380,"/docs/discoverability/server-card#remote-url-resolution"],[381,"/docs/discoverability/server-card#remote-url-resolution"],[382,"/docs/discoverability/server-card#remote-url-resolution"],[383,"/docs/discoverability/server-card#remote-url-resolution"],[384,"/docs/discoverability/server-card#remote-url-resolution"],[350,"/docs/discoverability/server-card#vercel-rewrite"],[385,"/docs/discoverability/server-card#vercel-rewrite"],[387,"/docs/getting-started/connecting"],[388,"/docs/getting-started/connecting"],[396,"/docs/getting-started/connecting"],[394,"/docs/getting-started/connecting#environment-variables"],[418,"/docs/getting-started/connecting#environment-variables"],[419,"/docs/getting-started/connecting#environment-variables"],[420,"/docs/getting-started/connecting#environment-variables"],[421,"/docs/getting-started/connecting#environment-variables"],[422,"/docs/getting-started/connecting#environment-variables"],[423,"/docs/getting-started/connecting#environment-variables"],[424,"/docs/getting-started/connecting#environment-variables"],[425,"/docs/getting-started/connecting#environment-variables"],[426,"/docs/getting-started/connecting#environment-variables"],[427,"/docs/getting-started/connecting#environment-variables"],[428,"/docs/getting-started/connecting#environment-variables"],[429,"/docs/getting-started/connecting#environment-variables"],[430,"/docs/getting-started/connecting#environment-variables"],[431,"/docs/getting-started/connecting#environment-variables"],[393,"/docs/getting-started/connecting#host-compatibility"],[414,"/docs/getting-started/connecting#host-compatibility"],[415,"/docs/getting-started/connecting#host-compatibility"],[416,"/docs/getting-started/connecting#host-compatibility"],[417,"/docs/getting-started/connecting#host-compatibility"],[392,"/docs/getting-started/connecting#http-clients"],[413,"/docs/getting-started/connecting#http-clients"],[395,"/docs/getting-started/connecting#next-step"],[432,"/docs/getting-started/connecting#next-step"],[390,"/docs/getting-started/connecting#preview-host"],[411,"/docs/getting-started/connecting#preview-host"],[391,"/docs/getting-started/connecting#stdio-clients"],[412,"/docs/getting-started/connecting#stdio-clients"],[389,"/docs/getting-started/connecting#transports"],[397,"/docs/getting-started/connecting#transports"],[398,"/docs/getting-started/connecting#transports"],[399,"/docs/getting-started/connecting#transports"],[400,"/docs/getting-started/connecting#transports"],[401,"/docs/getting-started/connecting#transports"],[402,"/docs/getting-started/connecting#transports"],[403,"/docs/getting-started/connecting#transports"],[404,"/docs/getting-started/connecting#transports"],[405,"/docs/getting-started/connecting#transports"],[406,"/docs/getting-started/connecting#transports"],[407,"/docs/getting-started/connecting#transports"],[408,"/docs/getting-started/connecting#transports"],[409,"/docs/getting-started/connecting#transports"],[410,"/docs/getting-started/connecting#transports"],[433,"/docs/getting-started/installation"],[434,"/docs/getting-started/installation"],[440,"/docs/getting-started/installation"],[441,"/docs/getting-started/installation"],[437,"/docs/getting-started/installation#bitmcpconfigts"],[477,"/docs/getting-started/installation#bitmcpconfigts"],[478,"/docs/getting-started/installation#bitmcpconfigts"],[479,"/docs/getting-started/installation#bitmcpconfigts"],[436,"/docs/getting-started/installation#cli"],[455,"/docs/getting-started/installation#cli"],[456,"/docs/getting-started/installation#cli"],[457,"/docs/getting-started/installation#cli"],[458,"/docs/getting-started/installation#cli"],[459,"/docs/getting-started/installation#cli"],[460,"/docs/getting-started/installation#cli"],[461,"/docs/getting-started/installation#cli"],[462,"/docs/getting-started/installation#cli"],[463,"/docs/getting-started/installation#cli"],[464,"/docs/getting-started/installation#cli"],[465,"/docs/getting-started/installation#cli"],[466,"/docs/getting-started/installation#cli"],[467,"/docs/getting-started/installation#cli"],[468,"/docs/getting-started/installation#cli"],[469,"/docs/getting-started/installation#cli"],[470,"/docs/getting-started/installation#cli"],[471,"/docs/getting-started/installation#cli"],[472,"/docs/getting-started/installation#cli"],[473,"/docs/getting-started/installation#cli"],[474,"/docs/getting-started/installation#cli"],[475,"/docs/getting-started/installation#cli"],[476,"/docs/getting-started/installation#cli"],[438,"/docs/getting-started/installation#environment-variables"],[480,"/docs/getting-started/installation#environment-variables"],[481,"/docs/getting-started/installation#environment-variables"],[482,"/docs/getting-started/installation#environment-variables"],[483,"/docs/getting-started/installation#environment-variables"],[484,"/docs/getting-started/installation#environment-variables"],[485,"/docs/getting-started/installation#environment-variables"],[486,"/docs/getting-started/installation#environment-variables"],[487,"/docs/getting-started/installation#environment-variables"],[488,"/docs/getting-started/installation#environment-variables"],[489,"/docs/getting-started/installation#environment-variables"],[490,"/docs/getting-started/installation#environment-variables"],[491,"/docs/getting-started/installation#environment-variables"],[492,"/docs/getting-started/installation#environment-variables"],[493,"/docs/getting-started/installation#environment-variables"],[494,"/docs/getting-started/installation#environment-variables"],[495,"/docs/getting-started/installation#environment-variables"],[496,"/docs/getting-started/installation#environment-variables"],[497,"/docs/getting-started/installation#environment-variables"],[439,"/docs/getting-started/installation#next-step"],[498,"/docs/getting-started/installation#next-step"],[435,"/docs/getting-started/installation#scripts"],[442,"/docs/getting-started/installation#scripts"],[443,"/docs/getting-started/installation#scripts"],[444,"/docs/getting-started/installation#scripts"],[445,"/docs/getting-started/installation#scripts"],[446,"/docs/getting-started/installation#scripts"],[447,"/docs/getting-started/installation#scripts"],[448,"/docs/getting-started/installation#scripts"],[449,"/docs/getting-started/installation#scripts"],[450,"/docs/getting-started/installation#scripts"],[451,"/docs/getting-started/installation#scripts"],[452,"/docs/getting-started/installation#scripts"],[453,"/docs/getting-started/installation#scripts"],[454,"/docs/getting-started/installation#scripts"],[499,"/docs/getting-started/project-structure"],[500,"/docs/getting-started/project-structure"],[506,"/docs/getting-started/project-structure"],[502,"/docs/getting-started/project-structure#compiler-boundaries"],[508,"/docs/getting-started/project-structure#compiler-boundaries"],[509,"/docs/getting-started/project-structure#compiler-boundaries"],[510,"/docs/getting-started/project-structure#compiler-boundaries"],[511,"/docs/getting-started/project-structure#compiler-boundaries"],[504,"/docs/getting-started/project-structure#config-files"],[521,"/docs/getting-started/project-structure#config-files"],[522,"/docs/getting-started/project-structure#config-files"],[523,"/docs/getting-started/project-structure#config-files"],[524,"/docs/getting-started/project-structure#config-files"],[525,"/docs/getting-started/project-structure#config-files"],[526,"/docs/getting-started/project-structure#config-files"],[527,"/docs/getting-started/project-structure#config-files"],[528,"/docs/getting-started/project-structure#config-files"],[529,"/docs/getting-started/project-structure#config-files"],[530,"/docs/getting-started/project-structure#config-files"],[531,"/docs/getting-started/project-structure#config-files"],[532,"/docs/getting-started/project-structure#config-files"],[501,"/docs/getting-started/project-structure#naming"],[507,"/docs/getting-started/project-structure#naming"],[505,"/docs/getting-started/project-structure#next-step"],[533,"/docs/getting-started/project-structure#next-step"],[503,"/docs/getting-started/project-structure#what-the-compiler-emits"],[512,"/docs/getting-started/project-structure#what-the-compiler-emits"],[513,"/docs/getting-started/project-structure#what-the-compiler-emits"],[514,"/docs/getting-started/project-structure#what-the-compiler-emits"],[515,"/docs/getting-started/project-structure#what-the-compiler-emits"],[516,"/docs/getting-started/project-structure#what-the-compiler-emits"],[517,"/docs/getting-started/project-structure#what-the-compiler-emits"],[518,"/docs/getting-started/project-structure#what-the-compiler-emits"],[519,"/docs/getting-started/project-structure#what-the-compiler-emits"],[520,"/docs/getting-started/project-structure#what-the-compiler-emits"]],"type":"string"}},"enabled":true,"isSorted":true,"unsortableProperties":[]},"pinning":{"rules":[]},"language":"multilingual"}