[{"data":1,"prerenderedAt":1211},["ShallowReactive",2],{"navigation_docs":3,"-advanced-typescript":139,"-advanced-typescript-surround":1206},[4,40,65,110],{"title":5,"path":6,"stem":7,"children":8,"page":39},"Getting Started","\u002Fgetting-started","1.getting-started",[9,14,19,24,29,34],{"title":10,"path":11,"stem":12,"icon":13},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction","i-lucide-book-open",{"title":15,"path":16,"stem":17,"icon":18},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F2.installation","i-lucide-download",{"title":20,"path":21,"stem":22,"icon":23},"Configuration","\u002Fgetting-started\u002Fconfiguration","1.getting-started\u002F3.configuration","i-lucide-settings",{"title":25,"path":26,"stem":27,"icon":28},"MCP Inspector","\u002Fgetting-started\u002Finspector","1.getting-started\u002F4.inspector","i-lucide-circuit-board",{"title":30,"path":31,"stem":32,"icon":33},"Connection","\u002Fgetting-started\u002Fconnection","1.getting-started\u002F5.connection","i-lucide-plug",{"title":35,"path":36,"stem":37,"icon":38},"Agent Skills","\u002Fgetting-started\u002Fagent-skills","1.getting-started\u002F6.agent-skills","i-lucide-sparkles",false,{"title":41,"path":42,"stem":43,"children":44,"page":39},"Core Concepts","\u002Fcore-concepts","2.core-concepts",[45,50,55,60],{"title":46,"path":47,"stem":48,"icon":49},"Tools","\u002Fcore-concepts\u002Ftools","2.core-concepts\u002F2.tools","i-lucide-wrench",{"title":51,"path":52,"stem":53,"icon":54},"Resources","\u002Fcore-concepts\u002Fresources","2.core-concepts\u002F3.resources","i-lucide-package",{"title":56,"path":57,"stem":58,"icon":59},"Prompts","\u002Fcore-concepts\u002Fprompts","2.core-concepts\u002F4.prompts","i-lucide-message-square",{"title":61,"path":62,"stem":63,"icon":64},"Handlers","\u002Fcore-concepts\u002Fhandlers","2.core-concepts\u002F5.handlers","i-lucide-server",{"title":66,"path":67,"stem":68,"children":69,"page":39},"Advanced Topics","\u002Fadvanced","3.advanced",[70,75,80,85,90,95,100,105],{"title":71,"path":72,"stem":73,"icon":74},"Custom Paths","\u002Fadvanced\u002Fcustom-paths","3.advanced\u002F1.custom-paths","i-lucide-folder",{"title":76,"path":77,"stem":78,"icon":79},"Middleware","\u002Fadvanced\u002Fmiddleware","3.advanced\u002F2.middleware","i-lucide-shield",{"title":81,"path":82,"stem":83,"icon":84},"TypeScript","\u002Fadvanced\u002Ftypescript","3.advanced\u002F3.typescript","i-lucide-type",{"title":86,"path":87,"stem":88,"icon":89},"Hooks","\u002Fadvanced\u002Fhooks","3.advanced\u002F4.hooks","i-lucide-webhook",{"title":91,"path":92,"stem":93,"icon":94},"MCP Evals","\u002Fadvanced\u002Fevals","3.advanced\u002F5.evals","i-lucide-flask-conical",{"title":96,"path":97,"stem":98,"icon":99},"Sessions","\u002Fadvanced\u002Fsessions","3.advanced\u002F6.sessions","i-lucide-database",{"title":101,"path":102,"stem":103,"icon":104},"Dynamic Definitions","\u002Fadvanced\u002Fdynamic-definitions","3.advanced\u002F7.dynamic-definitions","i-lucide-toggle-right",{"title":106,"path":107,"stem":108,"icon":109},"Code Mode","\u002Fadvanced\u002Fcode-mode","3.advanced\u002F8.code-mode","i-lucide-code",{"title":111,"path":112,"stem":113,"children":114,"page":39},"Examples","\u002Fexamples","4.examples",[115,120,125,130,135],{"title":116,"path":117,"stem":118,"icon":119},"Authentication","\u002Fexamples\u002Fauthentication","4.examples\u002F1.authentication","i-lucide-shield-check",{"title":121,"path":122,"stem":123,"icon":124},"API Integration","\u002Fexamples\u002Fapi-integration","4.examples\u002F2.api-integration","i-lucide-globe",{"title":126,"path":127,"stem":128,"icon":129},"Common Patterns","\u002Fexamples\u002Fcommon-patterns","4.examples\u002F3.common-patterns","i-lucide-lightbulb",{"title":131,"path":132,"stem":133,"icon":134},"File Operations","\u002Fexamples\u002Ffile-operations","4.examples\u002F4.file-operations","i-lucide-file",{"title":136,"path":137,"stem":138,"icon":59},"Prompt Examples","\u002Fexamples\u002Fprompt-examples","4.examples\u002F5.prompt-examples",{"id":140,"title":81,"body":141,"description":1198,"extension":1199,"links":1200,"meta":1201,"navigation":1202,"path":82,"seo":1203,"stem":83,"__hash__":1205},"docs\u002F3.advanced\u002F3.typescript.md",{"type":142,"value":143,"toc":1187},"minimark",[144,149,153,157,160,344,347,371,375,380,386,577,581,587,884,888,893,1044,1048,1051,1161,1165,1183],[145,146,148],"h2",{"id":147},"type-safety","Type Safety",[150,151,152],"p",{},"The Nuxt MCP module provides full TypeScript support with complete type inference and type safety.",[145,154,156],{"id":155},"auto-imports","Auto-Imports",[150,158,159],{},"All helper functions are automatically imported in your server files:",[161,162,167],"pre",{"className":163,"code":164,"language":165,"meta":166,"style":166},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { defineMcpTool } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver' \u002F\u002F optional\n\n\u002F\u002F Imports are optional - auto-imported on server-side!\nexport default defineMcpTool({\n  name: 'example',\n  inputSchema: {\n    message: z.string(),\n  },\n  handler: async ({ message }) => {\n    \u002F\u002F message is typed as string\n  },\n})\n","typescript","",[168,169,170,207,214,220,238,258,269,291,297,324,330,335],"code",{"__ignoreMap":166},[171,172,175,179,183,187,190,193,196,200,203],"span",{"class":173,"line":174},"line",1,[171,176,178],{"class":177},"s7zQu","import",[171,180,182],{"class":181},"sMK4o"," {",[171,184,186],{"class":185},"sTEyZ"," defineMcpTool",[171,188,189],{"class":181}," }",[171,191,192],{"class":177}," from",[171,194,195],{"class":181}," '",[171,197,199],{"class":198},"sfazB","@nuxtjs\u002Fmcp-toolkit\u002Fserver",[171,201,202],{"class":181},"'",[171,204,206],{"class":205},"sHwdD"," \u002F\u002F optional\n",[171,208,210],{"class":173,"line":209},2,[171,211,213],{"emptyLinePlaceholder":212},true,"\n",[171,215,217],{"class":173,"line":216},3,[171,218,219],{"class":205},"\u002F\u002F Imports are optional - auto-imported on server-side!\n",[171,221,223,226,229,232,235],{"class":173,"line":222},4,[171,224,225],{"class":177},"export",[171,227,228],{"class":177}," default",[171,230,186],{"class":231},"s2Zo4",[171,233,234],{"class":185},"(",[171,236,237],{"class":181},"{\n",[171,239,241,245,248,250,253,255],{"class":173,"line":240},5,[171,242,244],{"class":243},"swJcz","  name",[171,246,247],{"class":181},":",[171,249,195],{"class":181},[171,251,252],{"class":198},"example",[171,254,202],{"class":181},[171,256,257],{"class":181},",\n",[171,259,261,264,266],{"class":173,"line":260},6,[171,262,263],{"class":243},"  inputSchema",[171,265,247],{"class":181},[171,267,268],{"class":181}," {\n",[171,270,272,275,277,280,283,286,289],{"class":173,"line":271},7,[171,273,274],{"class":243},"    message",[171,276,247],{"class":181},[171,278,279],{"class":185}," z",[171,281,282],{"class":181},".",[171,284,285],{"class":231},"string",[171,287,288],{"class":185},"()",[171,290,257],{"class":181},[171,292,294],{"class":173,"line":293},8,[171,295,296],{"class":181},"  },\n",[171,298,300,303,305,309,312,316,319,322],{"class":173,"line":299},9,[171,301,302],{"class":231},"  handler",[171,304,247],{"class":181},[171,306,308],{"class":307},"spNyl"," async",[171,310,311],{"class":181}," ({",[171,313,315],{"class":314},"sHdIc"," message",[171,317,318],{"class":181}," })",[171,320,321],{"class":307}," =>",[171,323,268],{"class":181},[171,325,327],{"class":173,"line":326},10,[171,328,329],{"class":205},"    \u002F\u002F message is typed as string\n",[171,331,333],{"class":173,"line":332},11,[171,334,296],{"class":181},[171,336,338,341],{"class":173,"line":337},12,[171,339,340],{"class":181},"}",[171,342,343],{"class":185},")\n",[150,345,346],{},"Available auto-imports:",[348,349,350,356,361,366],"ul",{},[351,352,353],"li",{},[168,354,355],{},"defineMcpTool",[351,357,358],{},[168,359,360],{},"defineMcpResource",[351,362,363],{},[168,364,365],{},"defineMcpPrompt",[351,367,368],{},[168,369,370],{},"defineMcpHandler",[145,372,374],{"id":373},"type-inference","Type Inference",[376,377,379],"h3",{"id":378},"tool-input-types","Tool Input Types",[150,381,382,383,247],{},"Input types are automatically inferred from your ",[168,384,385],{},"inputSchema",[161,387,389],{"className":163,"code":388,"language":165,"meta":166,"style":166},"import { defineMcpTool } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver' \u002F\u002F optional\n\nexport default defineMcpTool({\n  name: 'example',\n  inputSchema: {\n    name: z.string(),\n    age: z.number(),\n    email: z.string().email().optional(),\n  },\n  handler: async ({ name, age, email }) => {\n    \u002F\u002F name: string\n    \u002F\u002F age: number\n    \u002F\u002F email: string | undefined\n  },\n})\n",[168,390,391,411,415,427,441,449,466,484,515,519,549,554,559,565,570],{"__ignoreMap":166},[171,392,393,395,397,399,401,403,405,407,409],{"class":173,"line":174},[171,394,178],{"class":177},[171,396,182],{"class":181},[171,398,186],{"class":185},[171,400,189],{"class":181},[171,402,192],{"class":177},[171,404,195],{"class":181},[171,406,199],{"class":198},[171,408,202],{"class":181},[171,410,206],{"class":205},[171,412,413],{"class":173,"line":209},[171,414,213],{"emptyLinePlaceholder":212},[171,416,417,419,421,423,425],{"class":173,"line":216},[171,418,225],{"class":177},[171,420,228],{"class":177},[171,422,186],{"class":231},[171,424,234],{"class":185},[171,426,237],{"class":181},[171,428,429,431,433,435,437,439],{"class":173,"line":222},[171,430,244],{"class":243},[171,432,247],{"class":181},[171,434,195],{"class":181},[171,436,252],{"class":198},[171,438,202],{"class":181},[171,440,257],{"class":181},[171,442,443,445,447],{"class":173,"line":240},[171,444,263],{"class":243},[171,446,247],{"class":181},[171,448,268],{"class":181},[171,450,451,454,456,458,460,462,464],{"class":173,"line":260},[171,452,453],{"class":243},"    name",[171,455,247],{"class":181},[171,457,279],{"class":185},[171,459,282],{"class":181},[171,461,285],{"class":231},[171,463,288],{"class":185},[171,465,257],{"class":181},[171,467,468,471,473,475,477,480,482],{"class":173,"line":271},[171,469,470],{"class":243},"    age",[171,472,247],{"class":181},[171,474,279],{"class":185},[171,476,282],{"class":181},[171,478,479],{"class":231},"number",[171,481,288],{"class":185},[171,483,257],{"class":181},[171,485,486,489,491,493,495,497,499,501,504,506,508,511,513],{"class":173,"line":293},[171,487,488],{"class":243},"    email",[171,490,247],{"class":181},[171,492,279],{"class":185},[171,494,282],{"class":181},[171,496,285],{"class":231},[171,498,288],{"class":185},[171,500,282],{"class":181},[171,502,503],{"class":231},"email",[171,505,288],{"class":185},[171,507,282],{"class":181},[171,509,510],{"class":231},"optional",[171,512,288],{"class":185},[171,514,257],{"class":181},[171,516,517],{"class":173,"line":299},[171,518,296],{"class":181},[171,520,521,523,525,527,529,532,535,538,540,543,545,547],{"class":173,"line":326},[171,522,302],{"class":231},[171,524,247],{"class":181},[171,526,308],{"class":307},[171,528,311],{"class":181},[171,530,531],{"class":314}," name",[171,533,534],{"class":181},",",[171,536,537],{"class":314}," age",[171,539,534],{"class":181},[171,541,542],{"class":314}," email",[171,544,318],{"class":181},[171,546,321],{"class":307},[171,548,268],{"class":181},[171,550,551],{"class":173,"line":332},[171,552,553],{"class":205},"    \u002F\u002F name: string\n",[171,555,556],{"class":173,"line":337},[171,557,558],{"class":205},"    \u002F\u002F age: number\n",[171,560,562],{"class":173,"line":561},13,[171,563,564],{"class":205},"    \u002F\u002F email: string | undefined\n",[171,566,568],{"class":173,"line":567},14,[171,569,296],{"class":181},[171,571,573,575],{"class":173,"line":572},15,[171,574,340],{"class":181},[171,576,343],{"class":185},[376,578,580],{"id":579},"tool-output-types","Tool Output Types",[150,582,583,584,247],{},"Output types are inferred from ",[168,585,586],{},"outputSchema",[161,588,590],{"className":163,"code":589,"language":165,"meta":166,"style":166},"import { defineMcpTool } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver' \u002F\u002F optional\n\nexport default defineMcpTool({\n  name: 'example',\n  inputSchema: {\n    value: z.number(),\n  },\n  outputSchema: {\n    result: z.number(),\n    doubled: z.number(),\n  },\n  handler: async ({ value }) => {\n    const result = value * 2\n\n    return {\n      content: [{ type: 'text', text: String(result) }],\n      structuredContent: {\n        result,      \u002F\u002F TypeScript knows this is number\n        doubled: result * 2, \u002F\u002F TypeScript knows this is number\n      },\n    }\n  },\n})\n",[168,591,592,612,616,628,642,650,667,671,680,697,714,718,737,757,761,768,819,829,840,860,866,872,877],{"__ignoreMap":166},[171,593,594,596,598,600,602,604,606,608,610],{"class":173,"line":174},[171,595,178],{"class":177},[171,597,182],{"class":181},[171,599,186],{"class":185},[171,601,189],{"class":181},[171,603,192],{"class":177},[171,605,195],{"class":181},[171,607,199],{"class":198},[171,609,202],{"class":181},[171,611,206],{"class":205},[171,613,614],{"class":173,"line":209},[171,615,213],{"emptyLinePlaceholder":212},[171,617,618,620,622,624,626],{"class":173,"line":216},[171,619,225],{"class":177},[171,621,228],{"class":177},[171,623,186],{"class":231},[171,625,234],{"class":185},[171,627,237],{"class":181},[171,629,630,632,634,636,638,640],{"class":173,"line":222},[171,631,244],{"class":243},[171,633,247],{"class":181},[171,635,195],{"class":181},[171,637,252],{"class":198},[171,639,202],{"class":181},[171,641,257],{"class":181},[171,643,644,646,648],{"class":173,"line":240},[171,645,263],{"class":243},[171,647,247],{"class":181},[171,649,268],{"class":181},[171,651,652,655,657,659,661,663,665],{"class":173,"line":260},[171,653,654],{"class":243},"    value",[171,656,247],{"class":181},[171,658,279],{"class":185},[171,660,282],{"class":181},[171,662,479],{"class":231},[171,664,288],{"class":185},[171,666,257],{"class":181},[171,668,669],{"class":173,"line":271},[171,670,296],{"class":181},[171,672,673,676,678],{"class":173,"line":293},[171,674,675],{"class":243},"  outputSchema",[171,677,247],{"class":181},[171,679,268],{"class":181},[171,681,682,685,687,689,691,693,695],{"class":173,"line":299},[171,683,684],{"class":243},"    result",[171,686,247],{"class":181},[171,688,279],{"class":185},[171,690,282],{"class":181},[171,692,479],{"class":231},[171,694,288],{"class":185},[171,696,257],{"class":181},[171,698,699,702,704,706,708,710,712],{"class":173,"line":326},[171,700,701],{"class":243},"    doubled",[171,703,247],{"class":181},[171,705,279],{"class":185},[171,707,282],{"class":181},[171,709,479],{"class":231},[171,711,288],{"class":185},[171,713,257],{"class":181},[171,715,716],{"class":173,"line":332},[171,717,296],{"class":181},[171,719,720,722,724,726,728,731,733,735],{"class":173,"line":337},[171,721,302],{"class":231},[171,723,247],{"class":181},[171,725,308],{"class":307},[171,727,311],{"class":181},[171,729,730],{"class":314}," value",[171,732,318],{"class":181},[171,734,321],{"class":307},[171,736,268],{"class":181},[171,738,739,742,745,748,750,753],{"class":173,"line":561},[171,740,741],{"class":307},"    const",[171,743,744],{"class":185}," result",[171,746,747],{"class":181}," =",[171,749,730],{"class":185},[171,751,752],{"class":181}," *",[171,754,756],{"class":755},"sbssI"," 2\n",[171,758,759],{"class":173,"line":567},[171,760,213],{"emptyLinePlaceholder":212},[171,762,763,766],{"class":173,"line":572},[171,764,765],{"class":177},"    return",[171,767,268],{"class":181},[171,769,771,774,776,779,782,785,787,789,792,794,796,799,801,804,806,809,812,814,817],{"class":173,"line":770},16,[171,772,773],{"class":243},"      content",[171,775,247],{"class":181},[171,777,778],{"class":243}," [",[171,780,781],{"class":181},"{",[171,783,784],{"class":243}," type",[171,786,247],{"class":181},[171,788,195],{"class":181},[171,790,791],{"class":198},"text",[171,793,202],{"class":181},[171,795,534],{"class":181},[171,797,798],{"class":243}," text",[171,800,247],{"class":181},[171,802,803],{"class":231}," String",[171,805,234],{"class":243},[171,807,808],{"class":185},"result",[171,810,811],{"class":243},") ",[171,813,340],{"class":181},[171,815,816],{"class":243},"]",[171,818,257],{"class":181},[171,820,822,825,827],{"class":173,"line":821},17,[171,823,824],{"class":243},"      structuredContent",[171,826,247],{"class":181},[171,828,268],{"class":181},[171,830,832,835,837],{"class":173,"line":831},18,[171,833,834],{"class":185},"        result",[171,836,534],{"class":181},[171,838,839],{"class":205},"      \u002F\u002F TypeScript knows this is number\n",[171,841,843,846,848,850,852,855,857],{"class":173,"line":842},19,[171,844,845],{"class":243},"        doubled",[171,847,247],{"class":181},[171,849,744],{"class":185},[171,851,752],{"class":181},[171,853,854],{"class":755}," 2",[171,856,534],{"class":181},[171,858,859],{"class":205}," \u002F\u002F TypeScript knows this is number\n",[171,861,863],{"class":173,"line":862},20,[171,864,865],{"class":181},"      },\n",[171,867,869],{"class":173,"line":868},21,[171,870,871],{"class":181},"    }\n",[171,873,875],{"class":173,"line":874},22,[171,876,296],{"class":181},[171,878,880,882],{"class":173,"line":879},23,[171,881,340],{"class":181},[171,883,343],{"class":185},[376,885,887],{"id":886},"prompt-argument-types","Prompt Argument Types",[150,889,890,891,247],{},"Prompt argument types are inferred from ",[168,892,385],{},[161,894,896],{"className":163,"code":895,"language":165,"meta":166,"style":166},"import { defineMcpPrompt } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver' \u002F\u002F optional\n\nexport default defineMcpPrompt({\n  name: 'example',\n  inputSchema: {\n    text: z.string(),\n    maxLength: z.string().optional(),\n  },\n  handler: async ({ text, maxLength }) => {\n    \u002F\u002F text: string\n    \u002F\u002F maxLength: string | undefined\n  },\n})\n",[168,897,898,919,923,935,949,957,974,997,1001,1024,1029,1034,1038],{"__ignoreMap":166},[171,899,900,902,904,907,909,911,913,915,917],{"class":173,"line":174},[171,901,178],{"class":177},[171,903,182],{"class":181},[171,905,906],{"class":185}," defineMcpPrompt",[171,908,189],{"class":181},[171,910,192],{"class":177},[171,912,195],{"class":181},[171,914,199],{"class":198},[171,916,202],{"class":181},[171,918,206],{"class":205},[171,920,921],{"class":173,"line":209},[171,922,213],{"emptyLinePlaceholder":212},[171,924,925,927,929,931,933],{"class":173,"line":216},[171,926,225],{"class":177},[171,928,228],{"class":177},[171,930,906],{"class":231},[171,932,234],{"class":185},[171,934,237],{"class":181},[171,936,937,939,941,943,945,947],{"class":173,"line":222},[171,938,244],{"class":243},[171,940,247],{"class":181},[171,942,195],{"class":181},[171,944,252],{"class":198},[171,946,202],{"class":181},[171,948,257],{"class":181},[171,950,951,953,955],{"class":173,"line":240},[171,952,263],{"class":243},[171,954,247],{"class":181},[171,956,268],{"class":181},[171,958,959,962,964,966,968,970,972],{"class":173,"line":260},[171,960,961],{"class":243},"    text",[171,963,247],{"class":181},[171,965,279],{"class":185},[171,967,282],{"class":181},[171,969,285],{"class":231},[171,971,288],{"class":185},[171,973,257],{"class":181},[171,975,976,979,981,983,985,987,989,991,993,995],{"class":173,"line":271},[171,977,978],{"class":243},"    maxLength",[171,980,247],{"class":181},[171,982,279],{"class":185},[171,984,282],{"class":181},[171,986,285],{"class":231},[171,988,288],{"class":185},[171,990,282],{"class":181},[171,992,510],{"class":231},[171,994,288],{"class":185},[171,996,257],{"class":181},[171,998,999],{"class":173,"line":293},[171,1000,296],{"class":181},[171,1002,1003,1005,1007,1009,1011,1013,1015,1018,1020,1022],{"class":173,"line":299},[171,1004,302],{"class":231},[171,1006,247],{"class":181},[171,1008,308],{"class":307},[171,1010,311],{"class":181},[171,1012,798],{"class":314},[171,1014,534],{"class":181},[171,1016,1017],{"class":314}," maxLength",[171,1019,318],{"class":181},[171,1021,321],{"class":307},[171,1023,268],{"class":181},[171,1025,1026],{"class":173,"line":326},[171,1027,1028],{"class":205},"    \u002F\u002F text: string\n",[171,1030,1031],{"class":173,"line":332},[171,1032,1033],{"class":205},"    \u002F\u002F maxLength: string | undefined\n",[171,1035,1036],{"class":173,"line":337},[171,1037,296],{"class":181},[171,1039,1040,1042],{"class":173,"line":561},[171,1041,340],{"class":181},[171,1043,343],{"class":185},[145,1045,1047],{"id":1046},"runtime-config-types","Runtime Config Types",[150,1049,1050],{},"Access typed runtime configuration:",[161,1052,1055],{"className":163,"code":1053,"filename":1054,"language":165,"meta":166,"style":166},"export default defineEventHandler((event) => {\n  const config = useRuntimeConfig(event).mcp\n\n  \u002F\u002F config is typed with:\n  \u002F\u002F - enabled: boolean\n  \u002F\u002F - route: string\n  \u002F\u002F - browserRedirect: string\n  \u002F\u002F - name: string\n  \u002F\u002F - version: string\n  \u002F\u002F - dir: string\n\n  return config\n})\n","server\u002Fapi\u002Fconfig.ts",[168,1056,1057,1080,1104,1108,1113,1118,1123,1128,1133,1138,1143,1147,1155],{"__ignoreMap":166},[171,1058,1059,1061,1063,1066,1068,1070,1073,1076,1078],{"class":173,"line":174},[171,1060,225],{"class":177},[171,1062,228],{"class":177},[171,1064,1065],{"class":231}," defineEventHandler",[171,1067,234],{"class":185},[171,1069,234],{"class":181},[171,1071,1072],{"class":314},"event",[171,1074,1075],{"class":181},")",[171,1077,321],{"class":307},[171,1079,268],{"class":181},[171,1081,1082,1085,1088,1090,1093,1095,1097,1099,1101],{"class":173,"line":209},[171,1083,1084],{"class":307},"  const",[171,1086,1087],{"class":185}," config",[171,1089,747],{"class":181},[171,1091,1092],{"class":231}," useRuntimeConfig",[171,1094,234],{"class":243},[171,1096,1072],{"class":185},[171,1098,1075],{"class":243},[171,1100,282],{"class":181},[171,1102,1103],{"class":185},"mcp\n",[171,1105,1106],{"class":173,"line":216},[171,1107,213],{"emptyLinePlaceholder":212},[171,1109,1110],{"class":173,"line":222},[171,1111,1112],{"class":205},"  \u002F\u002F config is typed with:\n",[171,1114,1115],{"class":173,"line":240},[171,1116,1117],{"class":205},"  \u002F\u002F - enabled: boolean\n",[171,1119,1120],{"class":173,"line":260},[171,1121,1122],{"class":205},"  \u002F\u002F - route: string\n",[171,1124,1125],{"class":173,"line":271},[171,1126,1127],{"class":205},"  \u002F\u002F - browserRedirect: string\n",[171,1129,1130],{"class":173,"line":293},[171,1131,1132],{"class":205},"  \u002F\u002F - name: string\n",[171,1134,1135],{"class":173,"line":299},[171,1136,1137],{"class":205},"  \u002F\u002F - version: string\n",[171,1139,1140],{"class":173,"line":326},[171,1141,1142],{"class":205},"  \u002F\u002F - dir: string\n",[171,1144,1145],{"class":173,"line":332},[171,1146,213],{"emptyLinePlaceholder":212},[171,1148,1149,1152],{"class":173,"line":337},[171,1150,1151],{"class":177},"  return",[171,1153,1154],{"class":185}," config\n",[171,1156,1157,1159],{"class":173,"line":561},[171,1158,340],{"class":181},[171,1160,343],{"class":185},[145,1162,1164],{"id":1163},"next-steps","Next Steps",[348,1166,1167,1173,1178],{},[351,1168,1169,1172],{},[1170,1171,46],"a",{"href":47}," - Learn about creating tools",[351,1174,1175,1177],{},[1170,1176,51],{"href":52}," - Learn about creating resources",[351,1179,1180,1182],{},[1170,1181,56],{"href":57}," - Learn about creating prompts",[1184,1185,1186],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":166,"searchDepth":209,"depth":209,"links":1188},[1189,1190,1191,1196,1197],{"id":147,"depth":209,"text":148},{"id":155,"depth":209,"text":156},{"id":373,"depth":209,"text":374,"children":1192},[1193,1194,1195],{"id":378,"depth":216,"text":379},{"id":579,"depth":216,"text":580},{"id":886,"depth":216,"text":887},{"id":1046,"depth":209,"text":1047},{"id":1163,"depth":209,"text":1164},"Type safety and TypeScript features in the Nuxt MCP module.","md",null,{},{"icon":84},{"title":81,"description":1204},"Full TypeScript support with auto-imports and type safety.","5NBQH-K-jPOR7MxfszC3ei1rqFUlAy5Oz-gnqJL4llY",[1207,1209],{"title":76,"path":77,"stem":78,"description":1208,"icon":79,"children":-1},"Intercept MCP requests to add authentication, logging, analytics, and more.",{"title":86,"path":87,"stem":88,"description":1210,"icon":89,"children":-1},"Use Nuxt hooks to extend and customize the MCP module.",1773932610219]