@better-auth/mcp 1.8.0-beta.1 → 1.8.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +4 -5
- package/dist/index.mjs +3 -2
- package/package.json +11 -11
package/dist/index.d.mts
CHANGED
|
@@ -3,7 +3,6 @@ import { DpopReplayReservations, DpopReplayStore } from "better-auth/oauth2";
|
|
|
3
3
|
import { Awaitable } from "@better-auth/core";
|
|
4
4
|
import { JWTPayload, JWTVerifyOptions } from "jose";
|
|
5
5
|
import { BetterAuthOptions } from "better-auth/types";
|
|
6
|
-
|
|
7
6
|
//#region src/handler.d.ts
|
|
8
7
|
interface McpProtectedRequestHandlerOptions {
|
|
9
8
|
/** Expected authorization-server issuer for the access token. */
|
|
@@ -49,7 +48,7 @@ interface McpProtectedRequestHandlerOptions {
|
|
|
49
48
|
*
|
|
50
49
|
* @external
|
|
51
50
|
*/
|
|
52
|
-
declare const createMcpProtectedRequestHandler: (options: McpProtectedRequestHandlerOptions, handler: (request: Request, accessTokenClaims: JWTPayload) => Awaitable<Response>) => (request: Request) => Promise<Response>;
|
|
51
|
+
export declare const createMcpProtectedRequestHandler: (options: McpProtectedRequestHandlerOptions, handler: (request: Request, accessTokenClaims: JWTPayload) => Awaitable<Response>) => (request: Request) => Promise<Response>;
|
|
53
52
|
//#endregion
|
|
54
53
|
//#region src/plugin.d.ts
|
|
55
54
|
/**
|
|
@@ -125,7 +124,7 @@ interface McpOptions extends OAuthOptions<Scope[]> {
|
|
|
125
124
|
* });
|
|
126
125
|
* ```
|
|
127
126
|
*/
|
|
128
|
-
declare const mcp: (options: McpOptions) => ReturnType<typeof oauthProvider>;
|
|
127
|
+
export declare const mcp: (options: McpOptions) => ReturnType<typeof oauthProvider>;
|
|
129
128
|
//#endregion
|
|
130
129
|
//#region src/require-mcp-auth.d.ts
|
|
131
130
|
interface RequireMcpAuthOptions {
|
|
@@ -188,7 +187,7 @@ interface RequireMcpAuthOptions {
|
|
|
188
187
|
*
|
|
189
188
|
* @external
|
|
190
189
|
*/
|
|
191
|
-
declare const requireMcpAuth: <Auth extends {
|
|
190
|
+
export declare const requireMcpAuth: <Auth extends {
|
|
192
191
|
options: BetterAuthOptions;
|
|
193
192
|
$context: Promise<{
|
|
194
193
|
baseURL: string;
|
|
@@ -196,4 +195,4 @@ declare const requireMcpAuth: <Auth extends {
|
|
|
196
195
|
}>;
|
|
197
196
|
}>(auth: Auth, handler: (request: Request, accessTokenClaims: JWTPayload) => Awaitable<Response>, opts?: RequireMcpAuthOptions) => (req: Request) => Promise<Response>;
|
|
198
197
|
//#endregion
|
|
199
|
-
export {
|
|
198
|
+
export type { McpOptions, McpProtectedRequestHandlerOptions, RequireMcpAuthOptions };
|
package/dist/index.mjs
CHANGED
|
@@ -86,7 +86,7 @@ const createMcpProtectedRequestHandler = (options, handler) => {
|
|
|
86
86
|
//#endregion
|
|
87
87
|
//#region src/plugin.ts
|
|
88
88
|
const PROTECTED_RESOURCE_METADATA_PATH = "/.well-known/oauth-protected-resource";
|
|
89
|
-
const AUTHORIZATION_SERVER_ONLY_SCOPES = new Set([
|
|
89
|
+
const AUTHORIZATION_SERVER_ONLY_SCOPES = /* @__PURE__ */ new Set([
|
|
90
90
|
"openid",
|
|
91
91
|
"profile",
|
|
92
92
|
"email",
|
|
@@ -189,7 +189,7 @@ const mcp = (options) => {
|
|
|
189
189
|
} catch {
|
|
190
190
|
resourcePath = "";
|
|
191
191
|
}
|
|
192
|
-
if (!new Set([PROTECTED_RESOURCE_METADATA_PATH, `${PROTECTED_RESOURCE_METADATA_PATH}${resourcePath}`]).has(requestPath)) return;
|
|
192
|
+
if (!(/* @__PURE__ */ new Set([PROTECTED_RESOURCE_METADATA_PATH, `${PROTECTED_RESOURCE_METADATA_PATH}${resourcePath}`])).has(requestPath)) return;
|
|
193
193
|
if (request.method !== "GET" && request.method !== "HEAD") return { response: new Response(null, {
|
|
194
194
|
status: 405,
|
|
195
195
|
headers: { Allow: "GET, HEAD" }
|
|
@@ -234,6 +234,7 @@ const requireMcpAuth = (auth, handler, opts) => {
|
|
|
234
234
|
return createMcpProtectedRequestHandler({
|
|
235
235
|
issuer,
|
|
236
236
|
audience: resource,
|
|
237
|
+
jwtVerifyOptions: { requiredClaims: ["azp"] },
|
|
237
238
|
requiredScopes: opts?.requiredScopes,
|
|
238
239
|
challengeScopes: opts?.challengeScopes,
|
|
239
240
|
isScopeSatisfied: opts?.isScopeSatisfied,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@better-auth/mcp",
|
|
3
|
-
"version": "1.8.0-beta.
|
|
3
|
+
"version": "1.8.0-beta.3",
|
|
4
4
|
"description": "Model Context Protocol (MCP) plugin for Better Auth",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -47,20 +47,20 @@
|
|
|
47
47
|
},
|
|
48
48
|
"dependencies": {
|
|
49
49
|
"jose": "^6.1.3",
|
|
50
|
-
"@better-auth/oauth-provider": "^1.8.0-beta.
|
|
50
|
+
"@better-auth/oauth-provider": "^1.8.0-beta.3"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
|
-
"@modelcontextprotocol/client": "2.
|
|
54
|
-
"@modelcontextprotocol/server": "2.
|
|
55
|
-
"better-call": "1.4.
|
|
56
|
-
"tsdown": "0.
|
|
57
|
-
"@better-auth/core": "1.8.0-beta.
|
|
58
|
-
"better-auth": "1.8.0-beta.
|
|
53
|
+
"@modelcontextprotocol/client": "2.3.1",
|
|
54
|
+
"@modelcontextprotocol/server": "2.3.1",
|
|
55
|
+
"better-call": "1.4.4",
|
|
56
|
+
"tsdown": "0.23.1",
|
|
57
|
+
"@better-auth/core": "1.8.0-beta.3",
|
|
58
|
+
"better-auth": "1.8.0-beta.3"
|
|
59
59
|
},
|
|
60
60
|
"peerDependencies": {
|
|
61
|
-
"better-call": "1.4.
|
|
62
|
-
"@better-auth/core": "^1.8.0-beta.
|
|
63
|
-
"better-auth": "^1.8.0-beta.
|
|
61
|
+
"better-call": "1.4.4",
|
|
62
|
+
"@better-auth/core": "^1.8.0-beta.3",
|
|
63
|
+
"better-auth": "^1.8.0-beta.3"
|
|
64
64
|
},
|
|
65
65
|
"scripts": {
|
|
66
66
|
"build": "tsdown",
|