[{"data":1,"prerenderedAt":361},["ShallowReactive",2],{"navigation_docs":3,"-api-mcp-server":72,"-api-mcp-server-surround":358},[4,30,51],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":6},"Getting Started",false,"/getting-started","1.getting-started",[10,15,20,25],{"title":11,"path":12,"stem":13,"icon":14},"Introduction","/getting-started/introduction","1.getting-started/2.introduction","i-lucide-house",{"title":16,"path":17,"stem":18,"icon":19},"Installation","/getting-started/installation","1.getting-started/3.installation","i-lucide-download",{"title":21,"path":22,"stem":23,"icon":24},"Configuration","/getting-started/configuration","1.getting-started/4.configuration","i-lucide-settings",{"title":26,"path":27,"stem":28,"icon":29},"Supported Formats","/getting-started/supported-formats","1.getting-started/5.supported-formats","i-lucide-file-code",{"title":31,"path":32,"stem":33,"children":34,"icon":36},"Reporters","/reporters","2.reporters/1.index",[35,37,41,46],{"title":31,"path":32,"stem":33,"icon":36},"i-lucide-file-chart-column",{"title":38,"path":39,"stem":40,"icon":29},"HTML Reporter","/reporters/html","2.reporters/2.html",{"title":42,"path":43,"stem":44,"icon":45},"JSON Reporter","/reporters/json","2.reporters/3.json","i-lucide-braces",{"title":47,"path":48,"stem":49,"icon":50},"Badge Reporter","/reporters/badge","2.reporters/4.badge","i-lucide-award",{"title":52,"path":53,"stem":54,"children":55,"icon":57},"API","/api","3.api/1.index",[56,58,63,68],{"title":52,"path":53,"stem":54,"icon":57},"i-lucide-code",{"title":59,"path":60,"stem":61,"icon":62},"Core Package","/api/core","3.api/2.core","i-lucide-box",{"title":64,"path":65,"stem":66,"icon":67},"Server API","/api/server","3.api/3.server","i-lucide-server",{"title":69,"path":70,"stem":71,"icon":62},"MCP Server","/api/mcp-server","3.api/4.mcp-server",{"id":73,"title":69,"body":74,"description":349,"extension":350,"links":351,"meta":352,"navigation":353,"path":70,"seo":354,"stem":71,"__hash__":357},"docs/3.api/4.mcp-server.md",{"type":75,"value":76,"toc":339},"minimark",[77,82,98,102,105,111,117,123,148,153,156,161,166,169,173,177,187,303,313,320,324,327,335],[78,79,81],"h2",{"id":80},"overview","Overview",[83,84,85,89,90,97],"p",{},[86,87,88],"code",{},"jscpd-server"," implements the ",[91,92,96],"a",{"href":93,"rel":94},"https://modelcontextprotocol.io/",[95],"nofollow","Model Context Protocol (MCP)",", allowing AI assistants like Claude Desktop to interact with the duplication detection capabilities directly.",[78,99,101],{"id":100},"capabilities","Capabilities",[83,103,104],{},"The MCP server provides the following tools:",[106,107,109],"h3",{"id":108},"check_duplication",[86,110,108],{},[83,112,113,114,116],{},"Checks a provided code snippet for duplications against the codebase currently being served by ",[86,115,88],{},".",[83,118,119],{},[120,121,122],"strong",{},"Arguments:",[124,125,126,132,138],"ul",{},[127,128,129,131],"li",{},[86,130,86],{}," (string, required): The source code snippet to analyze.",[127,133,134,137],{},[86,135,136],{},"format"," (string, required): The format of the code (e.g., \"javascript\", \"typescript\").",[127,139,140,143,144,147],{},[86,141,142],{},"recheck"," (boolean, optional): If ",[86,145,146],{},"true",", triggers a re-scan of the current directory before checking the snippet.",[106,149,151],{"id":150},"get_statistics",[86,152,150],{},[83,154,155],{},"Retrieves the overall project duplication statistics.",[83,157,158,160],{},[120,159,122],{}," None",[106,162,164],{"id":163},"check_current_directory",[86,165,163],{},[83,167,168],{},"Triggers a re-scan of the current working directory for duplications and returns the updated statistics.",[83,170,171,160],{},[120,172,122],{},[78,174,176],{"id":175},"usage-with-claude-desktop","Usage with Claude Desktop",[83,178,179,180,182,183,186],{},"To use ",[86,181,88],{}," with Claude Desktop, add the following configuration to your ",[86,184,185],{},"claude_desktop_config.json",":",[188,189,194],"pre",{"className":190,"code":191,"language":192,"meta":193,"style":193},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"mcpServers\": {\n    \"jscpd\": {\n      \"type\": \"streamable-http\",\n      \"url\": \"http://localhost:3000/mcp\"\n    }\n  }\n}\n","json","",[86,195,196,205,223,239,265,285,291,297],{"__ignoreMap":193},[197,198,201],"span",{"class":199,"line":200},"line",1,[197,202,204],{"class":203},"sMK4o","{\n",[197,206,208,211,215,218,220],{"class":199,"line":207},2,[197,209,210],{"class":203},"  \"",[197,212,214],{"class":213},"spNyl","mcpServers",[197,216,217],{"class":203},"\"",[197,219,186],{"class":203},[197,221,222],{"class":203}," {\n",[197,224,226,229,233,235,237],{"class":199,"line":225},3,[197,227,228],{"class":203},"    \"",[197,230,232],{"class":231},"sBMFI","jscpd",[197,234,217],{"class":203},[197,236,186],{"class":203},[197,238,222],{"class":203},[197,240,242,245,249,251,253,256,260,262],{"class":199,"line":241},4,[197,243,244],{"class":203},"      \"",[197,246,248],{"class":247},"sbssI","type",[197,250,217],{"class":203},[197,252,186],{"class":203},[197,254,255],{"class":203}," \"",[197,257,259],{"class":258},"sfazB","streamable-http",[197,261,217],{"class":203},[197,263,264],{"class":203},",\n",[197,266,268,270,273,275,277,279,282],{"class":199,"line":267},5,[197,269,244],{"class":203},[197,271,272],{"class":247},"url",[197,274,217],{"class":203},[197,276,186],{"class":203},[197,278,255],{"class":203},[197,280,281],{"class":258},"http://localhost:3000/mcp",[197,283,284],{"class":203},"\"\n",[197,286,288],{"class":199,"line":287},6,[197,289,290],{"class":203},"    }\n",[197,292,294],{"class":199,"line":293},7,[197,295,296],{"class":203},"  }\n",[197,298,300],{"class":199,"line":299},8,[197,301,302],{"class":203},"}\n",[83,304,305,306,308,309,312],{},"Ensure ",[86,307,88],{}," is running (e.g., ",[86,310,311],{},"npx jscpd-server . --port 3000",") before starting Claude Desktop.",[83,314,315,316,319],{},"Replace ",[86,317,318],{},"http://localhost:3000"," with the actual URL where your server is running.",[78,321,323],{"id":322},"resources","Resources",[83,325,326],{},"The server exposes the following resources:",[124,328,329],{},[127,330,331,334],{},[86,332,333],{},"jscpd://statistics",": Returns the current duplication statistics in JSON format.",[336,337,338],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}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);}",{"title":193,"searchDepth":207,"depth":207,"links":340},[341,342,347,348],{"id":80,"depth":207,"text":81},{"id":100,"depth":207,"text":101,"children":343},[344,345,346],{"id":108,"depth":225,"text":108},{"id":150,"depth":225,"text":150},{"id":163,"depth":225,"text":163},{"id":175,"depth":207,"text":176},{"id":322,"depth":207,"text":323},"Use jscpd-server as a Model Context Protocol (MCP) server for AI assistants.","md",null,{},{"icon":62},{"title":355,"description":356},"jscpd MCP Server","Integrate jscpd with AI assistants via Model Context Protocol (MCP).","81wQMS5gKw6roMm_GC4jOAmrCki6AbPrXsuZL9mSjG4",[359,351],{"title":64,"path":65,"stem":66,"description":360,"icon":67,"children":-1},"Use jscpd-server for remote duplication detection.",1772457399361]