Edit: /tmp/tsx-0/17887-edede25eedee0ec904e243d2d51cb649cf2e1184 (38750B)
{"code":"__filename=\"/opt/canhelp/node_modules/better-auth/dist/plugins/mcp/index.mjs\";(()=>{\nvar __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf;var __hasOwnProp=Object.prototype.hasOwnProperty;var __name=(target,value)=>__defProp(target,\"name\",{value,configurable:true});var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:true})};var __copyProps=(to,from,except,desc)=>{if(from&&typeof from===\"object\"||typeof from===\"function\"){for(let key of __getOwnPropNames(from))if(!__hasOwnProp.call(to,key)&&key!==except)__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable})}return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,\"default\",{value:mod,enumerable:true}):target,mod));var __toCommonJS=mod=>__copyProps(__defProp({},\"__esModule\",{value:true}),mod);var mcp_exports={};__export(mcp_exports,{getMCPProtectedResourceMetadata:()=>getMCPProtectedResourceMetadata,getMCPProviderMetadata:()=>getMCPProviderMetadata,mcp:()=>mcp,oAuthDiscoveryMetadata:()=>oAuthDiscoveryMetadata,oAuthProtectedResourceMetadata:()=>oAuthProtectedResourceMetadata,withMcpAuth:()=>withMcpAuth});module.exports=__toCommonJS(mcp_exports);var import_url=require(\"../../utils/url.mjs\");var import_random=require(\"../../crypto/random.mjs\");var import_crypto=require(\"../../crypto/index.mjs\");var import_cookie_utils=require(\"../../cookies/cookie-utils.mjs\");var import_cookies=require(\"../../cookies/index.mjs\");var import_session=require(\"../../api/routes/session.mjs\");var import_hide_metadata=require(\"../../utils/hide-metadata.mjs\");var import_utils=require(\"../../utils/index.mjs\");var import_api=require(\"../../api/index.mjs\");var import_prompt=require(\"../oidc-provider/utils/prompt.mjs\");var import_schema=require(\"../oidc-provider/schema.mjs\");var import_oidc_provider=require(\"../oidc-provider/index.mjs\");var import_authorize=require(\"./authorize.mjs\");var import_env=require(\"@better-auth/core/env\");var import_json=require(\"@better-auth/core/utils/json\");var import_api2=require(\"@better-auth/core/api\");var z=__toESM(require(\"zod\"));var import_base64=require(\"@better-auth/utils/base64\");var import_hash=require(\"@better-auth/utils/hash\");var import_utils2=require(\"@better-auth/utils\");var import_jose=require(\"jose\");const getMCPProviderMetadata=__name((ctx,options)=>{const issuer=typeof ctx.context.options.baseURL===\"string\"?ctx.context.options.baseURL:\"\";const baseURL=ctx.context.baseURL;if(!issuer||!baseURL)throw new import_api.APIError(\"INTERNAL_SERVER_ERROR\",{error:\"invalid_issuer\",error_description:\"issuer or baseURL is not set. If you're the app developer, please make sure to set the `baseURL` in your auth config.\"});return{issuer,authorization_endpoint:`${baseURL}/mcp/authorize`,token_endpoint:`${baseURL}/mcp/token`,userinfo_endpoint:`${baseURL}/mcp/userinfo`,jwks_uri:`${baseURL}/mcp/jwks`,registration_endpoint:`${baseURL}/mcp/register`,scopes_supported:[\"openid\",\"profile\",\"email\",\"offline_access\"],response_types_supported:[\"code\"],response_modes_supported:[\"query\"],grant_types_supported:[\"authorization_code\",\"refresh_token\"],acr_values_supported:[\"urn:mace:incommon:iap:silver\",\"urn:mace:incommon:iap:bronze\"],subject_types_supported:[\"public\"],id_token_signing_alg_values_supported:[\"RS256\",\"none\"],token_endpoint_auth_methods_supported:[\"client_secret_basic\",\"client_secret_post\",\"none\"],code_challenge_methods_supported:[\"S256\"],claims_supported:[\"sub\",\"iss\",\"aud\",\"exp\",\"nbf\",\"iat\",\"jti\",\"email\",\"email_verified\",\"name\"],...options?.metadata}},\"getMCPProviderMetadata\");const getMCPProtectedResourceMetadata=__name((ctx,options)=>{const baseURL=ctx.context.baseURL;const origin=new URL(baseURL).origin;return{resource:options?.resource??origin,authorization_servers:[origin],jwks_uri:options?.oidcConfig?.metadata?.jwks_uri??`${baseURL}/mcp/jwks`,scopes_supported:options?.oidcConfig?.metadata?.scopes_supported??[\"openid\",\"profile\",\"email\",\"offline_access\"],bearer_methods_supported:[\"header\"],resource_signing_alg_values_supported:[\"RS256\",\"none\"]}},\"getMCPProtectedResourceMetadata\");const registerMcpClientBodySchema=z.object({redirect_uris:z.array(z.string()),token_endpoint_auth_method:z.enum([\"none\",\"client_secret_basic\",\"client_secret_post\"]).default(\"client_secret_basic\").optional(),grant_types:z.array(z.enum([\"authorization_code\",\"implicit\",\"password\",\"client_credentials\",\"refresh_token\",\"urn:ietf:params:oauth:grant-type:jwt-bearer\",\"urn:ietf:params:oauth:grant-type:saml2-bearer\"])).default([\"authorization_code\"]).optional(),response_types:z.array(z.enum([\"code\",\"token\"])).default([\"code\"]).optional(),client_name:z.string().optional(),client_uri:z.string().optional(),logo_uri:z.string().optional(),scope:z.string().optional(),contacts:z.array(z.string()).optional(),tos_uri:z.string().optional(),policy_uri:z.string().optional(),jwks_uri:z.string().optional(),jwks:z.record(z.string(),z.any()).optional(),metadata:z.record(z.any(),z.any()).optional(),software_id:z.string().optional(),software_version:z.string().optional(),software_statement:z.string().optional()});const mcpOAuthTokenBodySchema=z.record(z.any(),z.any());const mcp=__name(options=>{const opts={codeExpiresIn:600,defaultScope:\"openid\",accessTokenExpiresIn:3600,refreshTokenExpiresIn:604800,allowPlainCodeChallengeMethod:true,...options.oidcConfig,loginPage:options.loginPage,scopes:[\"openid\",\"profile\",\"email\",\"offline_access\",...options.oidcConfig?.scopes||[]]};const modelName={oauthClient:\"oauthApplication\",oauthAccessToken:\"oauthAccessToken\",oauthConsent:\"oauthConsent\"};const provider=(0,import_oidc_provider.oidcProvider)(opts);return{id:\"mcp\",hooks:{after:[{matcher(){return true},handler:(0,import_api2.createAuthMiddleware)(async ctx=>{const cookie=await ctx.getSignedCookie(\"oidc_login_prompt\",ctx.context.secret);const cookieName=ctx.context.authCookies.sessionToken.name;const parsedSetCookieHeader=(0,import_cookie_utils.parseSetCookieHeader)(ctx.context.responseHeaders?.get(\"set-cookie\")||\"\");const hasSessionToken=parsedSetCookieHeader.has(cookieName);if(!cookie||!hasSessionToken)return;(0,import_cookies.expireCookie)(ctx,{name:\"oidc_login_prompt\",attributes:{path:\"/\"}});const sessionToken=parsedSetCookieHeader.get(cookieName)?.value?.split(\".\")[0];if(!sessionToken)return;const session=await ctx.context.internalAdapter.findSession(sessionToken)||ctx.context.newSession;if(!session)return;const parsedCookie=(0,import_json.safeJSONParse)(cookie);if(!parsedCookie)return;ctx.query=parsedCookie;const promptSet=(0,import_prompt.parsePrompt)(String(ctx.query?.prompt));if(promptSet.has(\"login\")){const newPromptSet=new Set(promptSet);newPromptSet.delete(\"login\");ctx.query={...ctx.query,prompt:Array.from(newPromptSet).join(\" \")}}ctx.context.session=session;return await(0,import_authorize.authorizeMCPOAuth)(ctx,opts)})}]},endpoints:{oAuthConsent:provider.endpoints.oAuthConsent,getMcpOAuthConfig:(0,import_api2.createAuthEndpoint)(\"/.well-known/oauth-authorization-server\",{method:\"GET\",metadata:import_hide_metadata.HIDE_METADATA},async c=>{try{const metadata=getMCPProviderMetadata(c,options);return c.json(metadata)}catch(e){console.log(e);return c.json(null)}}),getMCPProtectedResource:(0,import_api2.createAuthEndpoint)(\"/.well-known/oauth-protected-resource\",{method:\"GET\",metadata:import_hide_metadata.HIDE_METADATA},async c=>{const metadata=getMCPProtectedResourceMetadata(c,options);return c.json(metadata)}),mcpOAuthAuthorize:(0,import_api2.createAuthEndpoint)(\"/mcp/authorize\",{method:\"GET\",query:z.record(z.string(),z.any()),metadata:{openapi:{description:\"Authorize an OAuth2 request using MCP\",responses:{\"200\":{description:\"Authorization response generated successfully\",content:{\"application/json\":{schema:{type:\"object\",additionalProperties:true,description:\"Authorization response, contents depend on the authorize function implementation\"}}}}}}}},async ctx=>{return(0,import_authorize.authorizeMCPOAuth)(ctx,opts)}),mcpOAuthToken:(0,import_api2.createAuthEndpoint)(\"/mcp/token\",{method:\"POST\",body:mcpOAuthTokenBodySchema,metadata:{...import_hide_metadata.HIDE_METADATA,allowedMediaTypes:[\"application/x-www-form-urlencoded\",\"application/json\"]}},async ctx=>{ctx.setHeader(\"Access-Control-Allow-Origin\",\"*\");ctx.setHeader(\"Access-Control-Allow-Methods\",\"POST, OPTIONS\");ctx.setHeader(\"Access-Control-Allow-Headers\",\"Content-Type, Authorization\");ctx.setHeader(\"Access-Control-Max-Age\",\"86400\");let{body}=ctx;if(!body)throw ctx.error(\"BAD_REQUEST\",{error_description:\"request body not found\",error:\"invalid_request\"});if(body instanceof FormData)body=Object.fromEntries(body.entries());if(!(body instanceof Object))throw new import_api.APIError(\"BAD_REQUEST\",{error_description:\"request body is not an object\",error:\"invalid_request\"});let{client_id,client_secret}=body;const authorization=ctx.request?.headers.get(\"authorization\")||null;if(authorization&&!client_id&&!client_secret&&authorization.startsWith(\"Basic \"))try{const encoded=authorization.replace(\"Basic \",\"\");const decoded=new TextDecoder().decode(import_base64.base64.decode(encoded));if(!decoded.includes(\":\"))throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid authorization header format\",error:\"invalid_client\"});const[id,secret]=decoded.split(\":\");if(!id||!secret)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid authorization header format\",error:\"invalid_client\"});client_id=id;client_secret=secret}catch{throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid authorization header format\",error:\"invalid_client\"})}const{grant_type,code,redirect_uri,refresh_token,code_verifier}=body;if(grant_type===\"refresh_token\"){if(!refresh_token)throw new import_api.APIError(\"BAD_REQUEST\",{error_description:\"refresh_token is required\",error:\"invalid_request\"});const token=await ctx.context.adapter.findOne({model:\"oauthAccessToken\",where:[{field:\"refreshToken\",value:refresh_token.toString()}]});if(!token)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid refresh token\",error:\"invalid_grant\"});if(token.clientId!==client_id?.toString())throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid client_id\",error:\"invalid_client\"});if(token.refreshTokenExpiresAt
{if(!res)return null;return{...res,redirectUrls:res.redirectUrls.split(\",\"),metadata:res.metadata?JSON.parse(res.metadata):{}}});if(!client)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid client_id\",error:\"invalid_client\"});if(client.disabled)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"client is disabled\",error:\"invalid_client\"});if(client.type===\"public\"){if(!code_verifier)throw new import_api.APIError(\"BAD_REQUEST\",{error_description:\"code verifier is required for public clients\",error:\"invalid_request\"})}else{if(!client_secret)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"client_secret is required for confidential clients\",error:\"invalid_client\"});if(!(client.clientSecret===client_secret.toString()))throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid client_secret\",error:\"invalid_client\"})}const value=JSON.parse(verificationValue.value);if(value.clientId!==client_id.toString())throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid client_id\",error:\"invalid_client\"});if(value.redirectURI!==redirect_uri.toString())throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"invalid redirect_uri\",error:\"invalid_client\"});if(value.codeChallenge&&!code_verifier)throw new import_api.APIError(\"BAD_REQUEST\",{error_description:\"code verifier is missing\",error:\"invalid_request\"});if((value.codeChallengeMethod===\"plain\"?code_verifier:await(0,import_hash.createHash)(\"SHA-256\",\"base64urlnopad\").digest(code_verifier))!==value.codeChallenge)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"code verification failed\",error:\"invalid_request\"});const requestedScopes=value.scope;await ctx.context.internalAdapter.deleteVerificationByIdentifier(code.toString());const accessToken=(0,import_random.generateRandomString)(32,\"a-z\",\"A-Z\");const refreshToken=(0,import_random.generateRandomString)(32,\"A-Z\",\"a-z\");const accessTokenExpiresAt=new Date(Date.now()+opts.accessTokenExpiresIn*1e3);const refreshTokenExpiresAt=new Date(Date.now()+opts.refreshTokenExpiresIn*1e3);await ctx.context.adapter.create({model:modelName.oauthAccessToken,data:{accessToken,refreshToken,accessTokenExpiresAt,refreshTokenExpiresAt,clientId:client_id.toString(),userId:value.userId,scopes:requestedScopes.join(\" \"),createdAt:new Date,updatedAt:new Date}});const user=await ctx.context.internalAdapter.findUserById(value.userId);if(!user)throw new import_api.APIError(\"UNAUTHORIZED\",{error_description:\"user not found\",error:\"invalid_grant\"});const secretKey={alg:\"HS256\",key:await(0,import_utils2.getWebcryptoSubtle)().generateKey({name:\"HMAC\",hash:\"SHA-256\"},true,[\"sign\",\"verify\"])};const profile={given_name:user.name.split(\" \")[0],family_name:user.name.split(\" \")[1],name:user.name,profile:user.image,updated_at:Math.floor(new Date(user.updatedAt).getTime()/1e3)};const email={email:user.email,email_verified:user.emailVerified};const userClaims={...requestedScopes.includes(\"profile\")?profile:{},...requestedScopes.includes(\"email\")?email:{}};const additionalUserClaims=opts.getAdditionalUserInfoClaim?await opts.getAdditionalUserInfoClaim(user,requestedScopes,client):{};const idToken=await new import_jose.SignJWT({sub:user.id,aud:client_id.toString(),iat:Date.now(),auth_time:ctx.context.session?new Date(ctx.context.session.session.createdAt).getTime():void 0,nonce:value.nonce,acr:\"urn:mace:incommon:iap:silver\",...userClaims,...additionalUserClaims}).setProtectedHeader({alg:secretKey.alg}).setIssuedAt().setExpirationTime(Math.floor(Date.now()/1e3)+opts.accessTokenExpiresIn).sign(secretKey.key);return ctx.json({access_token:accessToken,token_type:\"Bearer\",expires_in:opts.accessTokenExpiresIn,refresh_token:requestedScopes.includes(\"offline_access\")?refreshToken:void 0,scope:requestedScopes.join(\" \"),id_token:requestedScopes.includes(\"openid\")?idToken:void 0},{headers:{\"Cache-Control\":\"no-store\",Pragma:\"no-cache\"}})}),registerMcpClient:(0,import_api2.createAuthEndpoint)(\"/mcp/register\",{method:\"POST\",body:registerMcpClientBodySchema,metadata:{openapi:{description:\"Register an OAuth2 application\",responses:{\"200\":{description:\"OAuth2 application registered successfully\",content:{\"application/json\":{schema:{type:\"object\",properties:{name:{type:\"string\",description:\"Name of the OAuth2 application\"},icon:{type:\"string\",nullable:true,description:\"Icon URL for the application\"},metadata:{type:\"object\",additionalProperties:true,nullable:true,description:\"Additional metadata for the application\"},clientId:{type:\"string\",description:\"Unique identifier for the client\"},clientSecret:{type:\"string\",description:\"Secret key for the client. Not included for public clients.\"},redirectUrls:{type:\"array\",items:{type:\"string\",format:\"uri\"},description:\"List of allowed redirect URLs\"},type:{type:\"string\",description:\"Type of the client\",enum:[\"web\",\"public\"]},authenticationScheme:{type:\"string\",description:\"Authentication scheme used by the client\",enum:[\"client_secret\",\"none\"]},disabled:{type:\"boolean\",description:\"Whether the client is disabled\",enum:[false]},userId:{type:\"string\",nullable:true,description:\"ID of the user who registered the client, null if registered anonymously\"},createdAt:{type:\"string\",format:\"date-time\",description:\"Creation timestamp\"},updatedAt:{type:\"string\",format:\"date-time\",description:\"Last update timestamp\"}},required:[\"name\",\"clientId\",\"redirectUrls\",\"type\",\"authenticationScheme\",\"disabled\",\"createdAt\",\"updatedAt\"]}}}}}}}},async ctx=>{const body=ctx.body;const session=await(0,import_session.getSessionFromCtx)(ctx);ctx.setHeader(\"Access-Control-Allow-Origin\",\"*\");ctx.setHeader(\"Access-Control-Allow-Methods\",\"POST, OPTIONS\");ctx.setHeader(\"Access-Control-Allow-Headers\",\"Content-Type, Authorization\");ctx.setHeader(\"Access-Control-Max-Age\",\"86400\");ctx.headers?.set(\"Access-Control-Max-Age\",\"86400\");if((!body.grant_types||body.grant_types.includes(\"authorization_code\")||body.grant_types.includes(\"implicit\"))&&(!body.redirect_uris||body.redirect_uris.length===0))throw new import_api.APIError(\"BAD_REQUEST\",{error:\"invalid_redirect_uri\",error_description:\"Redirect URIs are required for authorization_code and implicit grant types\"});if(body.grant_types&&body.response_types){if(body.grant_types.includes(\"authorization_code\")&&!body.response_types.includes(\"code\"))throw new import_api.APIError(\"BAD_REQUEST\",{error:\"invalid_client_metadata\",error_description:\"When 'authorization_code' grant type is used, 'code' response type must be included\"});if(body.grant_types.includes(\"implicit\")&&!body.response_types.includes(\"token\"))throw new import_api.APIError(\"BAD_REQUEST\",{error:\"invalid_client_metadata\",error_description:\"When 'implicit' grant type is used, 'token' response type must be included\"})}const clientId=opts.generateClientId?.()||(0,import_random.generateRandomString)(32,\"a-z\",\"A-Z\");const clientSecret=opts.generateClientSecret?.()||(0,import_random.generateRandomString)(32,\"a-z\",\"A-Z\");const clientType=body.token_endpoint_auth_method===\"none\"?\"public\":\"web\";const finalClientSecret=clientType===\"public\"?\"\":clientSecret;await ctx.context.adapter.create({model:modelName.oauthClient,data:{name:body.client_name,icon:body.logo_uri,metadata:body.metadata?JSON.stringify(body.metadata):null,clientId,clientSecret:finalClientSecret,redirectUrls:body.redirect_uris.join(\",\"),type:clientType,authenticationScheme:body.token_endpoint_auth_method||\"client_secret_basic\",disabled:false,userId:session?.session.userId,createdAt:new Date,updatedAt:new Date}});const responseData={client_id:clientId,client_id_issued_at:Math.floor(Date.now()/1e3),redirect_uris:body.redirect_uris,token_endpoint_auth_method:body.token_endpoint_auth_method||\"client_secret_basic\",grant_types:body.grant_types||[\"authorization_code\"],response_types:body.response_types||[\"code\"],client_name:body.client_name,client_uri:body.client_uri,logo_uri:body.logo_uri,scope:body.scope,contacts:body.contacts,tos_uri:body.tos_uri,policy_uri:body.policy_uri,jwks_uri:body.jwks_uri,jwks:body.jwks,software_id:body.software_id,software_version:body.software_version,software_statement:body.software_statement,metadata:body.metadata,...clientType!==\"public\"?{client_secret:finalClientSecret,client_secret_expires_at:0}:{}};return new Response(JSON.stringify(responseData),{status:201,headers:{\"Content-Type\":\"application/json\",\"Cache-Control\":\"no-store\",Pragma:\"no-cache\"}})}),getMcpSession:(0,import_api2.createAuthEndpoint)(\"/mcp/get-session\",{method:\"GET\",requireHeaders:true},async c=>{const accessToken=c.headers?.get(\"Authorization\")?.replace(\"Bearer \",\"\");if(!accessToken){c.headers?.set(\"WWW-Authenticate\",\"Bearer\");return c.json(null)}const accessTokenData=await c.context.adapter.findOne({model:modelName.oauthAccessToken,where:[{field:\"accessToken\",value:accessToken}]});if(!accessTokenData)return c.json(null);return c.json(accessTokenData)})},schema:import_schema.schema,options}},\"mcp\");const withMcpAuth=__name((auth,handler)=>{return async req=>{const basePath=auth.options.basePath||\"/api/auth\";const baseURL=(0,import_url.isDynamicBaseURLConfig)(auth.options.baseURL)?(0,import_url.resolveBaseURL)(auth.options.baseURL,basePath,req):(0,import_url.getBaseURL)(typeof auth.options.baseURL===\"string\"?auth.options.baseURL:void 0,basePath);if(!baseURL&&!import_env.isProduction)import_env.logger.warn(\"Unable to get the baseURL, please check your config!\");const session=await auth.api.getMcpSession({headers:req.headers});const wwwAuthenticateValue=`Bearer resource_metadata=\"${baseURL}/.well-known/oauth-protected-resource\"`;if(!session)return Response.json({jsonrpc:\"2.0\",error:{code:-32e3,message:\"Unauthorized: Authentication required\",\"www-authenticate\":wwwAuthenticateValue},id:null},{status:401,headers:{\"WWW-Authenticate\":wwwAuthenticateValue,\"Access-Control-Expose-Headers\":\"WWW-Authenticate\"}});return handler(req,session)}},\"withMcpAuth\");const oAuthDiscoveryMetadata=__name(auth=>{return async request=>{const res=await auth.api.getMcpOAuthConfig();return new Response(JSON.stringify(res),{status:200,headers:{\"Content-Type\":\"application/json\",\"Access-Control-Allow-Origin\":\"*\",\"Access-Control-Allow-Methods\":\"POST, OPTIONS\",\"Access-Control-Allow-Headers\":\"Content-Type, Authorization\",\"Access-Control-Max-Age\":\"86400\"}})}},\"oAuthDiscoveryMetadata\");const oAuthProtectedResourceMetadata=__name(auth=>{return async request=>{const res=await auth.api.getMCPProtectedResource();return new Response(JSON.stringify(res),{status:200,headers:{\"Content-Type\":\"application/json\",\"Access-Control-Allow-Origin\":\"*\",\"Access-Control-Allow-Methods\":\"POST, OPTIONS\",\"Access-Control-Allow-Headers\":\"Content-Type, Authorization\",\"Access-Control-Max-Age\":\"86400\"}})}},\"oAuthProtectedResourceMetadata\");0&&(module.exports={getMCPProtectedResourceMetadata,getMCPProviderMetadata,mcp,oAuthDiscoveryMetadata,oAuthProtectedResourceMetadata,withMcpAuth});\n})()\n","warnings":[],"map":{"version":3,"mappings":"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","names":["import_api","import_utils","accessToken","accessTokenExpiresAt","refreshTokenExpiresAt"],"ignoreList":[],"sources":["/opt/canhelp/node_modules/better-auth/dist/plugins/mcp/index.mjs"],"sourcesContent":[null]}}