asgardeo / asgardeo/mcp-auth-javascript

[Feature Request] Provide support for tool-level fine grained access control

Open
#21 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
1
Forks
7
PR merge metrics
No merged PRs in 30d

Description

## Limitation

The Asgardeo MCP Auth SDK currently enforces authentication at the `/mcp` route level by default. While this simplifies protection, it introduces a few key limitations:

1. MCP servers cannot expose a mix of public and protected tools within the same endpoint.
2. There is no support for fine-grained, tool-level access control, such as defining required scopes per tool.

## Suggested Improvement

Introduce fine-grained, tool-level access control for MCP servers.

Developers should be able to define authorization requirements at the individual tool level, including specifying the scopes required to invoke each tool. This would enable:

* Selective exposure of public and protected tools within the same MCP server
* More precise enforcement of access control based on user permissions
* Better alignment with real-world use cases where different tools require different levels of access

This capability was previously supported in the MCP Auth Proxy (now deprecated), where tool-level scope configuration could be defined[1].

[1] https://github.com/wso2-attic/open-mcp-auth-proxy/blob/main/config.yaml#L55

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.