[{"data":1,"prerenderedAt":774},["ShallowReactive",2],{"navigation_docs":3,"-examples-file-operations":139,"-examples-file-operations-surround":769},[4,40,65,110],{"title":5,"path":6,"stem":7,"children":8,"page":39},"入门指南","\u002Fgetting-started","1.getting-started",[9,14,19,24,29,34],{"title":10,"path":11,"stem":12,"icon":13},"简介","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction","i-lucide-book-open",{"title":15,"path":16,"stem":17,"icon":18},"安装","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F2.installation","i-lucide-download",{"title":20,"path":21,"stem":22,"icon":23},"配置","\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},"连接","\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},"核心概念","\u002Fcore-concepts","2.core-concepts",[45,50,55,60],{"title":46,"path":47,"stem":48,"icon":49},"工具","\u002Fcore-concepts\u002Ftools","2.core-concepts\u002F2.tools","i-lucide-wrench",{"title":51,"path":52,"stem":53,"icon":54},"资源","\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},"进阶主题","\u002Fadvanced","3.advanced",[70,75,80,85,90,95,100,105],{"title":71,"path":72,"stem":73,"icon":74},"自定义路径","\u002Fadvanced\u002Fcustom-paths","3.advanced\u002F1.custom-paths","i-lucide-folder",{"title":76,"path":77,"stem":78,"icon":79},"中间件","\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},"钩子","\u002Fadvanced\u002Fhooks","3.advanced\u002F4.hooks","i-lucide-webhook",{"title":91,"path":92,"stem":93,"icon":94},"MCP 评估","\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},"动态定义","\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},"示例","\u002Fexamples","4.examples",[115,120,125,130,135],{"title":116,"path":117,"stem":118,"icon":119},"身份验证","\u002Fexamples\u002Fauthentication","4.examples\u002F1.authentication","i-lucide-shield-check",{"title":121,"path":122,"stem":123,"icon":124},"API 集成","\u002Fexamples\u002Fapi-integration","4.examples\u002F2.api-integration","i-lucide-globe",{"title":126,"path":127,"stem":128,"icon":129},"常见模式","\u002Fexamples\u002Fcommon-patterns","4.examples\u002F3.common-patterns","i-lucide-lightbulb",{"title":131,"path":132,"stem":133,"icon":134},"文件操作","\u002Fexamples\u002Ffile-operations","4.examples\u002F4.file-operations","i-lucide-file",{"title":136,"path":137,"stem":138,"icon":59},"提示词示例","\u002Fexamples\u002Fprompt-examples","4.examples\u002F5.prompt-examples",{"id":140,"title":131,"body":141,"description":762,"extension":763,"links":764,"meta":765,"navigation":766,"path":132,"seo":767,"stem":133,"__hash__":768},"docs\u002F4.examples\u002F4.file-operations.md",{"type":142,"value":143,"toc":757},"minimark",[144,148,152,155,158,730,733,753],[145,146,147],"h2",{"id":147},"概述",[149,150,151],"p",{},"本页面演示了使用 MCP 资源的简单文件操作模式。",[145,153,154],{"id":154},"读取文件资源",[149,156,157],{},"简单的文件读取资源：",[159,160,166],"pre",{"className":161,"code":162,"filename":163,"language":164,"meta":165,"style":165},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { readFile } from 'node:fs\u002Fpromises'\nimport { fileURLToPath } from 'node:url'\nimport { defineMcpResource } from '@nuxtjs\u002Fmcp-toolkit\u002Fserver'\n\nexport default defineMcpResource({\n  name: 'readme',\n  title: 'README',\n  uri: 'file:\u002F\u002F\u002FREADME.md',\n  metadata: {\n    description: 'Project README file',\n    mimeType: 'text\u002Fmarkdown',\n  },\n  handler: async (uri: URL) => {\n    try {\n      const filePath = fileURLToPath(uri)\n      const content = await readFile(filePath, 'utf-8')\n\n      return {\n        contents: [{\n          uri: uri.toString(),\n          mimeType: 'text\u002Fmarkdown',\n          text: content,\n        }],\n      }\n    }\n    catch (error) {\n      return {\n        contents: [{\n          uri: uri.toString(),\n          mimeType: 'text\u002Fplain',\n          text: `Error reading file: ${error instanceof Error ? error.message : String(error)}`,\n        }],\n        isError: true,\n      }\n    }\n  },\n})\n","server\u002Fmcp\u002Fresources\u002Freadme.ts","typescript","",[167,168,169,202,223,244,251,269,290,307,324,335,352,369,375,408,416,437,469,474,482,495,517,533,545,556,562,568,584,591,602,619,635,684,693,707,712,717,722],"code",{"__ignoreMap":165},[170,171,174,178,182,186,189,192,195,199],"span",{"class":172,"line":173},"line",1,[170,175,177],{"class":176},"s7zQu","import",[170,179,181],{"class":180},"sMK4o"," {",[170,183,185],{"class":184},"sTEyZ"," readFile",[170,187,188],{"class":180}," }",[170,190,191],{"class":176}," from",[170,193,194],{"class":180}," '",[170,196,198],{"class":197},"sfazB","node:fs\u002Fpromises",[170,200,201],{"class":180},"'\n",[170,203,205,207,209,212,214,216,218,221],{"class":172,"line":204},2,[170,206,177],{"class":176},[170,208,181],{"class":180},[170,210,211],{"class":184}," fileURLToPath",[170,213,188],{"class":180},[170,215,191],{"class":176},[170,217,194],{"class":180},[170,219,220],{"class":197},"node:url",[170,222,201],{"class":180},[170,224,226,228,230,233,235,237,239,242],{"class":172,"line":225},3,[170,227,177],{"class":176},[170,229,181],{"class":180},[170,231,232],{"class":184}," defineMcpResource",[170,234,188],{"class":180},[170,236,191],{"class":176},[170,238,194],{"class":180},[170,240,241],{"class":197},"@nuxtjs\u002Fmcp-toolkit\u002Fserver",[170,243,201],{"class":180},[170,245,247],{"class":172,"line":246},4,[170,248,250],{"emptyLinePlaceholder":249},true,"\n",[170,252,254,257,260,263,266],{"class":172,"line":253},5,[170,255,256],{"class":176},"export",[170,258,259],{"class":176}," default",[170,261,232],{"class":262},"s2Zo4",[170,264,265],{"class":184},"(",[170,267,268],{"class":180},"{\n",[170,270,272,276,279,281,284,287],{"class":172,"line":271},6,[170,273,275],{"class":274},"swJcz","  name",[170,277,278],{"class":180},":",[170,280,194],{"class":180},[170,282,283],{"class":197},"readme",[170,285,286],{"class":180},"'",[170,288,289],{"class":180},",\n",[170,291,293,296,298,300,303,305],{"class":172,"line":292},7,[170,294,295],{"class":274},"  title",[170,297,278],{"class":180},[170,299,194],{"class":180},[170,301,302],{"class":197},"README",[170,304,286],{"class":180},[170,306,289],{"class":180},[170,308,310,313,315,317,320,322],{"class":172,"line":309},8,[170,311,312],{"class":274},"  uri",[170,314,278],{"class":180},[170,316,194],{"class":180},[170,318,319],{"class":197},"file:\u002F\u002F\u002FREADME.md",[170,321,286],{"class":180},[170,323,289],{"class":180},[170,325,327,330,332],{"class":172,"line":326},9,[170,328,329],{"class":274},"  metadata",[170,331,278],{"class":180},[170,333,334],{"class":180}," {\n",[170,336,338,341,343,345,348,350],{"class":172,"line":337},10,[170,339,340],{"class":274},"    description",[170,342,278],{"class":180},[170,344,194],{"class":180},[170,346,347],{"class":197},"Project README file",[170,349,286],{"class":180},[170,351,289],{"class":180},[170,353,355,358,360,362,365,367],{"class":172,"line":354},11,[170,356,357],{"class":274},"    mimeType",[170,359,278],{"class":180},[170,361,194],{"class":180},[170,363,364],{"class":197},"text\u002Fmarkdown",[170,366,286],{"class":180},[170,368,289],{"class":180},[170,370,372],{"class":172,"line":371},12,[170,373,374],{"class":180},"  },\n",[170,376,378,381,383,387,390,394,396,400,403,406],{"class":172,"line":377},13,[170,379,380],{"class":262},"  handler",[170,382,278],{"class":180},[170,384,386],{"class":385},"spNyl"," async",[170,388,389],{"class":180}," (",[170,391,393],{"class":392},"sHdIc","uri",[170,395,278],{"class":180},[170,397,399],{"class":398},"sBMFI"," URL",[170,401,402],{"class":180},")",[170,404,405],{"class":385}," =>",[170,407,334],{"class":180},[170,409,411,414],{"class":172,"line":410},14,[170,412,413],{"class":176},"    try",[170,415,334],{"class":180},[170,417,419,422,425,428,430,432,434],{"class":172,"line":418},15,[170,420,421],{"class":385},"      const",[170,423,424],{"class":184}," filePath",[170,426,427],{"class":180}," =",[170,429,211],{"class":262},[170,431,265],{"class":274},[170,433,393],{"class":184},[170,435,436],{"class":274},")\n",[170,438,440,442,445,447,450,452,454,457,460,462,465,467],{"class":172,"line":439},16,[170,441,421],{"class":385},[170,443,444],{"class":184}," content",[170,446,427],{"class":180},[170,448,449],{"class":176}," await",[170,451,185],{"class":262},[170,453,265],{"class":274},[170,455,456],{"class":184},"filePath",[170,458,459],{"class":180},",",[170,461,194],{"class":180},[170,463,464],{"class":197},"utf-8",[170,466,286],{"class":180},[170,468,436],{"class":274},[170,470,472],{"class":172,"line":471},17,[170,473,250],{"emptyLinePlaceholder":249},[170,475,477,480],{"class":172,"line":476},18,[170,478,479],{"class":176},"      return",[170,481,334],{"class":180},[170,483,485,488,490,493],{"class":172,"line":484},19,[170,486,487],{"class":274},"        contents",[170,489,278],{"class":180},[170,491,492],{"class":274}," [",[170,494,268],{"class":180},[170,496,498,501,503,506,509,512,515],{"class":172,"line":497},20,[170,499,500],{"class":274},"          uri",[170,502,278],{"class":180},[170,504,505],{"class":184}," uri",[170,507,508],{"class":180},".",[170,510,511],{"class":262},"toString",[170,513,514],{"class":274},"()",[170,516,289],{"class":180},[170,518,520,523,525,527,529,531],{"class":172,"line":519},21,[170,521,522],{"class":274},"          mimeType",[170,524,278],{"class":180},[170,526,194],{"class":180},[170,528,364],{"class":197},[170,530,286],{"class":180},[170,532,289],{"class":180},[170,534,536,539,541,543],{"class":172,"line":535},22,[170,537,538],{"class":274},"          text",[170,540,278],{"class":180},[170,542,444],{"class":184},[170,544,289],{"class":180},[170,546,548,551,554],{"class":172,"line":547},23,[170,549,550],{"class":180},"        }",[170,552,553],{"class":274},"]",[170,555,289],{"class":180},[170,557,559],{"class":172,"line":558},24,[170,560,561],{"class":180},"      }\n",[170,563,565],{"class":172,"line":564},25,[170,566,567],{"class":180},"    }\n",[170,569,571,574,576,579,582],{"class":172,"line":570},26,[170,572,573],{"class":176},"    catch",[170,575,389],{"class":274},[170,577,578],{"class":184},"error",[170,580,581],{"class":274},") ",[170,583,268],{"class":180},[170,585,587,589],{"class":172,"line":586},27,[170,588,479],{"class":176},[170,590,334],{"class":180},[170,592,594,596,598,600],{"class":172,"line":593},28,[170,595,487],{"class":274},[170,597,278],{"class":180},[170,599,492],{"class":274},[170,601,268],{"class":180},[170,603,605,607,609,611,613,615,617],{"class":172,"line":604},29,[170,606,500],{"class":274},[170,608,278],{"class":180},[170,610,505],{"class":184},[170,612,508],{"class":180},[170,614,511],{"class":262},[170,616,514],{"class":274},[170,618,289],{"class":180},[170,620,622,624,626,628,631,633],{"class":172,"line":621},30,[170,623,522],{"class":274},[170,625,278],{"class":180},[170,627,194],{"class":180},[170,629,630],{"class":197},"text\u002Fplain",[170,632,286],{"class":180},[170,634,289],{"class":180},[170,636,638,640,642,645,648,651,654,657,660,663,666,668,671,673,676,679,682],{"class":172,"line":637},31,[170,639,538],{"class":274},[170,641,278],{"class":180},[170,643,644],{"class":180}," `",[170,646,647],{"class":197},"Error reading file: ",[170,649,650],{"class":180},"${",[170,652,653],{"class":184},"error ",[170,655,656],{"class":180},"instanceof",[170,658,659],{"class":398}," Error",[170,661,662],{"class":180}," ?",[170,664,665],{"class":184}," error",[170,667,508],{"class":180},[170,669,670],{"class":184},"message ",[170,672,278],{"class":180},[170,674,675],{"class":262}," String",[170,677,678],{"class":184},"(error)",[170,680,681],{"class":180},"}`",[170,683,289],{"class":180},[170,685,687,689,691],{"class":172,"line":686},32,[170,688,550],{"class":180},[170,690,553],{"class":274},[170,692,289],{"class":180},[170,694,696,699,701,705],{"class":172,"line":695},33,[170,697,698],{"class":274},"        isError",[170,700,278],{"class":180},[170,702,704],{"class":703},"sfNiH"," true",[170,706,289],{"class":180},[170,708,710],{"class":172,"line":709},34,[170,711,561],{"class":180},[170,713,715],{"class":172,"line":714},35,[170,716,567],{"class":180},[170,718,720],{"class":172,"line":719},36,[170,721,374],{"class":180},[170,723,725,728],{"class":172,"line":724},37,[170,726,727],{"class":180},"}",[170,729,436],{"class":184},[145,731,732],{"id":732},"后续步骤",[734,735,736,743,748],"ul",{},[737,738,739,742],"li",{},[740,741,121],"a",{"href":122}," - API 集成示例",[737,744,745,747],{},[740,746,126],{"href":127}," - 更多通用示例",[737,749,750,752],{},[740,751,51],{"href":52}," - 了解更多关于资源的信息",[754,755,756],"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 .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}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);}",{"title":165,"searchDepth":204,"depth":204,"links":758},[759,760,761],{"id":147,"depth":204,"text":147},{"id":154,"depth":204,"text":154},{"id":732,"depth":204,"text":732},"使用 MCP 资源进行文件操作的简单示例。","md",null,{},{"icon":134},{"title":131,"description":762},"LXz5VS5KM2ZTFnSFzz4x9WFiuUExvCAiukCE5USM1E8",[770,772],{"title":126,"path":127,"stem":128,"description":771,"icon":129,"children":-1},"使用 Nuxt MCP 模块的真实示例和模式。",{"title":136,"path":137,"stem":138,"description":773,"icon":59,"children":-1},"适用于 AI 助手的高级提示词模式及实际用例。",1775615723509]