[{"data":1,"prerenderedAt":1273},["ShallowReactive",2],{"navigation_docs":3,"-advanced-typescript":139,"-advanced-typescript-surround":1268},[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":1260,"extension":1261,"links":1262,"meta":1263,"navigation":1264,"path":82,"seo":1265,"stem":83,"__hash__":1267},"docs\u002F3.advanced\u002F3.typescript.md",{"type":142,"value":143,"toc":1249},"minimark",[144,149,153,157,160,166,219,224,244,437,453,457,462,468,677,681,687,949,953,958,1108,1112,1115,1224,1228,1245],[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 and types are auto-imported in your server files:",[150,161,162],{},[163,164,165],"strong",{},"Functions:",[167,168,169,186,203,211],"ul",{},[170,171,172,176,177,176,180,176,183],"li",{},[173,174,175],"code",{},"defineMcpTool",", ",[173,178,179],{},"defineMcpResource",[173,181,182],{},"defineMcpPrompt",[173,184,185],{},"defineMcpHandler",[170,187,188,176,191,176,194,176,197,176,200],{},[173,189,190],{},"textResult",[173,192,193],{},"jsonResult",[173,195,196],{},"errorResult",[173,198,199],{},"imageResult",[173,201,202],{},"audioResult",[170,204,205,176,208],{},[173,206,207],{},"completable",[173,209,210],{},"extractToolNames",[170,212,213,176,216],{},[173,214,215],{},"useMcpSession",[173,217,218],{},"useMcpServer",[150,220,221],{},[163,222,223],{},"Types:",[167,225,226,232,238],{},[170,227,228,231],{},[173,229,230],{},"McpToolExtra"," — extra arguments passed to tool handlers (abort signal, auth info, session ID, metadata)",[170,233,234,237],{},[173,235,236],{},"McpPromptExtra"," — extra arguments passed to prompt handlers",[170,239,240,243],{},[173,241,242],{},"McpResourceExtra"," — extra arguments passed to resource handlers",[245,246,251],"pre",{"className":247,"code":248,"language":249,"meta":250,"style":250},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { z } from 'zod'\n\nexport default defineMcpTool({\n  name: 'example',\n  inputSchema: {\n    message: z.string(),\n  },\n  handler: async ({ message }, extra: McpToolExtra) => {\n    \u002F\u002F message is typed as string\n    \u002F\u002F extra.signal, extra.authInfo, extra.sessionId are available\n  },\n})\n","typescript","",[173,252,253,286,293,312,333,344,365,371,410,417,423,428],{"__ignoreMap":250},[254,255,258,262,266,270,273,276,279,283],"span",{"class":256,"line":257},"line",1,[254,259,261],{"class":260},"s7zQu","import",[254,263,265],{"class":264},"sMK4o"," {",[254,267,269],{"class":268},"sTEyZ"," z",[254,271,272],{"class":264}," }",[254,274,275],{"class":260}," from",[254,277,278],{"class":264}," '",[254,280,282],{"class":281},"sfazB","zod",[254,284,285],{"class":264},"'\n",[254,287,289],{"class":256,"line":288},2,[254,290,292],{"emptyLinePlaceholder":291},true,"\n",[254,294,296,299,302,306,309],{"class":256,"line":295},3,[254,297,298],{"class":260},"export",[254,300,301],{"class":260}," default",[254,303,305],{"class":304},"s2Zo4"," defineMcpTool",[254,307,308],{"class":268},"(",[254,310,311],{"class":264},"{\n",[254,313,315,319,322,324,327,330],{"class":256,"line":314},4,[254,316,318],{"class":317},"swJcz","  name",[254,320,321],{"class":264},":",[254,323,278],{"class":264},[254,325,326],{"class":281},"example",[254,328,329],{"class":264},"'",[254,331,332],{"class":264},",\n",[254,334,336,339,341],{"class":256,"line":335},5,[254,337,338],{"class":317},"  inputSchema",[254,340,321],{"class":264},[254,342,343],{"class":264}," {\n",[254,345,347,350,352,354,357,360,363],{"class":256,"line":346},6,[254,348,349],{"class":317},"    message",[254,351,321],{"class":264},[254,353,269],{"class":268},[254,355,356],{"class":264},".",[254,358,359],{"class":304},"string",[254,361,362],{"class":268},"()",[254,364,332],{"class":264},[254,366,368],{"class":256,"line":367},7,[254,369,370],{"class":264},"  },\n",[254,372,374,377,379,383,386,390,393,396,398,402,405,408],{"class":256,"line":373},8,[254,375,376],{"class":304},"  handler",[254,378,321],{"class":264},[254,380,382],{"class":381},"spNyl"," async",[254,384,385],{"class":264}," ({",[254,387,389],{"class":388},"sHdIc"," message",[254,391,392],{"class":264}," },",[254,394,395],{"class":388}," extra",[254,397,321],{"class":264},[254,399,401],{"class":400},"sBMFI"," McpToolExtra",[254,403,404],{"class":264},")",[254,406,407],{"class":381}," =>",[254,409,343],{"class":264},[254,411,413],{"class":256,"line":412},9,[254,414,416],{"class":415},"sHwdD","    \u002F\u002F message is typed as string\n",[254,418,420],{"class":256,"line":419},10,[254,421,422],{"class":415},"    \u002F\u002F extra.signal, extra.authInfo, extra.sessionId are available\n",[254,424,426],{"class":256,"line":425},11,[254,427,370],{"class":264},[254,429,431,434],{"class":256,"line":430},12,[254,432,433],{"class":264},"}",[254,435,436],{"class":268},")\n",[150,438,439,440,443,444,448,449,452],{},"You can disable auto-imports entirely with ",[173,441,442],{},"autoImports: false"," in your ",[445,446,447],"a",{"href":21},"configuration"," and import explicitly from ",[173,450,451],{},"@nuxtjs\u002Fmcp-toolkit\u002Fserver"," instead.",[145,454,456],{"id":455},"type-inference","Type Inference",[458,459,461],"h3",{"id":460},"tool-input-types","Tool Input Types",[150,463,464,465,321],{},"Input types are automatically inferred from your ",[173,466,467],{},"inputSchema",[245,469,471],{"className":247,"code":470,"language":249,"meta":250,"style":250},"import { z } from 'zod'\nimport { defineMcpTool } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\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",[173,472,473,491,509,513,525,539,547,564,582,613,617,648,653,659,665,670],{"__ignoreMap":250},[254,474,475,477,479,481,483,485,487,489],{"class":256,"line":257},[254,476,261],{"class":260},[254,478,265],{"class":264},[254,480,269],{"class":268},[254,482,272],{"class":264},[254,484,275],{"class":260},[254,486,278],{"class":264},[254,488,282],{"class":281},[254,490,285],{"class":264},[254,492,493,495,497,499,501,503,505,507],{"class":256,"line":288},[254,494,261],{"class":260},[254,496,265],{"class":264},[254,498,305],{"class":268},[254,500,272],{"class":264},[254,502,275],{"class":260},[254,504,278],{"class":264},[254,506,451],{"class":281},[254,508,285],{"class":264},[254,510,511],{"class":256,"line":295},[254,512,292],{"emptyLinePlaceholder":291},[254,514,515,517,519,521,523],{"class":256,"line":314},[254,516,298],{"class":260},[254,518,301],{"class":260},[254,520,305],{"class":304},[254,522,308],{"class":268},[254,524,311],{"class":264},[254,526,527,529,531,533,535,537],{"class":256,"line":335},[254,528,318],{"class":317},[254,530,321],{"class":264},[254,532,278],{"class":264},[254,534,326],{"class":281},[254,536,329],{"class":264},[254,538,332],{"class":264},[254,540,541,543,545],{"class":256,"line":346},[254,542,338],{"class":317},[254,544,321],{"class":264},[254,546,343],{"class":264},[254,548,549,552,554,556,558,560,562],{"class":256,"line":367},[254,550,551],{"class":317},"    name",[254,553,321],{"class":264},[254,555,269],{"class":268},[254,557,356],{"class":264},[254,559,359],{"class":304},[254,561,362],{"class":268},[254,563,332],{"class":264},[254,565,566,569,571,573,575,578,580],{"class":256,"line":373},[254,567,568],{"class":317},"    age",[254,570,321],{"class":264},[254,572,269],{"class":268},[254,574,356],{"class":264},[254,576,577],{"class":304},"number",[254,579,362],{"class":268},[254,581,332],{"class":264},[254,583,584,587,589,591,593,595,597,599,602,604,606,609,611],{"class":256,"line":412},[254,585,586],{"class":317},"    email",[254,588,321],{"class":264},[254,590,269],{"class":268},[254,592,356],{"class":264},[254,594,359],{"class":304},[254,596,362],{"class":268},[254,598,356],{"class":264},[254,600,601],{"class":304},"email",[254,603,362],{"class":268},[254,605,356],{"class":264},[254,607,608],{"class":304},"optional",[254,610,362],{"class":268},[254,612,332],{"class":264},[254,614,615],{"class":256,"line":419},[254,616,370],{"class":264},[254,618,619,621,623,625,627,630,633,636,638,641,644,646],{"class":256,"line":425},[254,620,376],{"class":304},[254,622,321],{"class":264},[254,624,382],{"class":381},[254,626,385],{"class":264},[254,628,629],{"class":388}," name",[254,631,632],{"class":264},",",[254,634,635],{"class":388}," age",[254,637,632],{"class":264},[254,639,640],{"class":388}," email",[254,642,643],{"class":264}," })",[254,645,407],{"class":381},[254,647,343],{"class":264},[254,649,650],{"class":256,"line":430},[254,651,652],{"class":415},"    \u002F\u002F name: string\n",[254,654,656],{"class":256,"line":655},13,[254,657,658],{"class":415},"    \u002F\u002F age: number\n",[254,660,662],{"class":256,"line":661},14,[254,663,664],{"class":415},"    \u002F\u002F email: string | undefined\n",[254,666,668],{"class":256,"line":667},15,[254,669,370],{"class":264},[254,671,673,675],{"class":256,"line":672},16,[254,674,433],{"class":264},[254,676,436],{"class":268},[458,678,680],{"id":679},"tool-output-types","Tool Output Types",[150,682,683,684,321],{},"Output types are inferred from ",[173,685,686],{},"outputSchema",[245,688,690],{"className":247,"code":689,"language":249,"meta":250,"style":250},"import { z } from 'zod'\nimport { defineMcpTool } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\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      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",[173,691,692,710,728,732,744,758,766,783,787,796,813,830,834,853,873,877,884,894,905,925,931,937,942],{"__ignoreMap":250},[254,693,694,696,698,700,702,704,706,708],{"class":256,"line":257},[254,695,261],{"class":260},[254,697,265],{"class":264},[254,699,269],{"class":268},[254,701,272],{"class":264},[254,703,275],{"class":260},[254,705,278],{"class":264},[254,707,282],{"class":281},[254,709,285],{"class":264},[254,711,712,714,716,718,720,722,724,726],{"class":256,"line":288},[254,713,261],{"class":260},[254,715,265],{"class":264},[254,717,305],{"class":268},[254,719,272],{"class":264},[254,721,275],{"class":260},[254,723,278],{"class":264},[254,725,451],{"class":281},[254,727,285],{"class":264},[254,729,730],{"class":256,"line":295},[254,731,292],{"emptyLinePlaceholder":291},[254,733,734,736,738,740,742],{"class":256,"line":314},[254,735,298],{"class":260},[254,737,301],{"class":260},[254,739,305],{"class":304},[254,741,308],{"class":268},[254,743,311],{"class":264},[254,745,746,748,750,752,754,756],{"class":256,"line":335},[254,747,318],{"class":317},[254,749,321],{"class":264},[254,751,278],{"class":264},[254,753,326],{"class":281},[254,755,329],{"class":264},[254,757,332],{"class":264},[254,759,760,762,764],{"class":256,"line":346},[254,761,338],{"class":317},[254,763,321],{"class":264},[254,765,343],{"class":264},[254,767,768,771,773,775,777,779,781],{"class":256,"line":367},[254,769,770],{"class":317},"    value",[254,772,321],{"class":264},[254,774,269],{"class":268},[254,776,356],{"class":264},[254,778,577],{"class":304},[254,780,362],{"class":268},[254,782,332],{"class":264},[254,784,785],{"class":256,"line":373},[254,786,370],{"class":264},[254,788,789,792,794],{"class":256,"line":412},[254,790,791],{"class":317},"  outputSchema",[254,793,321],{"class":264},[254,795,343],{"class":264},[254,797,798,801,803,805,807,809,811],{"class":256,"line":419},[254,799,800],{"class":317},"    result",[254,802,321],{"class":264},[254,804,269],{"class":268},[254,806,356],{"class":264},[254,808,577],{"class":304},[254,810,362],{"class":268},[254,812,332],{"class":264},[254,814,815,818,820,822,824,826,828],{"class":256,"line":425},[254,816,817],{"class":317},"    doubled",[254,819,321],{"class":264},[254,821,269],{"class":268},[254,823,356],{"class":264},[254,825,577],{"class":304},[254,827,362],{"class":268},[254,829,332],{"class":264},[254,831,832],{"class":256,"line":430},[254,833,370],{"class":264},[254,835,836,838,840,842,844,847,849,851],{"class":256,"line":655},[254,837,376],{"class":304},[254,839,321],{"class":264},[254,841,382],{"class":381},[254,843,385],{"class":264},[254,845,846],{"class":388}," value",[254,848,643],{"class":264},[254,850,407],{"class":381},[254,852,343],{"class":264},[254,854,855,858,861,864,866,869],{"class":256,"line":661},[254,856,857],{"class":381},"    const",[254,859,860],{"class":268}," result",[254,862,863],{"class":264}," =",[254,865,846],{"class":268},[254,867,868],{"class":264}," *",[254,870,872],{"class":871},"sbssI"," 2\n",[254,874,875],{"class":256,"line":667},[254,876,292],{"emptyLinePlaceholder":291},[254,878,879,882],{"class":256,"line":672},[254,880,881],{"class":260},"    return",[254,883,343],{"class":264},[254,885,887,890,892],{"class":256,"line":886},17,[254,888,889],{"class":317},"      structuredContent",[254,891,321],{"class":264},[254,893,343],{"class":264},[254,895,897,900,902],{"class":256,"line":896},18,[254,898,899],{"class":268},"        result",[254,901,632],{"class":264},[254,903,904],{"class":415},"      \u002F\u002F TypeScript knows this is number\n",[254,906,908,911,913,915,917,920,922],{"class":256,"line":907},19,[254,909,910],{"class":317},"        doubled",[254,912,321],{"class":264},[254,914,860],{"class":268},[254,916,868],{"class":264},[254,918,919],{"class":871}," 2",[254,921,632],{"class":264},[254,923,924],{"class":415}," \u002F\u002F TypeScript knows this is number\n",[254,926,928],{"class":256,"line":927},20,[254,929,930],{"class":264},"      },\n",[254,932,934],{"class":256,"line":933},21,[254,935,936],{"class":264},"    }\n",[254,938,940],{"class":256,"line":939},22,[254,941,370],{"class":264},[254,943,945,947],{"class":256,"line":944},23,[254,946,433],{"class":264},[254,948,436],{"class":268},[458,950,952],{"id":951},"prompt-argument-types","Prompt Argument Types",[150,954,955,956,321],{},"Prompt argument types are inferred from ",[173,957,467],{},[245,959,961],{"className":247,"code":960,"language":249,"meta":250,"style":250},"import { defineMcpPrompt } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\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",[173,962,963,982,986,998,1012,1020,1037,1060,1064,1088,1093,1098,1102],{"__ignoreMap":250},[254,964,965,967,969,972,974,976,978,980],{"class":256,"line":257},[254,966,261],{"class":260},[254,968,265],{"class":264},[254,970,971],{"class":268}," defineMcpPrompt",[254,973,272],{"class":264},[254,975,275],{"class":260},[254,977,278],{"class":264},[254,979,451],{"class":281},[254,981,285],{"class":264},[254,983,984],{"class":256,"line":288},[254,985,292],{"emptyLinePlaceholder":291},[254,987,988,990,992,994,996],{"class":256,"line":295},[254,989,298],{"class":260},[254,991,301],{"class":260},[254,993,971],{"class":304},[254,995,308],{"class":268},[254,997,311],{"class":264},[254,999,1000,1002,1004,1006,1008,1010],{"class":256,"line":314},[254,1001,318],{"class":317},[254,1003,321],{"class":264},[254,1005,278],{"class":264},[254,1007,326],{"class":281},[254,1009,329],{"class":264},[254,1011,332],{"class":264},[254,1013,1014,1016,1018],{"class":256,"line":335},[254,1015,338],{"class":317},[254,1017,321],{"class":264},[254,1019,343],{"class":264},[254,1021,1022,1025,1027,1029,1031,1033,1035],{"class":256,"line":346},[254,1023,1024],{"class":317},"    text",[254,1026,321],{"class":264},[254,1028,269],{"class":268},[254,1030,356],{"class":264},[254,1032,359],{"class":304},[254,1034,362],{"class":268},[254,1036,332],{"class":264},[254,1038,1039,1042,1044,1046,1048,1050,1052,1054,1056,1058],{"class":256,"line":367},[254,1040,1041],{"class":317},"    maxLength",[254,1043,321],{"class":264},[254,1045,269],{"class":268},[254,1047,356],{"class":264},[254,1049,359],{"class":304},[254,1051,362],{"class":268},[254,1053,356],{"class":264},[254,1055,608],{"class":304},[254,1057,362],{"class":268},[254,1059,332],{"class":264},[254,1061,1062],{"class":256,"line":373},[254,1063,370],{"class":264},[254,1065,1066,1068,1070,1072,1074,1077,1079,1082,1084,1086],{"class":256,"line":412},[254,1067,376],{"class":304},[254,1069,321],{"class":264},[254,1071,382],{"class":381},[254,1073,385],{"class":264},[254,1075,1076],{"class":388}," text",[254,1078,632],{"class":264},[254,1080,1081],{"class":388}," maxLength",[254,1083,643],{"class":264},[254,1085,407],{"class":381},[254,1087,343],{"class":264},[254,1089,1090],{"class":256,"line":419},[254,1091,1092],{"class":415},"    \u002F\u002F text: string\n",[254,1094,1095],{"class":256,"line":425},[254,1096,1097],{"class":415},"    \u002F\u002F maxLength: string | undefined\n",[254,1099,1100],{"class":256,"line":430},[254,1101,370],{"class":264},[254,1103,1104,1106],{"class":256,"line":655},[254,1105,433],{"class":264},[254,1107,436],{"class":268},[145,1109,1111],{"id":1110},"runtime-config-types","Runtime Config Types",[150,1113,1114],{},"Access typed runtime configuration:",[245,1116,1119],{"className":247,"code":1117,"filename":1118,"language":249,"meta":250,"style":250},"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",[173,1120,1121,1143,1167,1171,1176,1181,1186,1191,1196,1201,1206,1210,1218],{"__ignoreMap":250},[254,1122,1123,1125,1127,1130,1132,1134,1137,1139,1141],{"class":256,"line":257},[254,1124,298],{"class":260},[254,1126,301],{"class":260},[254,1128,1129],{"class":304}," defineEventHandler",[254,1131,308],{"class":268},[254,1133,308],{"class":264},[254,1135,1136],{"class":388},"event",[254,1138,404],{"class":264},[254,1140,407],{"class":381},[254,1142,343],{"class":264},[254,1144,1145,1148,1151,1153,1156,1158,1160,1162,1164],{"class":256,"line":288},[254,1146,1147],{"class":381},"  const",[254,1149,1150],{"class":268}," config",[254,1152,863],{"class":264},[254,1154,1155],{"class":304}," useRuntimeConfig",[254,1157,308],{"class":317},[254,1159,1136],{"class":268},[254,1161,404],{"class":317},[254,1163,356],{"class":264},[254,1165,1166],{"class":268},"mcp\n",[254,1168,1169],{"class":256,"line":295},[254,1170,292],{"emptyLinePlaceholder":291},[254,1172,1173],{"class":256,"line":314},[254,1174,1175],{"class":415},"  \u002F\u002F config is typed with:\n",[254,1177,1178],{"class":256,"line":335},[254,1179,1180],{"class":415},"  \u002F\u002F - enabled: boolean\n",[254,1182,1183],{"class":256,"line":346},[254,1184,1185],{"class":415},"  \u002F\u002F - route: string\n",[254,1187,1188],{"class":256,"line":367},[254,1189,1190],{"class":415},"  \u002F\u002F - browserRedirect: string\n",[254,1192,1193],{"class":256,"line":373},[254,1194,1195],{"class":415},"  \u002F\u002F - name: string\n",[254,1197,1198],{"class":256,"line":412},[254,1199,1200],{"class":415},"  \u002F\u002F - version: string\n",[254,1202,1203],{"class":256,"line":419},[254,1204,1205],{"class":415},"  \u002F\u002F - dir: string\n",[254,1207,1208],{"class":256,"line":425},[254,1209,292],{"emptyLinePlaceholder":291},[254,1211,1212,1215],{"class":256,"line":430},[254,1213,1214],{"class":260},"  return",[254,1216,1217],{"class":268}," config\n",[254,1219,1220,1222],{"class":256,"line":655},[254,1221,433],{"class":264},[254,1223,436],{"class":268},[145,1225,1227],{"id":1226},"next-steps","Next Steps",[167,1229,1230,1235,1240],{},[170,1231,1232,1234],{},[445,1233,46],{"href":47}," - Learn about creating tools",[170,1236,1237,1239],{},[445,1238,51],{"href":52}," - Learn about creating resources",[170,1241,1242,1244],{},[445,1243,56],{"href":57}," - Learn about creating prompts",[1246,1247,1248],"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 .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 pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}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 .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":250,"searchDepth":288,"depth":288,"links":1250},[1251,1252,1253,1258,1259],{"id":147,"depth":288,"text":148},{"id":155,"depth":288,"text":156},{"id":455,"depth":288,"text":456,"children":1254},[1255,1256,1257],{"id":460,"depth":295,"text":461},{"id":679,"depth":295,"text":680},{"id":951,"depth":295,"text":952},{"id":1110,"depth":288,"text":1111},{"id":1226,"depth":288,"text":1227},"Type safety and TypeScript features in the Nuxt MCP module.","md",null,{},{"icon":84},{"title":81,"description":1266},"Full TypeScript support with auto-imports and type safety.","tgjJ_2hYWjnZQAXT3zVby8VADCRQagdWYDiv3ukav9U",[1269,1271],{"title":76,"path":77,"stem":78,"description":1270,"icon":79,"children":-1},"Intercept MCP requests to add authentication, logging, analytics, and more.",{"title":86,"path":87,"stem":88,"description":1272,"icon":89,"children":-1},"Use Nuxt hooks to extend and customize the MCP module.",1776256257606]