You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Create starlett app to handle authorization flows
95
+
# Create Starlette app to handle authorization flows
96
96
app = access.app(mcp)
97
97
```
98
98
99
99
### Run Your Server
100
100
101
-
The authorization flows require additonal handlers to advertise the metadata.
101
+
The authorization flows require additional handlers to advertise the metadata.
102
102
103
-
This is implemented using underlying starlett application, for more information refer to official [mcp](https://github.com/modelcontextprotocol/python-sdk?tab=readme-ov-file#streamablehttp-servers) documentation
103
+
This is implemented using the underlying Starlette application. For more information, refer to the official [mcp](https://github.com/modelcontextprotocol/python-sdk?tab=readme-ov-file#streamablehttp-servers) documentation.
104
104
105
-
You can use any async server, for example [uvicorn](https://www.uvicorn.org/)
105
+
You can use any async server, for example [uvicorn](https://www.uvicorn.org/):
106
106
107
107
```bash
108
108
uv add uvicorn
@@ -115,7 +115,7 @@ pip install uvicorn
115
115
```
116
116
117
117
```bash
118
-
uvicorn server:app
118
+
python -m uvicorn server:app
119
119
```
120
120
121
121
### Authenticate in client
@@ -125,6 +125,79 @@ uvicorn server:app
125
125
126
126
### 🎉 Your MCP server is now running with KeyCard authentication! 🎉
127
127
128
+
## Features
129
+
130
+
### Delegated Access
131
+
132
+
You can use Keycard to allow MCP servers to access other resources on behalf of the user.
133
+
134
+
It automatically requests user consent and performs necessary secure exchanges to provide granular access to resources.
135
+
136
+
#### Configure credential provider
137
+
138
+
Configure a credential provider for your resource, for example Google Workspace.
0 commit comments