[{"data":1,"prerenderedAt":917},["ShallowReactive",2],{"navigation_docs":3,"-getting-started-installation":127,"-getting-started-installation-surround":912},[4,40,68,98],{"title":5,"path":6,"stem":7,"children":8,"page":39},"Getting Started","/getting-started","1.getting-started",[9,14,19,24,29,34],{"title":10,"path":11,"stem":12,"icon":13},"Introduction","/getting-started/introduction","1.getting-started/1.introduction","i-lucide-book-open",{"title":15,"path":16,"stem":17,"icon":18},"Installation","/getting-started/installation","1.getting-started/2.installation","i-lucide-download",{"title":20,"path":21,"stem":22,"icon":23},"Configuration","/getting-started/configuration","1.getting-started/3.configuration","i-lucide-settings",{"title":25,"path":26,"stem":27,"icon":28},"MCP Inspector","/getting-started/inspector","1.getting-started/4.inspector","i-lucide-circuit-board",{"title":30,"path":31,"stem":32,"icon":33},"Connection","/getting-started/connection","1.getting-started/5.connection","i-lucide-plug",{"title":35,"path":36,"stem":37,"icon":38},"Agent Skills","/getting-started/agent-skills","1.getting-started/6.agent-skills","i-lucide-sparkles",false,{"title":41,"path":42,"stem":43,"children":44,"page":39},"Core Concepts","/core-concepts","2.core-concepts",[45,48,53,58,63],{"title":20,"path":46,"stem":47,"icon":23},"/core-concepts/configuration","2.core-concepts/1.configuration",{"title":49,"path":50,"stem":51,"icon":52},"Tools","/core-concepts/tools","2.core-concepts/2.tools","i-lucide-wrench",{"title":54,"path":55,"stem":56,"icon":57},"Resources","/core-concepts/resources","2.core-concepts/3.resources","i-lucide-package",{"title":59,"path":60,"stem":61,"icon":62},"Prompts","/core-concepts/prompts","2.core-concepts/4.prompts","i-lucide-message-square",{"title":64,"path":65,"stem":66,"icon":67},"Handlers","/core-concepts/handlers","2.core-concepts/5.handlers","i-lucide-server",{"title":69,"path":70,"stem":71,"children":72,"page":39},"Advanced Topics","/advanced","3.advanced",[73,78,83,88,93],{"title":74,"path":75,"stem":76,"icon":77},"Custom Paths","/advanced/custom-paths","3.advanced/1.custom-paths","i-lucide-folder",{"title":79,"path":80,"stem":81,"icon":82},"Middleware","/advanced/middleware","3.advanced/2.middleware","i-lucide-shield",{"title":84,"path":85,"stem":86,"icon":87},"TypeScript","/advanced/typescript","3.advanced/3.typescript","i-lucide-type",{"title":89,"path":90,"stem":91,"icon":92},"Hooks","/advanced/hooks","3.advanced/4.hooks","i-lucide-webhook",{"title":94,"path":95,"stem":96,"icon":97},"MCP Evals","/advanced/evals","3.advanced/5.evals","i-lucide-flask-conical",{"title":99,"path":100,"stem":101,"children":102,"page":39},"Examples","/examples","4.examples",[103,108,113,118,123],{"title":104,"path":105,"stem":106,"icon":107},"Authentication","/examples/authentication","4.examples/1.authentication","i-lucide-shield-check",{"title":109,"path":110,"stem":111,"icon":112},"API Integration","/examples/api-integration","4.examples/2.api-integration","i-lucide-globe",{"title":114,"path":115,"stem":116,"icon":117},"Common Patterns","/examples/common-patterns","4.examples/3.common-patterns","i-lucide-lightbulb",{"title":119,"path":120,"stem":121,"icon":122},"File Operations","/examples/file-operations","4.examples/4.file-operations","i-lucide-file",{"title":124,"path":125,"stem":126,"icon":62},"Prompt Examples","/examples/prompt-examples","4.examples/5.prompt-examples",{"id":128,"title":15,"body":129,"description":904,"extension":905,"links":906,"meta":907,"navigation":908,"path":16,"seo":909,"stem":17,"__hash__":911},"docs/1.getting-started/2.installation.md",{"type":130,"value":131,"toc":891},"minimark",[132,137,141,146,165,169,182,185,521,525,528,552,806,827,831,834,841,845,848,852,855,863,867,870,887],[133,134,136],"h2",{"id":135},"try-the-documentation-mcp-server","Try the Documentation MCP Server",[138,139,140],"p",{},"Before installing the module, you can try connecting to this documentation's MCP server to explore the available tools and prompts:",[142,143],"install-button",{"name":144,"url":145},"nuxt-mcp-toolkit-docs","https://mcp-toolkit.nuxt.dev/mcp",[138,147,148,149,153,154,153,157,160,161,164],{},"This will give you access to prompts like ",[150,151,152],"code",{},"setup-mcp-server",", ",[150,155,156],{},"create-tool",[150,158,159],{},"create-resource",", and ",[150,162,163],{},"troubleshoot"," to help you get started.",[133,166,168],{"id":167},"prerequisites","Prerequisites",[170,171,172,176,179],"ul",{},[173,174,175],"li",{},"Nuxt 3.x or 4.x",[173,177,178],{},"Node.js 18.x or higher",[173,180,181],{},"A package manager (npm, pnpm, yarn, or bun)",[133,183,15],{"id":184},"installation",[186,187,188,193,196,201,208,239,243,254,324,328,334,396,400,403],"steps",{},[189,190,192],"h3",{"id":191},"install-the-module","Install the module",[138,194,195],{},"You can install the module automatically or manually.",[197,198,200],"h4",{"id":199},"automatic-installation","Automatic Installation",[138,202,203,204,207],{},"Use the ",[150,205,206],{},"nuxt"," command to install the module and add it to your configuration automatically:",[209,210,215],"pre",{"className":211,"code":212,"language":213,"meta":214,"style":214},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npx nuxt module add mcp-toolkit\n","bash","",[150,216,217],{"__ignoreMap":214},[218,219,222,226,230,233,236],"span",{"class":220,"line":221},"line",1,[218,223,225],{"class":224},"sBMFI","npx",[218,227,229],{"class":228},"sfazB"," nuxt",[218,231,232],{"class":228}," module",[218,234,235],{"class":228}," add",[218,237,238],{"class":228}," mcp-toolkit\n",[197,240,242],{"id":241},"manual-installation","Manual Installation",[138,244,245,246,249,250,253],{},"Install ",[150,247,248],{},"@nuxtjs/mcp-toolkit"," and its peer dependency ",[150,251,252],{},"zod",":",[255,256,257,275,292,308],"code-group",{},[209,258,261],{"className":211,"code":259,"filename":260,"language":213,"meta":214,"style":214},"pnpm add @nuxtjs/mcp-toolkit zod\n","pnpm",[150,262,263],{"__ignoreMap":214},[218,264,265,267,269,272],{"class":220,"line":221},[218,266,260],{"class":224},[218,268,235],{"class":228},[218,270,271],{"class":228}," @nuxtjs/mcp-toolkit",[218,273,274],{"class":228}," zod\n",[209,276,279],{"className":211,"code":277,"filename":278,"language":213,"meta":214,"style":214},"npm install @nuxtjs/mcp-toolkit zod\n","npm",[150,280,281],{"__ignoreMap":214},[218,282,283,285,288,290],{"class":220,"line":221},[218,284,278],{"class":224},[218,286,287],{"class":228}," install",[218,289,271],{"class":228},[218,291,274],{"class":228},[209,293,296],{"className":211,"code":294,"filename":295,"language":213,"meta":214,"style":214},"yarn add @nuxtjs/mcp-toolkit zod\n","yarn",[150,297,298],{"__ignoreMap":214},[218,299,300,302,304,306],{"class":220,"line":221},[218,301,295],{"class":224},[218,303,235],{"class":228},[218,305,271],{"class":228},[218,307,274],{"class":228},[209,309,312],{"className":211,"code":310,"filename":311,"language":213,"meta":214,"style":214},"bun add @nuxtjs/mcp-toolkit zod\n","bun",[150,313,314],{"__ignoreMap":214},[218,315,316,318,320,322],{"class":220,"line":221},[218,317,311],{"class":224},[218,319,235],{"class":228},[218,321,271],{"class":228},[218,323,274],{"class":228},[189,325,327],{"id":326},"add-to-nuxt-config","Add to Nuxt config",[138,329,330,331,253],{},"Add the module to your ",[150,332,333],{},"nuxt.config.ts",[209,335,339],{"className":336,"code":337,"filename":333,"language":338,"meta":214,"style":214},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtConfig({\n  modules: ['@nuxtjs/mcp-toolkit'],\n})\n","typescript",[150,340,341,362,387],{"__ignoreMap":214},[218,342,343,347,350,354,358],{"class":220,"line":221},[218,344,346],{"class":345},"s7zQu","export",[218,348,349],{"class":345}," default",[218,351,353],{"class":352},"s2Zo4"," defineNuxtConfig",[218,355,357],{"class":356},"sTEyZ","(",[218,359,361],{"class":360},"sMK4o","{\n",[218,363,365,369,371,374,377,379,381,384],{"class":220,"line":364},2,[218,366,368],{"class":367},"swJcz","  modules",[218,370,253],{"class":360},[218,372,373],{"class":356}," [",[218,375,376],{"class":360},"'",[218,378,248],{"class":228},[218,380,376],{"class":360},[218,382,383],{"class":356},"]",[218,385,386],{"class":360},",\n",[218,388,390,393],{"class":220,"line":389},3,[218,391,392],{"class":360},"}",[218,394,395],{"class":356},")\n",[189,397,399],{"id":398},"configure-the-module-optional","Configure the module (optional)",[138,401,402],{},"The module works with sensible defaults, but you can customize it:",[209,404,406],{"className":336,"code":405,"filename":333,"language":338,"meta":214,"style":214},"export default defineNuxtConfig({\n  modules: ['@nuxtjs/mcp-toolkit'],\n  mcp: {\n    name: 'My MCP Server',\n    route: '/mcp', // Default route for the MCP server\n    dir: 'mcp', // Base directory for MCP definitions (relative to server/)\n  },\n})\n",[150,407,408,420,438,448,466,488,508,514],{"__ignoreMap":214},[218,409,410,412,414,416,418],{"class":220,"line":221},[218,411,346],{"class":345},[218,413,349],{"class":345},[218,415,353],{"class":352},[218,417,357],{"class":356},[218,419,361],{"class":360},[218,421,422,424,426,428,430,432,434,436],{"class":220,"line":364},[218,423,368],{"class":367},[218,425,253],{"class":360},[218,427,373],{"class":356},[218,429,376],{"class":360},[218,431,248],{"class":228},[218,433,376],{"class":360},[218,435,383],{"class":356},[218,437,386],{"class":360},[218,439,440,443,445],{"class":220,"line":389},[218,441,442],{"class":367},"  mcp",[218,444,253],{"class":360},[218,446,447],{"class":360}," {\n",[218,449,451,454,456,459,462,464],{"class":220,"line":450},4,[218,452,453],{"class":367},"    name",[218,455,253],{"class":360},[218,457,458],{"class":360}," '",[218,460,461],{"class":228},"My MCP Server",[218,463,376],{"class":360},[218,465,386],{"class":360},[218,467,469,472,474,476,479,481,484],{"class":220,"line":468},5,[218,470,471],{"class":367},"    route",[218,473,253],{"class":360},[218,475,458],{"class":360},[218,477,478],{"class":228},"/mcp",[218,480,376],{"class":360},[218,482,483],{"class":360},",",[218,485,487],{"class":486},"sHwdD"," // Default route for the MCP server\n",[218,489,491,494,496,498,501,503,505],{"class":220,"line":490},6,[218,492,493],{"class":367},"    dir",[218,495,253],{"class":360},[218,497,458],{"class":360},[218,499,500],{"class":228},"mcp",[218,502,376],{"class":360},[218,504,483],{"class":360},[218,506,507],{"class":486}," // Base directory for MCP definitions (relative to server/)\n",[218,509,511],{"class":220,"line":510},7,[218,512,513],{"class":360},"  },\n",[218,515,517,519],{"class":220,"line":516},8,[218,518,392],{"class":360},[218,520,395],{"class":356},[133,522,524],{"id":523},"verify-installation","Verify Installation",[138,526,527],{},"After installation, you can verify everything is working by:",[529,530,531,546],"ol",{},[173,532,533,537,538,541,542,545],{},[534,535,536],"strong",{},"Checking the server route",": Start your Nuxt dev server and visit ",[150,539,540],{},"http://localhost:3000/mcp"," (or your custom route). You should be redirected to your configured ",[150,543,544],{},"browserRedirect"," URL.",[173,547,548,551],{},[534,549,550],{},"Creating a test tool",": Create a simple tool to test:",[209,553,556],{"className":336,"code":554,"filename":555,"language":338,"meta":214,"style":214},"import { z } from 'zod'\nimport { defineMcpTool } from '@nuxtjs/mcp-toolkit/server' // optional\n\nexport default defineMcpTool({\n  name: 'test',\n  description: 'A simple test tool',\n  inputSchema: {\n    message: z.string(),\n  },\n  handler: async ({ message }) => {\n    return {\n      content: [{\n        type: 'text',\n        text: `Test successful: ${message}`,\n      }],\n    }\n  },\n})\n","server/mcp/tools/test.ts",[150,557,558,582,605,611,623,639,655,664,684,689,716,724,736,753,778,788,794,799],{"__ignoreMap":214},[218,559,560,563,566,569,572,575,577,579],{"class":220,"line":221},[218,561,562],{"class":345},"import",[218,564,565],{"class":360}," {",[218,567,568],{"class":356}," z",[218,570,571],{"class":360}," }",[218,573,574],{"class":345}," from",[218,576,458],{"class":360},[218,578,252],{"class":228},[218,580,581],{"class":360},"'\n",[218,583,584,586,588,591,593,595,597,600,602],{"class":220,"line":364},[218,585,562],{"class":345},[218,587,565],{"class":360},[218,589,590],{"class":356}," defineMcpTool",[218,592,571],{"class":360},[218,594,574],{"class":345},[218,596,458],{"class":360},[218,598,599],{"class":228},"@nuxtjs/mcp-toolkit/server",[218,601,376],{"class":360},[218,603,604],{"class":486}," // optional\n",[218,606,607],{"class":220,"line":389},[218,608,610],{"emptyLinePlaceholder":609},true,"\n",[218,612,613,615,617,619,621],{"class":220,"line":450},[218,614,346],{"class":345},[218,616,349],{"class":345},[218,618,590],{"class":352},[218,620,357],{"class":356},[218,622,361],{"class":360},[218,624,625,628,630,632,635,637],{"class":220,"line":468},[218,626,627],{"class":367},"  name",[218,629,253],{"class":360},[218,631,458],{"class":360},[218,633,634],{"class":228},"test",[218,636,376],{"class":360},[218,638,386],{"class":360},[218,640,641,644,646,648,651,653],{"class":220,"line":490},[218,642,643],{"class":367},"  description",[218,645,253],{"class":360},[218,647,458],{"class":360},[218,649,650],{"class":228},"A simple test tool",[218,652,376],{"class":360},[218,654,386],{"class":360},[218,656,657,660,662],{"class":220,"line":510},[218,658,659],{"class":367},"  inputSchema",[218,661,253],{"class":360},[218,663,447],{"class":360},[218,665,666,669,671,673,676,679,682],{"class":220,"line":516},[218,667,668],{"class":367},"    message",[218,670,253],{"class":360},[218,672,568],{"class":356},[218,674,675],{"class":360},".",[218,677,678],{"class":352},"string",[218,680,681],{"class":356},"()",[218,683,386],{"class":360},[218,685,687],{"class":220,"line":686},9,[218,688,513],{"class":360},[218,690,692,695,697,701,704,708,711,714],{"class":220,"line":691},10,[218,693,694],{"class":352},"  handler",[218,696,253],{"class":360},[218,698,700],{"class":699},"spNyl"," async",[218,702,703],{"class":360}," ({",[218,705,707],{"class":706},"sHdIc"," message",[218,709,710],{"class":360}," })",[218,712,713],{"class":699}," =>",[218,715,447],{"class":360},[218,717,719,722],{"class":220,"line":718},11,[218,720,721],{"class":345},"    return",[218,723,447],{"class":360},[218,725,727,730,732,734],{"class":220,"line":726},12,[218,728,729],{"class":367},"      content",[218,731,253],{"class":360},[218,733,373],{"class":367},[218,735,361],{"class":360},[218,737,739,742,744,746,749,751],{"class":220,"line":738},13,[218,740,741],{"class":367},"        type",[218,743,253],{"class":360},[218,745,458],{"class":360},[218,747,748],{"class":228},"text",[218,750,376],{"class":360},[218,752,386],{"class":360},[218,754,756,759,761,764,767,770,773,776],{"class":220,"line":755},14,[218,757,758],{"class":367},"        text",[218,760,253],{"class":360},[218,762,763],{"class":360}," `",[218,765,766],{"class":228},"Test successful: ",[218,768,769],{"class":360},"${",[218,771,772],{"class":356},"message",[218,774,775],{"class":360},"}`",[218,777,386],{"class":360},[218,779,781,784,786],{"class":220,"line":780},15,[218,782,783],{"class":360},"      }",[218,785,383],{"class":367},[218,787,386],{"class":360},[218,789,791],{"class":220,"line":790},16,[218,792,793],{"class":360},"    }\n",[218,795,797],{"class":220,"line":796},17,[218,798,513],{"class":360},[218,800,802,804],{"class":220,"line":801},18,[218,803,392],{"class":360},[218,805,395],{"class":356},[529,807,808],{"start":389},[173,809,810,813,814,153,817,153,820,160,823,826],{},[534,811,812],{},"Checking auto-imports",": The ",[150,815,816],{},"defineMcpTool",[150,818,819],{},"defineMcpResource",[150,821,822],{},"defineMcpPrompt",[150,824,825],{},"defineMcpHandler"," functions should be auto-imported in your server files.",[133,828,830],{"id":829},"project-structure","Project Structure",[138,832,833],{},"After installation, your project structure should look like this:",[209,835,839],{"className":836,"code":838,"language":748},[837],"language-text","your-project/\n├── server/\n│   └── mcp/\n│       ├── tools/\n│       │   └── echo.ts          # Your tool definitions\n│       ├── resources/\n│       │   └── readme.ts       # Your resource definitions\n│       └── prompts/\n│           └── greeting.ts     # Your prompt definitions\n├── nuxt.config.ts\n└── package.json\n",[150,840,838],{"__ignoreMap":214},[133,842,844],{"id":843},"connect-your-ide","Connect Your IDE",[138,846,847],{},"Once your Nuxt app is running, connect your AI assistant to the MCP server:",[142,849],{"name":850,"url":540,"ide":851},"local-mcp","cursor",[142,853],{"name":850,"url":540,"ide":854},"vscode",[138,856,857,858,862],{},"For manual configuration and adding install buttons to your own documentation, see the ",[859,860,861],"a",{"href":31},"IDE Connection"," guide.",[133,864,866],{"id":865},"next-steps","Next Steps",[138,868,869],{},"Now that you have the module installed:",[170,871,872,877,882],{},[173,873,874,876],{},[859,875,20],{"href":21}," - Learn about all configuration options",[173,878,879,881],{},[859,880,30],{"href":31}," - Connect AI assistants to your MCP server and add install buttons to your documentation",[173,883,884,886],{},[859,885,49],{"href":50}," - Create your first tool",[888,889,890],"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 .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}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 .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 .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}",{"title":214,"searchDepth":364,"depth":364,"links":892},[893,894,895,900,901,902,903],{"id":135,"depth":364,"text":136},{"id":167,"depth":364,"text":168},{"id":184,"depth":364,"text":15,"children":896},[897,898,899],{"id":191,"depth":389,"text":192},{"id":326,"depth":389,"text":327},{"id":398,"depth":389,"text":399},{"id":523,"depth":364,"text":524},{"id":829,"depth":364,"text":830},{"id":843,"depth":364,"text":844},{"id":865,"depth":364,"text":866},"Install and configure the Nuxt MCP module in your project.","md",null,{},{"icon":18},{"title":910,"description":904},"Installation Guide","ijQ-1R1extWypeuRV2Wm0emvI6Ky8ut6Byc5Dq6t7yg",[913,915],{"title":10,"path":11,"stem":12,"description":914,"icon":13,"children":-1},"Learn about the Model Context Protocol and how this module makes it easy to create MCP servers in Nuxt.",{"title":20,"path":21,"stem":22,"description":916,"icon":23,"children":-1},"Configure the Nuxt MCP module to fit your needs.",1770467786712]