@prmichaelsen/mcp-auth 0.2.0 → 1.0.0

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.
@@ -44,13 +44,15 @@ export interface CredentialsAPIResponse {
44
44
  */
45
45
  expires_at?: string;
46
46
  /**
47
- * Provider-specific user ID
47
+ * Provider-specific user ID (e.g., Instagram user ID, GitHub user ID)
48
+ * Note: Provider is already specified in the URL path
48
49
  */
49
- provider_user_id?: string;
50
+ user_id?: string;
50
51
  /**
51
- * Provider-specific username
52
+ * Provider-specific username (e.g., Instagram username, GitHub username)
53
+ * Note: Provider is already specified in the URL path
52
54
  */
53
- provider_username?: string;
55
+ username?: string;
54
56
  /**
55
57
  * Additional provider-specific metadata
56
58
  */
@@ -125,8 +127,8 @@ export interface TenantManagerAPI {
125
127
  * {
126
128
  * "access_token": "IGQVJXabc...",
127
129
  * "expires_at": "2026-12-31T23:59:59Z",
128
- * "provider_user_id": "17841400008460056",
129
- * "provider_username": "johndoe"
130
+ * "user_id": "17841400008460056",
131
+ * "username": "johndoe"
130
132
  * }
131
133
  *
132
134
  * Response 404:
@@ -1 +1 @@
1
- {"version":3,"file":"api-contracts.d.ts","sourceRoot":"","sources":["../../src/tenant/api-contracts.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAElC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,oBAAY,mBAAmB;IAC7B,EAAE,MAAM;IACR,WAAW,MAAM;IACjB,YAAY,MAAM;IAClB,SAAS,MAAM;IACf,SAAS,MAAM;IACf,QAAQ,MAAM;IACd,iBAAiB,MAAM;IACvB,cAAc,MAAM;IACpB,eAAe,MAAM;CACtB;AAED;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,gBAAgB,qBAAqB;IACrC,oBAAoB,yBAAyB;IAC7C,mBAAmB,wBAAwB;IAC3C,SAAS,cAAc;IACvB,aAAa,kBAAkB;IAC/B,mBAAmB,wBAAwB;IAC3C,cAAc,mBAAmB;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsCG;IACH,cAAc,CACZ,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,sBAAsB,GAAG,sBAAsB,CAAC,CAAC;CAC7D;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,mBAAmB,EAC/B,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC,GACA,sBAAsB,CAQxB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe;gCACE,MAAM;oCAUF,MAAM;kCAUR,MAAM,YAAY,MAAM;6BAW7B,MAAM;8BAUL,MAAM;CASjC,CAAC"}
1
+ {"version":3,"file":"api-contracts.d.ts","sourceRoot":"","sources":["../../src/tenant/api-contracts.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAElC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,oBAAY,mBAAmB;IAC7B,EAAE,MAAM;IACR,WAAW,MAAM;IACjB,YAAY,MAAM;IAClB,SAAS,MAAM;IACf,SAAS,MAAM;IACf,QAAQ,MAAM;IACd,iBAAiB,MAAM;IACvB,cAAc,MAAM;IACpB,eAAe,MAAM;CACtB;AAED;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,gBAAgB,qBAAqB;IACrC,oBAAoB,yBAAyB;IAC7C,mBAAmB,wBAAwB;IAC3C,SAAS,cAAc;IACvB,aAAa,kBAAkB;IAC/B,mBAAmB,wBAAwB;IAC3C,cAAc,mBAAmB;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAsCG;IACH,cAAc,CACZ,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,sBAAsB,GAAG,sBAAsB,CAAC,CAAC;CAC7D;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,mBAAmB,EAC/B,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC,GACA,sBAAsB,CAQxB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe;gCACE,MAAM;oCAUF,MAAM;kCAUR,MAAM,YAAY,MAAM;6BAW7B,MAAM;8BAUL,MAAM;CASjC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/tenant/api-contracts.ts"],
4
- "sourcesContent": ["/**\n * Tenant Manager API Contracts\n * \n * Standard interfaces for tenant manager APIs that MCP servers integrate with.\n * These interfaces help tenant platforms provide consistent APIs for MCP servers.\n */\n\n/**\n * Standard error response format\n * Used by tenant manager APIs\n */\nexport interface TenantAPIErrorResponse {\n /**\n * Error type/title\n */\n error: string;\n \n /**\n * Human-readable error message\n */\n message?: string;\n \n /**\n * Error code for programmatic handling\n */\n code?: string;\n \n /**\n * Additional error details (development only)\n */\n details?: Record<string, unknown>;\n \n /**\n * Timestamp of the error\n */\n timestamp: string;\n}\n\n/**\n * Credentials API response\n * Returned by GET /api/credentials/:userId/:provider\n */\nexport interface CredentialsAPIResponse {\n /**\n * Access token for the provider\n */\n access_token: string;\n \n /**\n * Token expiration timestamp (ISO 8601)\n */\n expires_at?: string;\n \n /**\n * Provider-specific user ID\n */\n provider_user_id?: string;\n \n /**\n * Provider-specific username\n */\n provider_username?: string;\n \n /**\n * Additional provider-specific metadata\n */\n metadata?: Record<string, unknown>;\n}\n\n/**\n * Standard HTTP status codes for tenant manager APIs\n */\nexport enum TenantAPIStatusCode {\n OK = 200,\n BAD_REQUEST = 400,\n UNAUTHORIZED = 401,\n FORBIDDEN = 403,\n NOT_FOUND = 404,\n CONFLICT = 409,\n TOO_MANY_REQUESTS = 429,\n INTERNAL_ERROR = 500,\n NOT_IMPLEMENTED = 501\n}\n\n/**\n * Standard error codes for tenant manager APIs\n */\nexport enum TenantAPIErrorCode {\n VALIDATION_ERROR = 'VALIDATION_ERROR',\n AUTHENTICATION_ERROR = 'AUTHENTICATION_ERROR',\n AUTHORIZATION_ERROR = 'AUTHORIZATION_ERROR',\n NOT_FOUND = 'NOT_FOUND',\n TOKEN_EXPIRED = 'TOKEN_EXPIRED',\n RATE_LIMIT_EXCEEDED = 'RATE_LIMIT_EXCEEDED',\n INTERNAL_ERROR = 'INTERNAL_ERROR'\n}\n\n/**\n * Credentials API request headers\n * Expected by GET /api/credentials/:userId/:provider\n */\nexport interface CredentialsAPIHeaders {\n /**\n * Service token for MCP server \u2192 tenant manager authentication\n */\n 'Authorization': string; // Bearer <service-token>\n \n /**\n * Optional: User ID (alternative to path parameter)\n */\n 'X-User-ID'?: string;\n \n /**\n * Optional: Request ID for tracing\n */\n 'X-Request-ID'?: string;\n}\n\n/**\n * Tenant Manager API Contract\n * \n * Interface that tenant managers should implement for MCP server integration.\n */\nexport interface TenantManagerAPI {\n /**\n * Get credentials for a user and provider\n * \n * @endpoint GET /api/credentials/:userId/:provider\n * @auth Service token in Authorization header\n * \n * @param userId - User identifier\n * @param provider - Provider name (e.g., 'instagram', 'github')\n * @returns Credentials response or error\n * \n * @example\n * ```\n * GET /api/credentials/user-123/instagram\n * Authorization: Bearer service-token-xyz\n * \n * Response 200:\n * {\n * \"access_token\": \"IGQVJXabc...\",\n * \"expires_at\": \"2026-12-31T23:59:59Z\",\n * \"provider_user_id\": \"17841400008460056\",\n * \"provider_username\": \"johndoe\"\n * }\n * \n * Response 404:\n * {\n * \"error\": \"Not Found\",\n * \"message\": \"Credentials not found for user\",\n * \"timestamp\": \"2026-02-09T21:00:00.000Z\"\n * }\n * \n * Response 401:\n * {\n * \"error\": \"Unauthorized\",\n * \"message\": \"Token expired\",\n * \"code\": \"TOKEN_EXPIRED\",\n * \"timestamp\": \"2026-02-09T21:00:00.000Z\"\n * }\n * ```\n */\n getCredentials(\n userId: string,\n provider: string,\n headers: CredentialsAPIHeaders\n ): Promise<CredentialsAPIResponse | TenantAPIErrorResponse>;\n}\n\n/**\n * Helper function to create standardized error responses\n * Tenant managers can use this to ensure consistency\n */\nexport function createTenantAPIError(\n error: string,\n statusCode: TenantAPIStatusCode,\n options?: {\n message?: string;\n code?: TenantAPIErrorCode;\n details?: Record<string, unknown>;\n }\n): TenantAPIErrorResponse {\n return {\n error,\n message: options?.message || error,\n code: options?.code,\n details: options?.details,\n timestamp: new Date().toISOString()\n };\n}\n\n/**\n * Common error responses for tenant manager APIs\n */\nexport const TenantAPIErrors = {\n missingHeader: (headerName: string) =>\n createTenantAPIError(\n 'Bad Request',\n TenantAPIStatusCode.BAD_REQUEST,\n {\n message: `${headerName} header required`,\n code: TenantAPIErrorCode.VALIDATION_ERROR\n }\n ),\n \n unsupportedProvider: (provider: string) =>\n createTenantAPIError(\n 'Bad Request',\n TenantAPIStatusCode.BAD_REQUEST,\n {\n message: `Unsupported provider: ${provider}`,\n code: TenantAPIErrorCode.VALIDATION_ERROR\n }\n ),\n \n credentialsNotFound: (userId: string, provider: string) =>\n createTenantAPIError(\n 'Not Found',\n TenantAPIStatusCode.NOT_FOUND,\n {\n message: `No ${provider} credentials found for user`,\n code: TenantAPIErrorCode.NOT_FOUND,\n details: { userId, provider }\n }\n ),\n \n tokenExpired: (provider: string) =>\n createTenantAPIError(\n 'Unauthorized',\n TenantAPIStatusCode.UNAUTHORIZED,\n {\n message: `${provider} token has expired`,\n code: TenantAPIErrorCode.TOKEN_EXPIRED\n }\n ),\n \n internalError: (message?: string) =>\n createTenantAPIError(\n 'Internal Server Error',\n TenantAPIStatusCode.INTERNAL_ERROR,\n {\n message: message || 'An unexpected error occurred',\n code: TenantAPIErrorCode.INTERNAL_ERROR\n }\n )\n};\n"],
5
- "mappings": "AAwEO,IAAK,sBAAL,kBAAKA,yBAAL;AACL,EAAAA,0CAAA,QAAK,OAAL;AACA,EAAAA,0CAAA,iBAAc,OAAd;AACA,EAAAA,0CAAA,kBAAe,OAAf;AACA,EAAAA,0CAAA,eAAY,OAAZ;AACA,EAAAA,0CAAA,eAAY,OAAZ;AACA,EAAAA,0CAAA,cAAW,OAAX;AACA,EAAAA,0CAAA,uBAAoB,OAApB;AACA,EAAAA,0CAAA,oBAAiB,OAAjB;AACA,EAAAA,0CAAA,qBAAkB,OAAlB;AATU,SAAAA;AAAA,GAAA;AAeL,IAAK,qBAAL,kBAAKC,wBAAL;AACL,EAAAA,oBAAA,sBAAmB;AACnB,EAAAA,oBAAA,0BAAuB;AACvB,EAAAA,oBAAA,yBAAsB;AACtB,EAAAA,oBAAA,eAAY;AACZ,EAAAA,oBAAA,mBAAgB;AAChB,EAAAA,oBAAA,yBAAsB;AACtB,EAAAA,oBAAA,oBAAiB;AAPP,SAAAA;AAAA,GAAA;AAuFL,SAAS,qBACd,OACA,YACA,SAKwB;AACxB,SAAO;AAAA,IACL;AAAA,IACA,SAAS,SAAS,WAAW;AAAA,IAC7B,MAAM,SAAS;AAAA,IACf,SAAS,SAAS;AAAA,IAClB,YAAW,oBAAI,KAAK,GAAE,YAAY;AAAA,EACpC;AACF;AAKO,MAAM,kBAAkB;AAAA,EAC7B,eAAe,CAAC,eACd;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,MACE,SAAS,GAAG,UAAU;AAAA,MACtB,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EAEF,qBAAqB,CAAC,aACpB;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,MACE,SAAS,yBAAyB,QAAQ;AAAA,MAC1C,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EAEF,qBAAqB,CAAC,QAAgB,aACpC;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,MACE,SAAS,MAAM,QAAQ;AAAA,MACvB,MAAM;AAAA,MACN,SAAS,EAAE,QAAQ,SAAS;AAAA,IAC9B;AAAA,EACF;AAAA,EAEF,cAAc,CAAC,aACb;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,MACE,SAAS,GAAG,QAAQ;AAAA,MACpB,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EAEF,eAAe,CAAC,YACd;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,MACE,SAAS,WAAW;AAAA,MACpB,MAAM;AAAA,IACR;AAAA,EACF;AACJ;",
4
+ "sourcesContent": ["/**\n * Tenant Manager API Contracts\n * \n * Standard interfaces for tenant manager APIs that MCP servers integrate with.\n * These interfaces help tenant platforms provide consistent APIs for MCP servers.\n */\n\n/**\n * Standard error response format\n * Used by tenant manager APIs\n */\nexport interface TenantAPIErrorResponse {\n /**\n * Error type/title\n */\n error: string;\n \n /**\n * Human-readable error message\n */\n message?: string;\n \n /**\n * Error code for programmatic handling\n */\n code?: string;\n \n /**\n * Additional error details (development only)\n */\n details?: Record<string, unknown>;\n \n /**\n * Timestamp of the error\n */\n timestamp: string;\n}\n\n/**\n * Credentials API response\n * Returned by GET /api/credentials/:userId/:provider\n */\nexport interface CredentialsAPIResponse {\n /**\n * Access token for the provider\n */\n access_token: string;\n \n /**\n * Token expiration timestamp (ISO 8601)\n */\n expires_at?: string;\n \n /**\n * Provider-specific user ID (e.g., Instagram user ID, GitHub user ID)\n * Note: Provider is already specified in the URL path\n */\n user_id?: string;\n \n /**\n * Provider-specific username (e.g., Instagram username, GitHub username)\n * Note: Provider is already specified in the URL path\n */\n username?: string;\n \n /**\n * Additional provider-specific metadata\n */\n metadata?: Record<string, unknown>;\n}\n\n/**\n * Standard HTTP status codes for tenant manager APIs\n */\nexport enum TenantAPIStatusCode {\n OK = 200,\n BAD_REQUEST = 400,\n UNAUTHORIZED = 401,\n FORBIDDEN = 403,\n NOT_FOUND = 404,\n CONFLICT = 409,\n TOO_MANY_REQUESTS = 429,\n INTERNAL_ERROR = 500,\n NOT_IMPLEMENTED = 501\n}\n\n/**\n * Standard error codes for tenant manager APIs\n */\nexport enum TenantAPIErrorCode {\n VALIDATION_ERROR = 'VALIDATION_ERROR',\n AUTHENTICATION_ERROR = 'AUTHENTICATION_ERROR',\n AUTHORIZATION_ERROR = 'AUTHORIZATION_ERROR',\n NOT_FOUND = 'NOT_FOUND',\n TOKEN_EXPIRED = 'TOKEN_EXPIRED',\n RATE_LIMIT_EXCEEDED = 'RATE_LIMIT_EXCEEDED',\n INTERNAL_ERROR = 'INTERNAL_ERROR'\n}\n\n/**\n * Credentials API request headers\n * Expected by GET /api/credentials/:userId/:provider\n */\nexport interface CredentialsAPIHeaders {\n /**\n * Service token for MCP server \u2192 tenant manager authentication\n */\n 'Authorization': string; // Bearer <service-token>\n \n /**\n * Optional: User ID (alternative to path parameter)\n */\n 'X-User-ID'?: string;\n \n /**\n * Optional: Request ID for tracing\n */\n 'X-Request-ID'?: string;\n}\n\n/**\n * Tenant Manager API Contract\n * \n * Interface that tenant managers should implement for MCP server integration.\n */\nexport interface TenantManagerAPI {\n /**\n * Get credentials for a user and provider\n * \n * @endpoint GET /api/credentials/:userId/:provider\n * @auth Service token in Authorization header\n * \n * @param userId - User identifier\n * @param provider - Provider name (e.g., 'instagram', 'github')\n * @returns Credentials response or error\n * \n * @example\n * ```\n * GET /api/credentials/user-123/instagram\n * Authorization: Bearer service-token-xyz\n * \n * Response 200:\n * {\n * \"access_token\": \"IGQVJXabc...\",\n * \"expires_at\": \"2026-12-31T23:59:59Z\",\n * \"user_id\": \"17841400008460056\",\n * \"username\": \"johndoe\"\n * }\n * \n * Response 404:\n * {\n * \"error\": \"Not Found\",\n * \"message\": \"Credentials not found for user\",\n * \"timestamp\": \"2026-02-09T21:00:00.000Z\"\n * }\n * \n * Response 401:\n * {\n * \"error\": \"Unauthorized\",\n * \"message\": \"Token expired\",\n * \"code\": \"TOKEN_EXPIRED\",\n * \"timestamp\": \"2026-02-09T21:00:00.000Z\"\n * }\n * ```\n */\n getCredentials(\n userId: string,\n provider: string,\n headers: CredentialsAPIHeaders\n ): Promise<CredentialsAPIResponse | TenantAPIErrorResponse>;\n}\n\n/**\n * Helper function to create standardized error responses\n * Tenant managers can use this to ensure consistency\n */\nexport function createTenantAPIError(\n error: string,\n statusCode: TenantAPIStatusCode,\n options?: {\n message?: string;\n code?: TenantAPIErrorCode;\n details?: Record<string, unknown>;\n }\n): TenantAPIErrorResponse {\n return {\n error,\n message: options?.message || error,\n code: options?.code,\n details: options?.details,\n timestamp: new Date().toISOString()\n };\n}\n\n/**\n * Common error responses for tenant manager APIs\n */\nexport const TenantAPIErrors = {\n missingHeader: (headerName: string) =>\n createTenantAPIError(\n 'Bad Request',\n TenantAPIStatusCode.BAD_REQUEST,\n {\n message: `${headerName} header required`,\n code: TenantAPIErrorCode.VALIDATION_ERROR\n }\n ),\n \n unsupportedProvider: (provider: string) =>\n createTenantAPIError(\n 'Bad Request',\n TenantAPIStatusCode.BAD_REQUEST,\n {\n message: `Unsupported provider: ${provider}`,\n code: TenantAPIErrorCode.VALIDATION_ERROR\n }\n ),\n \n credentialsNotFound: (userId: string, provider: string) =>\n createTenantAPIError(\n 'Not Found',\n TenantAPIStatusCode.NOT_FOUND,\n {\n message: `No ${provider} credentials found for user`,\n code: TenantAPIErrorCode.NOT_FOUND,\n details: { userId, provider }\n }\n ),\n \n tokenExpired: (provider: string) =>\n createTenantAPIError(\n 'Unauthorized',\n TenantAPIStatusCode.UNAUTHORIZED,\n {\n message: `${provider} token has expired`,\n code: TenantAPIErrorCode.TOKEN_EXPIRED\n }\n ),\n \n internalError: (message?: string) =>\n createTenantAPIError(\n 'Internal Server Error',\n TenantAPIStatusCode.INTERNAL_ERROR,\n {\n message: message || 'An unexpected error occurred',\n code: TenantAPIErrorCode.INTERNAL_ERROR\n }\n )\n};\n"],
5
+ "mappings": "AA0EO,IAAK,sBAAL,kBAAKA,yBAAL;AACL,EAAAA,0CAAA,QAAK,OAAL;AACA,EAAAA,0CAAA,iBAAc,OAAd;AACA,EAAAA,0CAAA,kBAAe,OAAf;AACA,EAAAA,0CAAA,eAAY,OAAZ;AACA,EAAAA,0CAAA,eAAY,OAAZ;AACA,EAAAA,0CAAA,cAAW,OAAX;AACA,EAAAA,0CAAA,uBAAoB,OAApB;AACA,EAAAA,0CAAA,oBAAiB,OAAjB;AACA,EAAAA,0CAAA,qBAAkB,OAAlB;AATU,SAAAA;AAAA,GAAA;AAeL,IAAK,qBAAL,kBAAKC,wBAAL;AACL,EAAAA,oBAAA,sBAAmB;AACnB,EAAAA,oBAAA,0BAAuB;AACvB,EAAAA,oBAAA,yBAAsB;AACtB,EAAAA,oBAAA,eAAY;AACZ,EAAAA,oBAAA,mBAAgB;AAChB,EAAAA,oBAAA,yBAAsB;AACtB,EAAAA,oBAAA,oBAAiB;AAPP,SAAAA;AAAA,GAAA;AAuFL,SAAS,qBACd,OACA,YACA,SAKwB;AACxB,SAAO;AAAA,IACL;AAAA,IACA,SAAS,SAAS,WAAW;AAAA,IAC7B,MAAM,SAAS;AAAA,IACf,SAAS,SAAS;AAAA,IAClB,YAAW,oBAAI,KAAK,GAAE,YAAY;AAAA,EACpC;AACF;AAKO,MAAM,kBAAkB;AAAA,EAC7B,eAAe,CAAC,eACd;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,MACE,SAAS,GAAG,UAAU;AAAA,MACtB,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EAEF,qBAAqB,CAAC,aACpB;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,MACE,SAAS,yBAAyB,QAAQ;AAAA,MAC1C,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EAEF,qBAAqB,CAAC,QAAgB,aACpC;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,MACE,SAAS,MAAM,QAAQ;AAAA,MACvB,MAAM;AAAA,MACN,SAAS,EAAE,QAAQ,SAAS;AAAA,IAC9B;AAAA,EACF;AAAA,EAEF,cAAc,CAAC,aACb;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,MACE,SAAS,GAAG,QAAQ;AAAA,MACpB,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EAEF,eAAe,CAAC,YACd;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,MACE,SAAS,WAAW;AAAA,MACpB,MAAM;AAAA,IACR;AAAA,EACF;AACJ;",
6
6
  "names": ["TenantAPIStatusCode", "TenantAPIErrorCode"]
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prmichaelsen/mcp-auth",
3
- "version": "0.2.0",
3
+ "version": "1.0.0",
4
4
  "description": "Authentication and multi-tenancy framework for MCP servers",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",