-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the bug
Following the example in the README section on proxy authorization leads to a ERR_MODULE_NOT_FOUND
error when importing from @modelcontextprotocol/sdk/server/auth/providers/proxyProvider.
To Reproduce
Steps to reproduce the behavior:
- Follow the example import:
import { ProxyOAuthServerProvider, mcpAuthRouter } from '@modelcontextprotocol/sdk/server/auth/providers/proxyProvider';
- Run the Node.js project (using ESM).
Expected behavior
The import should resolve correctly and not throw a ERR_MODULE_NOT_FOUND
error.
Logs
node:internal/modules/esm/resolve:265
throw new ERR_MODULE_NOT_FOUND(
^
Error [ERR_MODULE_NOT_FOUND]: Cannot find module '/Users/kumuditha/Documents/mcpHackerthon/my/untitled folder/node_modules/@modelcontextprotocol/sdk/dist/esm/server/auth/providers/proxyProvider' imported from /Users/kumuditha/Documents/mcpHackerthon/my/untitled folder/client.js
at finalizeResolution (node:internal/modules/esm/resolve:265:11)
at moduleResolve (node:internal/modules/esm/resolve:933:10)
at defaultResolve (node:internal/modules/esm/resolve:1169:11)
at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:383:12)
at ModuleLoader.resolve (node:internal/modules/esm/loader:352:25)
at ModuleLoader.getModuleJob (node:internal/modules/esm/loader:227:38)
at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:87:39)
at link (node:internal/modules/esm/module_job:86:36) {
code: 'ERR_MODULE_NOT_FOUND',
url: 'file:///Users/kumuditha/Documents/mcpHackerthon/my/untitled%20folder/node_modules/@modelcontextprotocol/sdk/dist/esm/server/auth/providers/proxyProvider'
}
Additional context
Modifying the import to include the .js extension resolved the issue:
import { mcpAuthRouter } from '@modelcontextprotocol/sdk/server/auth/router.js';
import { ProxyOAuthServerProvider } from '@modelcontextprotocol/sdk/server/auth/providers/proxyProvider.js';
This may require either fixing the documentation example or updating the SDK’s exports field in package.json to support extensionless ESM imports.
link82
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working