import{Bca as X,Jca as H,M7 as V,N7 as W,O7 as J,U8 as k,Z8 as N,l_ as x,o_ as A}from"./cli-0.5.12-g4wb8mj2.mjs";import"./cli-0.5.12-vp5smcs1.mjs";import"./cli-0.5.12-y2kq7fe8.mjs";import"./cli-0.5.12-7vxpqr5a.mjs";import"./cli-0.5.12-hvtcdcev.mjs";import"./cli-0.5.12-asbn3d19.mjs";import"./cli-0.5.12-k1crwtdc.mjs";import"./cli-0.5.12-2jxq8gnm.mjs";import"./cli-0.5.12-p5ps8gf0.mjs";import"./cli-0.5.12-hp0508v9.mjs";import{Aga as b,Gga as y}from"./cli-0.5.12-tfdwzg37.mjs";import"./cli-0.5.12-60w1a0bs.mjs";import"./cli-0.5.12-c8f4daey.mjs";import"./cli-0.5.12-0qasc0ef.mjs";import"./cli-0.5.12-f8850v2j.mjs";import"./cli-0.5.12-xzeb7mtb.mjs";A();y();N();H();J();import{readdir as L,readFile as U,stat as Z}from"fs/promises";import{homedir as _}from"os";import{join as $}from"path";async function F(){let B=W();if(!V.includes(B))throw Error(`Unsupported platform: ${B} - Claude Desktop integration only works on macOS and WSL.`);if(B==="macos")return $(_(),"Library","Application Support","Claude","claude_desktop_config.json");let K=process.env.USERPROFILE?process.env.USERPROFILE.replace(/\\/g,"/"):null;if(K){let q=`/mnt/c${K.replace(/^[A-Z]:/,"")}/AppData/Roaming/Claude/claude_desktop_config.json`;try{return await Z(q),q}catch{}}try{try{let q=await L("/mnt/c/Users",{withFileTypes:!0});for(let z of q){if(z.name==="Public"||z.name==="Default"||z.name==="Default User"||z.name==="All Users")continue;let I=$("/mnt/c/Users",z.name,"AppData","Roaming","Claude","claude_desktop_config.json");try{return await Z(I),I}catch{}}}catch{}}catch(G){X(G)}throw Error("Could not find Claude Desktop config file in Windows. Make sure Claude Desktop is installed on Windows.")}async function h(){if(!V.includes(W()))throw Error("Unsupported platform - Claude Desktop integration only works on macOS and WSL.");try{let B=await F(),K;try{K=await U(B,{encoding:"utf8"})}catch(I){if(b(I)==="ENOENT")return{};throw I}let G=k(K);if(!G||typeof G!=="object")return{};let q=G.mcpServers;if(!q||typeof q!=="object")return{};let z={};for(let[I,Q]of Object.entries(q)){if(!Q||typeof Q!=="object")continue;let Y=x().safeParse(Q);if(Y.success)z[I]=Y.data}return z}catch(B){return X(B),{}}}export{h as readClaudeDesktopMcpServers,F as getClaudeDesktopConfigPath};
