Skip to content

Commit 927cebc

Browse files
authored
Merge pull request #6039 from ranuka-laksika/unify_mcp
Update MCP documentation to reflect unified MCP capabilities across all app types
2 parents ecedaed + 0c3ac64 commit 927cebc

8 files changed

Lines changed: 56 additions & 8 deletions

File tree

en/asgardeo/docs/tutorials/end-to-end-mcp-authorization-with-asgardeo.md

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ Register the VetAssist MCP Server in {{ product_name }} as an MCP server (identi
7777
Define the scopes that the MCP server will use to ensure the correct access to its tools and resources. For our example use case, let’s define the following scopes.
7878

7979
- pet-profile:read Permission to get the authorized user’s Pet information
80-
- pet-profile:write Permission to add new pet information or update existing pet information
80+
- pet-profile:write Permission to add new pet information or update existing pet information
8181

8282
![ Configure scopes for VetAssist MCP Server tools]({{base_path}}/assets/img/tutorials/e2e-mcp-authz/configure-vetassist-mcp-scopes.png)
8383

@@ -104,30 +104,35 @@ Navigate to the Pet Owner role’s edit view, go to the Users tab and assign Bob
104104

105105
#### Configure the MCP client
106106

107+
To configure the MCP client, you need to register a new MCP client application in {{ product_name }}.
108+
107109
##### Register a new MCP client application
108110

109111
We need to have the Vet Assist AI application registered in Asgardeo, so that the registered MCP server can be authorized to the AI application and the application can securely access the MCP server on behalf of the authenticated user.
110112

111113
To register the MCP client,
112114

113115
- On {{ product_name }}, navigate to Applications > New Application
114-
- Select the MCP client application template.
116+
- Select the **MCP Client Application** template.
115117
- Provide the necessary details and click create.
116-
- **Name** - provide a meaningful name
117-
- **Redirect URL** - provide an endpoint in the VetAssist AI app that can receive and process the authorization code.
118+
- **Name** - provide a meaningful name
119+
- **Redirect URL** - provide an endpoint in the VetAssist AI app that can receive and process the authorization code.
118120

119121
![Register VetAssist MCP Client]({{base_path}}/assets/img/tutorials/e2e-mcp-authz/register-vetassist-mcp-client.png)
120122

123+
!!! note
124+
While the **MCP Client Application** template provides optimized defaults for MCP connections, you can also use other application types (Single Page App, Traditional Web App, Mobile App, or M2M App) to access MCP servers, except Digital Wallet applications.
125+
121126
Record the Client ID of the created application. We will need this when configuring {{ product_name }} in the Vet Assist application.
122127

123128
##### Authorize MCP server to the client
124129

125-
The registered MCP client needs to be authorized to access the MCP server. To do that,
130+
The registered application needs to be authorized to access the MCP server. To do that,
126131

127132
- Navigate to **Applications**.
128-
- Click on the MCP client application you created in the above step.
133+
- Click on the application you created in the above step.
129134
- Navigate to the **Authorization** tab.
130-
- Click on **Authorize an API Resource**.
135+
- Click on **Authorize Resource**.
131136
- Select MCP server from the Resource dropdown.
132137
- Select `pet-profile:read` and `pet-profile:write` scopes.
133138
- Click Finish.

en/includes/guides/agentic-ai/mcp/index.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,16 @@ MCP servers can be registered as protected resources in {{ product_name }}. This
3434

3535
## [Setting up MCP clients]({{base_path}}/guides/agentic-ai/mcp/register-mcp-client-app/)
3636

37+
{% if is_version == "next" or product_name == "Asgardeo" %}
38+
An MCP client is a connection component that host applications use to interface with MCP servers through dedicated, stateful sessions. When connecting to an MCP server, you can register the client application in {{ product_name }}, which also creates an OAuth 2.1 client meeting the necessary standards. Applications can be authorized with specific scopes that define their permitted access to MCP servers, ensuring they operate only within authorized boundaries and maintain a secure ecosystem for model interactions.
39+
40+
{{ product_name }} provides a specialized **MCP Client Application** template for quickly setting up applications optimized for MCP connections. However, MCP servers can also be accessed by most other application types (such as Single Page Applications, Traditional Web Applications, and Mobile Applications), with the exception of Digital Wallet applications.
41+
{% else %}
3742
An MCP client is a connection component that host applications use to interface with MCP servers through dedicated, stateful sessions. When connecting to an MCP server, you can register the client in {{ product_name }}, which also creates an OAuth 2.1 client meeting the necessary standards. Clients can be authorized with specific scopes that define their permitted access to MCP servers, ensuring they operate only within authorized boundaries and maintain a secure ecosystem for model interactions.
3843

44+
{{ product_name }} provides an application template with default configurations to register an MCP client with minimal effort.
45+
{% endif %}
46+
3947
!!! info
4048
Refer to the [MCP Client Registration guide]({{base_path}}/guides/agentic-ai/mcp/register-mcp-client-app/) for detailed steps on setting up MCP clients and authorizing them to access MCP servers.
4149

en/includes/guides/applications/register-mcp-client-app.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,14 @@
22

33
The Model Context Protocol (MCP) specification defines that authorization is initiated by MCP clients. These clients handle authorization flows, manage tokens and sessions with MCP servers, and provide end-user experiences based on user permissions.
44

5+
{% if is_version == "next" or product_name == "Asgardeo" %}
6+
{{ product_name }} provides an **MCP Client Application** template with default configurations to register an MCP client with minimal effort. This template has been configured to create an OAuth application that adheres to the guidelines and best practices outlined in the [MCP authorization specification](https://modelcontextprotocol.io/specification/2025-06-18/basic/authorization).
7+
8+
!!! info "Other Application Types"
9+
While the MCP Client Application template is optimized for MCP connections, MCP servers can also be accessed by most other application types in {{ product_name }}, including Single Page Applications, Traditional Web Applications, Mobile Applications, and M2M Applications. The only exception is Digital Wallet applications, which cannot access MCP servers.
10+
{% else %}
511
{{ product_name }} provides an application template with default configurations to register an MCP client with minimal effort. This template has been configured to create an OAuth application that adheres to the guidelines and best practices outlined in the [MCP authorization specification](https://modelcontextprotocol.io/specification/2025-06-18/basic/authorization).
12+
{% endif %}
613

714
## Register an MCP Client Application
815

en/includes/guides/authorization/mcp-server-authorization.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,13 +58,21 @@ To register an MCP server,
5858
Applications, by default, don't have permissions to access MCP servers. Administrators can selectively grant authorization for applications to use specific MCP servers, so that users logging into the application will have access to that MCP server, provided they're assigned to a role that grants the necessary permissions.
5959

6060
!!! note
61+
{% if is_version == "next" or product_name == "Asgardeo" %}
62+
MCP servers can be authorized to all OIDC application types including Custom OIDC applications, Traditional Web applications, Single-Page applications (SPA), Mobile applications, and Machine-to-Machine (M2M) applications. The [MCP Client Application]({{base_path}}/guides/applications/register-mcp-client-app/) template provides a pre-configured option for MCP-specific use cases. Digital Wallet applications can only access Verifiable Credential resources and cannot authorize MCP servers.
63+
{% else %}
6164
Currently MCP servers can only be authorized to applications that are created from the [MCP client Application]({{base_path}}/guides/applications/register-mcp-client-app/) template.
65+
{% endif %}
6266

6367
To authorize an application to consume an MCP server,
6468

6569
1. On the {{ product_name }} Console, go to **Applications**.
6670

71+
{% if is_version == "next" or product_name == "Asgardeo" %}
72+
2. Select your application and go to its **Authorization** tab.
73+
{% else %}
6774
2. Select the MCP client application and go to its **Authorization** tab.
75+
{% endif %}
6876

6977
3. Click **Authorize a resource**.
7078

@@ -80,7 +88,11 @@ To authorize an application to consume an MCP server,
8088
</tr>
8189
<tr>
8290
<td><b>Authorized Scopes</b></td>
91+
{% if is_version == "next" or product_name == "Asgardeo" %}
92+
<td>Select the scopes that the application should be able to request.</td>
93+
{% else %}
8394
<td>Select the scopes that the MCP client should be able to request.</td>
95+
{% endif %}
8496
</tr>
8597
</table>
8698

en/includes/quick-starts/agent-auth-py.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,10 @@ To allow your agent (or user acting through the agent) to authenticate and conne
5050
!!! Info
5151
The **authorized redirect URL** defines the location Asgardeo sends users to after a successful login, typically the address of the client application that connects to the MCP server.
5252
In this guide, the AI agent behaves as the client, which consists of a lightweight OAuth 2.1 callback server running at `http://localhost:6274/oauth/callback` to capture the authorization code. So, we will use this URL as the authorized redirect for this guide.
53+
{% if is_version == "next" or product_name == "Asgardeo" %}
54+
55+
While we're using the **MCP Client Application** template here for optimized MCP settings, you can also use other application types (Single Page App, Traditional Web App, Mobile App, or M2M App) to access MCP servers, except Digital Wallet applications.
56+
{% endif %}
5357

5458
Make a note of the **client-id** from the **Protocol** tab of the registered application. You will need it during the [Build an AI Agent](#build-an-ai-agent) section of this guide.
5559

en/includes/quick-starts/agent-auth-ts.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,10 @@ To allow your agent (or user acting through the agent) to authenticate and conne
5151
!!! Info
5252
The **authorized redirect URL** defines the location Asgardeo sends users to after a successful login, typically the address of the client application that connects to the MCP server.
5353
In this guide, the AI agent behaves as the client, which consists of a lightweight OAuth 2.1 callback server running at `http://localhost:3001/callback` to capture the authorization code. So, we will use this URL as the authorized redirect for this guide.
54+
{% if is_version == "next" or product_name == "Asgardeo" %}
55+
56+
While we're using the **MCP Client Application** template here for optimized MCP settings, you can also use other application types (Single Page App, Traditional Web App, Mobile App, or M2M App) to access MCP servers, except Digital Wallet applications.
57+
{% endif %}
5458

5559
Make a note of the **Client ID** from the **Protocol** tab of the registered application. You will need it during the [Build an AI Agent](#build-an-ai-agent) section of this guide.
5660

en/includes/quick-starts/mcp-auth-server-py.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,10 @@ To enable clients to sign in and safely connect to the MCP server, an applicatio
2727
!!! Info
2828
The authorized redirect URL defines the location Asgardeo sends users to after a successful login, typically the address of the client application that connects to the MCP server.
2929
For this guide, we will use ["MCP Inspector"](https://modelcontextprotocol.io/docs/tools/inspector) to test the MCP server, so we will use `http://localhost:6274/oauth/callback`, as the authorized redirect URL.
30+
{% if is_version == "next" or product_name == "Asgardeo" %}
31+
32+
While we're using the **MCP Client Application** template here for optimized MCP settings, you can also use other application types (Single Page App, Traditional Web App, Mobile App, or M2M App) to access MCP servers, except Digital Wallet applications.
33+
{% endif %}
3034

3135
Make a note of the **client-id** from the **Protocol** tab of the registered application. You will need it during the [Test the MCP server with authentication](#test-the-mcp-server-with-authentication) section of this guide.
3236

en/includes/quick-starts/mcp-auth-server.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -315,14 +315,18 @@ To register MCP Inspector as a MCP client in {{product_name}}:
315315

316316
<!-- markdownlint-disable MD007 -->
317317
- Sign in to {{ product_name }} console and navigate to **Applications > New Application**.
318-
- Select **MCP Client** and complete the wizard popup by providing:
318+
- Select **MCP Client Application** and complete the wizard popup by providing:
319319
- A suitable **name** *(e.g., MCPInspectorApp)*
320320
- The **authorized redirect URL** *(e.g., http://localhost:6274/oauth/callback/debug)*
321321
<!-- markdownlint-enable MD007 -->
322322

323323
!!! Info
324324
The authorized redirect URL determines where users are sent after sign-in, typically where the client app connecting to the MCP server is running.
325325
For this guide, we'll use ["MCP Inspector"](https://modelcontextprotocol.io/docs/tools/inspector) to test the MCP server, so we'll use `http://localhost:6274/oauth/callback/debug`, as the authorized redirect URL.
326+
{% if is_version == "next" or product_name == "Asgardeo" %}
327+
328+
While we're using the **MCP Client Application** template here for optimized MCP settings, you can also use other application types (Single Page App, Traditional Web App, Mobile App, or M2M App) to access MCP servers, except Digital Wallet applications.
329+
{% endif %}
326330

327331
Make a note of the **client-id** from the **Protocol** tab of the registered application. You will need it during next step.
328332

0 commit comments

Comments
 (0)