@microsoft/agents-a365-tooling 0.2.0-preview.1 → 0.2.0-preview.3
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.
- package/dist/cjs/McpToolServerConfigurationService.d.ts +34 -0
- package/dist/cjs/McpToolServerConfigurationService.d.ts.map +1 -1
- package/dist/cjs/McpToolServerConfigurationService.js +114 -5
- package/dist/cjs/McpToolServerConfigurationService.js.map +1 -1
- package/dist/cjs/Utility.d.ts +1 -1
- package/dist/cjs/Utility.js +2 -2
- package/dist/cjs/Utility.js.map +1 -1
- package/dist/cjs/configuration/ToolingConfiguration.d.ts +27 -0
- package/dist/cjs/configuration/ToolingConfiguration.d.ts.map +1 -1
- package/dist/cjs/configuration/ToolingConfiguration.js +52 -0
- package/dist/cjs/configuration/ToolingConfiguration.js.map +1 -1
- package/dist/cjs/contracts.d.ts +6 -0
- package/dist/cjs/contracts.d.ts.map +1 -1
- package/dist/esm/McpToolServerConfigurationService.d.ts +34 -0
- package/dist/esm/McpToolServerConfigurationService.d.ts.map +1 -1
- package/dist/esm/McpToolServerConfigurationService.js +115 -6
- package/dist/esm/McpToolServerConfigurationService.js.map +1 -1
- package/dist/esm/Utility.d.ts +1 -1
- package/dist/esm/Utility.js +2 -2
- package/dist/esm/Utility.js.map +1 -1
- package/dist/esm/configuration/ToolingConfiguration.d.ts +27 -0
- package/dist/esm/configuration/ToolingConfiguration.d.ts.map +1 -1
- package/dist/esm/configuration/ToolingConfiguration.js +51 -0
- package/dist/esm/configuration/ToolingConfiguration.js.map +1 -1
- package/dist/esm/contracts.d.ts +6 -0
- package/dist/esm/contracts.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -46,6 +46,40 @@ export declare class McpToolServerConfigurationService {
|
|
|
46
46
|
* @returns A promise resolving to an array of normalized MCP server configuration objects.
|
|
47
47
|
*/
|
|
48
48
|
listToolServers(turnContext: TurnContext, authorization: Authorization, authHandlerName: string, authToken?: string, options?: ToolOptions): Promise<MCPServerConfig[]>;
|
|
49
|
+
/**
|
|
50
|
+
* Acquire one token per unique audience across the provided server list and attach
|
|
51
|
+
* the correct `Authorization: Bearer` header to each server's headers.
|
|
52
|
+
* V1 servers (no `audience` field, or ATG AppId) all share the same token (one exchange).
|
|
53
|
+
* V2 servers each get a token scoped to their own audience GUID.
|
|
54
|
+
* Token acquisition is delegated to `acquire`, enabling different strategies in dev
|
|
55
|
+
* (env vars via createDevTokenAcquirer) and prod (OBO via createOboTokenAcquirer)
|
|
56
|
+
* while keeping scope resolution, deduplication, and header attachment identical.
|
|
57
|
+
*/
|
|
58
|
+
private attachPerAudienceTokens;
|
|
59
|
+
/**
|
|
60
|
+
* Returns a TokenAcquirer that resolves tokens from environment variables (local dev only).
|
|
61
|
+
* Resolution order per server:
|
|
62
|
+
* 1. BEARER_TOKEN_<MCPSERVERNAME_UPPER> — per-server token (effective for V2 unique audiences)
|
|
63
|
+
* 2. BEARER_TOKEN — shared fallback (V1 servers share one token)
|
|
64
|
+
* Returns null when neither variable is set; no Authorization header is attached.
|
|
65
|
+
* Emits a warning when a V2 server (distinct audience) falls back to the shared BEARER_TOKEN,
|
|
66
|
+
* because that token is scoped to the shared ATG audience and will cause a 401 at the server.
|
|
67
|
+
*/
|
|
68
|
+
private createDevTokenAcquirer;
|
|
69
|
+
/**
|
|
70
|
+
* Returns a TokenAcquirer for the deprecated legacy (agenticAppId, authToken) overload in prod.
|
|
71
|
+
* V1 servers (ATG shared scope) receive the caller-supplied authToken directly.
|
|
72
|
+
* V2 servers (per-audience scope) throw immediately — OBO exchange requires Authorization and
|
|
73
|
+
* authHandlerName which the legacy signature does not provide; callers must migrate to the
|
|
74
|
+
* TurnContext-based overload.
|
|
75
|
+
*/
|
|
76
|
+
private createLegacyProdTokenAcquirer;
|
|
77
|
+
/**
|
|
78
|
+
* Returns a TokenAcquirer that performs OBO token exchange via AgenticAuthenticationService.
|
|
79
|
+
* Throws if the exchange returns null so callers receive an explicit error rather than a
|
|
80
|
+
* silently missing Authorization header.
|
|
81
|
+
*/
|
|
82
|
+
private createOboTokenAcquirer;
|
|
49
83
|
/**
|
|
50
84
|
* Connect to the MCP server and return tools with names prefixed by the server name.
|
|
51
85
|
* Throws if the server URL is missing or the client fails to list tools.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpToolServerConfigurationService.d.ts","sourceRoot":"","sources":["../../src/McpToolServerConfigurationService.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAkB,sBAAsB,EAA2D,MAAM,gCAAgC,CAAC;AAClK,OAAO,EAAE,eAAe,EAA0B,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,EAAE,kBAAkB,EAAsB,MAAM,gBAAgB,CAAC;AAExE,OAAO,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"McpToolServerConfigurationService.d.ts","sourceRoot":"","sources":["../../src/McpToolServerConfigurationService.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAkB,sBAAsB,EAA2D,MAAM,gCAAgC,CAAC;AAClK,OAAO,EAAE,eAAe,EAA0B,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,EAAE,kBAAkB,EAAsB,MAAM,gBAAgB,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAmE,MAAM,iBAAiB,CAAC;AAWxH;;;GAGG;AACH,qBAAa,iCAAiC;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAW;IAClC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA+C;IAE9E;;;OAGG;gBACS,cAAc,CAAC,EAAE,sBAAsB,CAAC,oBAAoB,CAAC;IAIzE;;;;;;;OAOG;IACG,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAE1F;;;;;;;;OAQG;IACG,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAEjH;;;;;;;;;;OAUG;IACG,eAAe,CAAC,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAkF7K;;;;;;;;OAQG;YACW,uBAAuB;IAuBrC;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;IAiB9B;;;;;;OAMG;IACH,OAAO,CAAC,6BAA6B;IAcrC;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAgB9B;;;OAGG;IACG,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IA8B1G;;;;;;;;;;;;OAYG;IACG,eAAe,CAAC,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAEpH;;;;;;;;;;;;;OAaG;IACG,eAAe,CAAC,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAyE3I;;;;;;;;;OASG;YACW,qCAAqC;IA8BnD;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;YACW,+BAA+B;IAuC7C;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAI7B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAG/B"}
|
|
@@ -38,9 +38,18 @@ class McpToolServerConfigurationService {
|
|
|
38
38
|
}
|
|
39
39
|
const authToken = authTokenOrAuthorization;
|
|
40
40
|
const toolOptions = optionsOrAuthHandlerName;
|
|
41
|
-
|
|
41
|
+
const servers = await (this.isDevScenario()
|
|
42
42
|
? this.getMCPServerConfigsFromManifest()
|
|
43
43
|
: this.getMCPServerConfigsFromToolingGateway(agenticAppId, authToken, undefined, toolOptions));
|
|
44
|
+
// Apply per-audience tokens on the legacy path too, using the same structural path as the
|
|
45
|
+
// new overload so V2 servers are never silently missing an Authorization header.
|
|
46
|
+
// Dev: reads from BEARER_TOKEN_<NAME> / BEARER_TOKEN env vars, supports V1 and V2.
|
|
47
|
+
// Prod: uses the shared authToken for V1 servers; throws for V2 servers (OBO requires
|
|
48
|
+
// Authorization and authHandlerName — use the TurnContext-based overload instead).
|
|
49
|
+
const acquire = this.isDevScenario()
|
|
50
|
+
? this.createDevTokenAcquirer()
|
|
51
|
+
: this.createLegacyProdTokenAcquirer(authToken);
|
|
52
|
+
return await this.attachPerAudienceTokens(servers, acquire);
|
|
44
53
|
}
|
|
45
54
|
else {
|
|
46
55
|
// NEW PATH: listToolServers(turnContext, authorization, authHandlerName, authToken?, options?)
|
|
@@ -68,11 +77,100 @@ class McpToolServerConfigurationService {
|
|
|
68
77
|
// to avoid duplicate validation (it's also called by the legacy path)
|
|
69
78
|
// Resolve agenticAppId from TurnContext
|
|
70
79
|
const agenticAppId = agents_a365_runtime_1.Utility.ResolveAgentIdentity(turnContext, authToken);
|
|
71
|
-
|
|
80
|
+
// Discover servers: manifest in dev, gateway in prod
|
|
81
|
+
const servers = await (this.isDevScenario()
|
|
72
82
|
? this.getMCPServerConfigsFromManifest()
|
|
73
83
|
: this.getMCPServerConfigsFromToolingGateway(agenticAppId, authToken, turnContext, toolOptions));
|
|
84
|
+
// Acquire and attach per-server tokens via the same structural path in both envs.
|
|
85
|
+
// Token source differs: env vars in dev, OBO in prod.
|
|
86
|
+
const acquire = this.isDevScenario()
|
|
87
|
+
? this.createDevTokenAcquirer()
|
|
88
|
+
: this.createOboTokenAcquirer(authorization, authHandlerName, turnContext);
|
|
89
|
+
return await this.attachPerAudienceTokens(servers, acquire);
|
|
74
90
|
}
|
|
75
91
|
}
|
|
92
|
+
/**
|
|
93
|
+
* Acquire one token per unique audience across the provided server list and attach
|
|
94
|
+
* the correct `Authorization: Bearer` header to each server's headers.
|
|
95
|
+
* V1 servers (no `audience` field, or ATG AppId) all share the same token (one exchange).
|
|
96
|
+
* V2 servers each get a token scoped to their own audience GUID.
|
|
97
|
+
* Token acquisition is delegated to `acquire`, enabling different strategies in dev
|
|
98
|
+
* (env vars via createDevTokenAcquirer) and prod (OBO via createOboTokenAcquirer)
|
|
99
|
+
* while keeping scope resolution, deduplication, and header attachment identical.
|
|
100
|
+
*/
|
|
101
|
+
async attachPerAudienceTokens(servers, acquire) {
|
|
102
|
+
// Fetch once so scope resolution and the legacy-path guard use the same value.
|
|
103
|
+
const sharedScope = this.configProvider.getConfiguration().mcpPlatformAuthenticationScope;
|
|
104
|
+
const tokenCache = new Map(); // scope → token (null = no token available)
|
|
105
|
+
const result = [];
|
|
106
|
+
for (const server of servers) {
|
|
107
|
+
const scope = (0, configuration_1.resolveTokenScopeForServer)(server, sharedScope);
|
|
108
|
+
if (!tokenCache.has(scope)) {
|
|
109
|
+
tokenCache.set(scope, await acquire(server, scope));
|
|
110
|
+
}
|
|
111
|
+
const token = tokenCache.get(scope);
|
|
112
|
+
result.push(token
|
|
113
|
+
? { ...server, headers: { ...server.headers, Authorization: `Bearer ${token}` } }
|
|
114
|
+
: server // no token available — dev no-op; prod acquirer would have thrown already
|
|
115
|
+
);
|
|
116
|
+
}
|
|
117
|
+
return result;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Returns a TokenAcquirer that resolves tokens from environment variables (local dev only).
|
|
121
|
+
* Resolution order per server:
|
|
122
|
+
* 1. BEARER_TOKEN_<MCPSERVERNAME_UPPER> — per-server token (effective for V2 unique audiences)
|
|
123
|
+
* 2. BEARER_TOKEN — shared fallback (V1 servers share one token)
|
|
124
|
+
* Returns null when neither variable is set; no Authorization header is attached.
|
|
125
|
+
* Emits a warning when a V2 server (distinct audience) falls back to the shared BEARER_TOKEN,
|
|
126
|
+
* because that token is scoped to the shared ATG audience and will cause a 401 at the server.
|
|
127
|
+
*/
|
|
128
|
+
createDevTokenAcquirer() {
|
|
129
|
+
const sharedScope = this.configProvider.getConfiguration().mcpPlatformAuthenticationScope;
|
|
130
|
+
return (server, scope) => {
|
|
131
|
+
const serverName = server.mcpServerName ?? '';
|
|
132
|
+
const config = this.configProvider.getConfiguration();
|
|
133
|
+
const token = config.getBearerTokenForServer(serverName);
|
|
134
|
+
if (token && !config.hasPerServerBearerToken(serverName) && scope !== sharedScope) {
|
|
135
|
+
this.logger.warn(`Dev: MCP server '${serverName}' requires scope '${scope}' but only BEARER_TOKEN is set. ` +
|
|
136
|
+
`The shared token is scoped to a different audience and will likely cause a 401. ` +
|
|
137
|
+
`Set BEARER_TOKEN_${serverName.toUpperCase()} to a token acquired for the correct audience.`);
|
|
138
|
+
}
|
|
139
|
+
return Promise.resolve(token ?? null);
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Returns a TokenAcquirer for the deprecated legacy (agenticAppId, authToken) overload in prod.
|
|
144
|
+
* V1 servers (ATG shared scope) receive the caller-supplied authToken directly.
|
|
145
|
+
* V2 servers (per-audience scope) throw immediately — OBO exchange requires Authorization and
|
|
146
|
+
* authHandlerName which the legacy signature does not provide; callers must migrate to the
|
|
147
|
+
* TurnContext-based overload.
|
|
148
|
+
*/
|
|
149
|
+
createLegacyProdTokenAcquirer(authToken) {
|
|
150
|
+
const sharedScope = this.configProvider.getConfiguration().mcpPlatformAuthenticationScope;
|
|
151
|
+
return (server, scope) => {
|
|
152
|
+
if (scope !== sharedScope) {
|
|
153
|
+
throw new Error(`MCP server '${server.mcpServerName}' requires a per-audience token (scope: '${scope}'). ` +
|
|
154
|
+
`Per-audience token exchange is not supported by the deprecated listToolServers(agenticAppId, authToken) overload. ` +
|
|
155
|
+
`Migrate to listToolServers(turnContext, authorization, authHandlerName) instead.`);
|
|
156
|
+
}
|
|
157
|
+
return Promise.resolve(authToken);
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Returns a TokenAcquirer that performs OBO token exchange via AgenticAuthenticationService.
|
|
162
|
+
* Throws if the exchange returns null so callers receive an explicit error rather than a
|
|
163
|
+
* silently missing Authorization header.
|
|
164
|
+
*/
|
|
165
|
+
createOboTokenAcquirer(authorization, authHandlerName, turnContext) {
|
|
166
|
+
return async (server, scope) => {
|
|
167
|
+
const token = await agents_a365_runtime_1.AgenticAuthenticationService.GetAgenticUserToken(authorization, authHandlerName, turnContext, [scope]);
|
|
168
|
+
if (!token) {
|
|
169
|
+
throw new Error(`Failed to obtain token for MCP server '${server.mcpServerName}' (scope: ${scope})`);
|
|
170
|
+
}
|
|
171
|
+
return token;
|
|
172
|
+
};
|
|
173
|
+
}
|
|
76
174
|
/**
|
|
77
175
|
* Connect to the MCP server and return tools with names prefixed by the server name.
|
|
78
176
|
* Throws if the server URL is missing or the client fails to list tools.
|
|
@@ -175,7 +273,15 @@ class McpToolServerConfigurationService {
|
|
|
175
273
|
headers: Utility_1.Utility.GetToolRequestHeaders(authToken, turnContext, options),
|
|
176
274
|
timeout: 10000 // 10 seconds timeout
|
|
177
275
|
});
|
|
178
|
-
|
|
276
|
+
const rawServers = response.data || [];
|
|
277
|
+
return rawServers.map(s => ({
|
|
278
|
+
mcpServerName: s.mcpServerName,
|
|
279
|
+
url: s.url,
|
|
280
|
+
headers: s.headers,
|
|
281
|
+
audience: s.audience,
|
|
282
|
+
scope: s.scope,
|
|
283
|
+
publisher: s.publisher,
|
|
284
|
+
}));
|
|
179
285
|
}
|
|
180
286
|
catch (err) {
|
|
181
287
|
const error = err;
|
|
@@ -230,7 +336,10 @@ class McpToolServerConfigurationService {
|
|
|
230
336
|
return {
|
|
231
337
|
mcpServerName: serverName,
|
|
232
338
|
url: s.url || this.buildMcpServerUrl(serverName),
|
|
233
|
-
headers: s.headers
|
|
339
|
+
headers: s.headers,
|
|
340
|
+
audience: s.audience,
|
|
341
|
+
scope: s.scope,
|
|
342
|
+
publisher: s.publisher,
|
|
234
343
|
};
|
|
235
344
|
});
|
|
236
345
|
}
|
|
@@ -258,7 +367,7 @@ class McpToolServerConfigurationService {
|
|
|
258
367
|
* Construct the tooling gateway URL for a given agent identity.
|
|
259
368
|
*/
|
|
260
369
|
getToolingGatewayUrl(agenticAppId) {
|
|
261
|
-
return `${this.getMcpPlatformBaseUrl()}/agents/${agenticAppId}/mcpServers`;
|
|
370
|
+
return `${this.getMcpPlatformBaseUrl()}/agents/v2/${agenticAppId}/mcpServers`;
|
|
262
371
|
}
|
|
263
372
|
/**
|
|
264
373
|
* Build the full URL for accessing a specific MCP server.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpToolServerConfigurationService.js","sourceRoot":"","sources":["../../src/McpToolServerConfigurationService.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;;AAElC,4CAAoB;AACpB,gDAAwB;AACxB,kDAA0B;AAE1B,wEAAkK;AAGlK,uCAAoC;AACpC,
|
|
1
|
+
{"version":3,"file":"McpToolServerConfigurationService.js","sourceRoot":"","sources":["../../src/McpToolServerConfigurationService.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/Utility.d.ts
CHANGED
|
@@ -52,7 +52,7 @@ export declare class Utility {
|
|
|
52
52
|
*
|
|
53
53
|
* Example:
|
|
54
54
|
* Utility.GetToolingGatewayForDigitalWorker(agenticAppId)
|
|
55
|
-
* // => "https://agent365.svc.cloud.microsoft/agents/{agenticAppId}/mcpServers"
|
|
55
|
+
* // => "https://agent365.svc.cloud.microsoft/agents/v2/{agenticAppId}/mcpServers"
|
|
56
56
|
*
|
|
57
57
|
* @param agenticAppId - The unique identifier for the agent identity.
|
|
58
58
|
* @param configProvider - Optional configuration provider. Defaults to defaultToolingConfigurationProvider.
|
package/dist/cjs/Utility.js
CHANGED
|
@@ -120,7 +120,7 @@ class Utility {
|
|
|
120
120
|
*
|
|
121
121
|
* Example:
|
|
122
122
|
* Utility.GetToolingGatewayForDigitalWorker(agenticAppId)
|
|
123
|
-
* // => "https://agent365.svc.cloud.microsoft/agents/{agenticAppId}/mcpServers"
|
|
123
|
+
* // => "https://agent365.svc.cloud.microsoft/agents/v2/{agenticAppId}/mcpServers"
|
|
124
124
|
*
|
|
125
125
|
* @param agenticAppId - The unique identifier for the agent identity.
|
|
126
126
|
* @param configProvider - Optional configuration provider. Defaults to defaultToolingConfigurationProvider.
|
|
@@ -128,7 +128,7 @@ class Utility {
|
|
|
128
128
|
* @deprecated This method is for internal use only. Use McpToolServerConfigurationService.listToolServers() instead.
|
|
129
129
|
*/
|
|
130
130
|
static GetToolingGatewayForDigitalWorker(agenticAppId, configProvider) {
|
|
131
|
-
return `${this.getMcpPlatformBaseUrl(configProvider)}/agents/${agenticAppId}/mcpServers`;
|
|
131
|
+
return `${this.getMcpPlatformBaseUrl(configProvider)}/agents/v2/${agenticAppId}/mcpServers`;
|
|
132
132
|
}
|
|
133
133
|
/**
|
|
134
134
|
* Get the base URL used to query MCP environments.
|
package/dist/cjs/Utility.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Utility.js","sourceRoot":"","sources":["../../src/Utility.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Utility.js","sourceRoot":"","sources":["../../src/Utility.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
import { RuntimeConfiguration } from '@microsoft/agents-a365-runtime';
|
|
2
2
|
import { ToolingConfigurationOptions } from './ToolingConfigurationOptions';
|
|
3
|
+
import { MCPServerConfig } from '../contracts';
|
|
4
|
+
/**
|
|
5
|
+
* Resolve the OAuth scope to request for a given MCP server.
|
|
6
|
+
*
|
|
7
|
+
* V2 servers carry their own audience in the `audience` field and get a per-audience token.
|
|
8
|
+
* V1 servers (no `audience`, or audience matching the shared scope's own audience in plain
|
|
9
|
+
* or api:// form) fall back to `sharedScope` — the configured mcpPlatformAuthenticationScope.
|
|
10
|
+
*
|
|
11
|
+
* @param server The MCP server config returned by the gateway or manifest.
|
|
12
|
+
* @param sharedScope The configured shared scope (mcpPlatformAuthenticationScope).
|
|
13
|
+
* Defaults to the prod ATG scope so that external callers without a custom config
|
|
14
|
+
* continue to work without passing the argument.
|
|
15
|
+
*/
|
|
16
|
+
export declare function resolveTokenScopeForServer(server: MCPServerConfig, sharedScope?: string): string;
|
|
3
17
|
/**
|
|
4
18
|
* Configuration for tooling package.
|
|
5
19
|
* Inherits runtime settings and adds tooling-specific settings.
|
|
@@ -20,5 +34,18 @@ export declare class ToolingConfiguration extends RuntimeConfiguration {
|
|
|
20
34
|
* Trims whitespace to prevent token exchange failures.
|
|
21
35
|
*/
|
|
22
36
|
get mcpPlatformAuthenticationScope(): string;
|
|
37
|
+
/**
|
|
38
|
+
* Returns the dev-mode bearer token for an MCP server by name.
|
|
39
|
+
* Checks BEARER_TOKEN_<SERVERNAME_UPPER> first, then falls back to BEARER_TOKEN.
|
|
40
|
+
* Returns undefined when the variable is not set (no Authorization header will be attached).
|
|
41
|
+
*/
|
|
42
|
+
getBearerTokenForServer(mcpServerName: string): string | undefined;
|
|
43
|
+
/**
|
|
44
|
+
* Returns true when a per-server bearer token env var (BEARER_TOKEN_<SERVERNAME_UPPER>)
|
|
45
|
+
* is explicitly set for the given server, false when only the shared BEARER_TOKEN fallback
|
|
46
|
+
* would be used. Used to detect V2 servers that are silently falling back to a
|
|
47
|
+
* wrong-audience token in dev mode.
|
|
48
|
+
*/
|
|
49
|
+
hasPerServerBearerToken(mcpServerName: string): boolean;
|
|
23
50
|
}
|
|
24
51
|
//# sourceMappingURL=ToolingConfiguration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolingConfiguration.d.ts","sourceRoot":"","sources":["../../../src/configuration/ToolingConfiguration.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"ToolingConfiguration.d.ts","sourceRoot":"","sources":["../../../src/configuration/ToolingConfiguration.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAM/C;;;;;;;;;;;GAWG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,eAAe,EACvB,WAAW,GAAE,MAA+C,GAC3D,MAAM,CAoBR;AAUD;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,oBAAoB;IAE5D,SAAS,KAAK,gBAAgB,IAAI,2BAA2B,CAE5D;gBAEW,SAAS,CAAC,EAAE,2BAA2B;IAMnD,IAAI,mBAAmB,IAAI,MAAM,CAQhC;IAED;;;;OAIG;IACH,IAAI,kBAAkB,IAAI,OAAO,CAKhC;IAED;;;;OAIG;IACH,IAAI,8BAA8B,IAAI,MAAM,CAQ3C;IAED;;;;OAIG;IACH,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAKlE;;;;;OAKG;IACH,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;CAIxD"}
|
|
@@ -3,10 +3,43 @@
|
|
|
3
3
|
// Licensed under the MIT License.
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.ToolingConfiguration = void 0;
|
|
6
|
+
exports.resolveTokenScopeForServer = resolveTokenScopeForServer;
|
|
6
7
|
const agents_a365_runtime_1 = require("@microsoft/agents-a365-runtime");
|
|
7
8
|
// Constants for tooling-specific settings
|
|
8
9
|
const MCP_PLATFORM_PROD_BASE_URL = 'https://agent365.svc.cloud.microsoft';
|
|
9
10
|
const PROD_MCP_PLATFORM_AUTHENTICATION_SCOPE = 'ea9ffc3e-8a23-4a7d-836d-234d7c7565c1/.default';
|
|
11
|
+
/**
|
|
12
|
+
* Resolve the OAuth scope to request for a given MCP server.
|
|
13
|
+
*
|
|
14
|
+
* V2 servers carry their own audience in the `audience` field and get a per-audience token.
|
|
15
|
+
* V1 servers (no `audience`, or audience matching the shared scope's own audience in plain
|
|
16
|
+
* or api:// form) fall back to `sharedScope` — the configured mcpPlatformAuthenticationScope.
|
|
17
|
+
*
|
|
18
|
+
* @param server The MCP server config returned by the gateway or manifest.
|
|
19
|
+
* @param sharedScope The configured shared scope (mcpPlatformAuthenticationScope).
|
|
20
|
+
* Defaults to the prod ATG scope so that external callers without a custom config
|
|
21
|
+
* continue to work without passing the argument.
|
|
22
|
+
*/
|
|
23
|
+
function resolveTokenScopeForServer(server, sharedScope = PROD_MCP_PLATFORM_AUTHENTICATION_SCOPE) {
|
|
24
|
+
if (server.audience) {
|
|
25
|
+
// Extract the audience portion of sharedScope (everything before the last '/').
|
|
26
|
+
// e.g. 'ea9ffc3e-.../.default' → 'ea9ffc3e-...'
|
|
27
|
+
// 'api://ea9ffc3e-.../.default' → 'api://ea9ffc3e-...'
|
|
28
|
+
const sharedAudience = sharedScope.slice(0, sharedScope.lastIndexOf('/'));
|
|
29
|
+
// Build the alternate form so we match both 'guid' and 'api://guid'.
|
|
30
|
+
const sharedAudienceAlt = sharedAudience.startsWith('api://')
|
|
31
|
+
? sharedAudience.slice(6) // 'api://guid' → 'guid'
|
|
32
|
+
: `api://${sharedAudience}`; // 'guid' → 'api://guid'
|
|
33
|
+
if (server.audience !== sharedAudience && server.audience !== sharedAudienceAlt) {
|
|
34
|
+
// V2 server: use its own audience with explicit scope or /.default fallback.
|
|
35
|
+
return server.scope
|
|
36
|
+
? `${server.audience}/${server.scope}`
|
|
37
|
+
: `${server.audience}/.default`;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
// V1 server: no audience, or audience matches the shared ATG audience.
|
|
41
|
+
return sharedScope;
|
|
42
|
+
}
|
|
10
43
|
/**
|
|
11
44
|
* Normalize URL by trimming whitespace and removing trailing slashes.
|
|
12
45
|
* Prevents double-slash issues in URL construction (e.g., "https://example.com//api").
|
|
@@ -61,6 +94,25 @@ class ToolingConfiguration extends agents_a365_runtime_1.RuntimeConfiguration {
|
|
|
61
94
|
return envValue;
|
|
62
95
|
return PROD_MCP_PLATFORM_AUTHENTICATION_SCOPE;
|
|
63
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* Returns the dev-mode bearer token for an MCP server by name.
|
|
99
|
+
* Checks BEARER_TOKEN_<SERVERNAME_UPPER> first, then falls back to BEARER_TOKEN.
|
|
100
|
+
* Returns undefined when the variable is not set (no Authorization header will be attached).
|
|
101
|
+
*/
|
|
102
|
+
getBearerTokenForServer(mcpServerName) {
|
|
103
|
+
const key = mcpServerName.toUpperCase();
|
|
104
|
+
return process.env[`BEARER_TOKEN_${key}`] ?? process.env['BEARER_TOKEN'];
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Returns true when a per-server bearer token env var (BEARER_TOKEN_<SERVERNAME_UPPER>)
|
|
108
|
+
* is explicitly set for the given server, false when only the shared BEARER_TOKEN fallback
|
|
109
|
+
* would be used. Used to detect V2 servers that are silently falling back to a
|
|
110
|
+
* wrong-audience token in dev mode.
|
|
111
|
+
*/
|
|
112
|
+
hasPerServerBearerToken(mcpServerName) {
|
|
113
|
+
const key = mcpServerName.toUpperCase();
|
|
114
|
+
return !!process.env[`BEARER_TOKEN_${key}`];
|
|
115
|
+
}
|
|
64
116
|
}
|
|
65
117
|
exports.ToolingConfiguration = ToolingConfiguration;
|
|
66
118
|
//# sourceMappingURL=ToolingConfiguration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolingConfiguration.js","sourceRoot":"","sources":["../../../src/configuration/ToolingConfiguration.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;
|
|
1
|
+
{"version":3,"file":"ToolingConfiguration.js","sourceRoot":"","sources":["../../../src/configuration/ToolingConfiguration.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/contracts.d.ts
CHANGED
|
@@ -2,10 +2,16 @@ export interface MCPServerConfig {
|
|
|
2
2
|
mcpServerName: string;
|
|
3
3
|
url: string;
|
|
4
4
|
headers?: Record<string, string>;
|
|
5
|
+
audience?: string;
|
|
6
|
+
scope?: string;
|
|
7
|
+
publisher?: string;
|
|
5
8
|
}
|
|
6
9
|
export type MCPServerManifestEntry = {
|
|
7
10
|
url?: string;
|
|
8
11
|
headers?: Record<string, string>;
|
|
12
|
+
audience?: string;
|
|
13
|
+
scope?: string;
|
|
14
|
+
publisher?: string;
|
|
9
15
|
} & ({
|
|
10
16
|
mcpServerName: string;
|
|
11
17
|
mcpServerUniqueName?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/contracts.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/contracts.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,CACA;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAAE,GACvD;IAAE,mBAAmB,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAC1D,CAAC;AAEF,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,WAAW;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B"}
|
|
@@ -46,6 +46,40 @@ export declare class McpToolServerConfigurationService {
|
|
|
46
46
|
* @returns A promise resolving to an array of normalized MCP server configuration objects.
|
|
47
47
|
*/
|
|
48
48
|
listToolServers(turnContext: TurnContext, authorization: Authorization, authHandlerName: string, authToken?: string, options?: ToolOptions): Promise<MCPServerConfig[]>;
|
|
49
|
+
/**
|
|
50
|
+
* Acquire one token per unique audience across the provided server list and attach
|
|
51
|
+
* the correct `Authorization: Bearer` header to each server's headers.
|
|
52
|
+
* V1 servers (no `audience` field, or ATG AppId) all share the same token (one exchange).
|
|
53
|
+
* V2 servers each get a token scoped to their own audience GUID.
|
|
54
|
+
* Token acquisition is delegated to `acquire`, enabling different strategies in dev
|
|
55
|
+
* (env vars via createDevTokenAcquirer) and prod (OBO via createOboTokenAcquirer)
|
|
56
|
+
* while keeping scope resolution, deduplication, and header attachment identical.
|
|
57
|
+
*/
|
|
58
|
+
private attachPerAudienceTokens;
|
|
59
|
+
/**
|
|
60
|
+
* Returns a TokenAcquirer that resolves tokens from environment variables (local dev only).
|
|
61
|
+
* Resolution order per server:
|
|
62
|
+
* 1. BEARER_TOKEN_<MCPSERVERNAME_UPPER> — per-server token (effective for V2 unique audiences)
|
|
63
|
+
* 2. BEARER_TOKEN — shared fallback (V1 servers share one token)
|
|
64
|
+
* Returns null when neither variable is set; no Authorization header is attached.
|
|
65
|
+
* Emits a warning when a V2 server (distinct audience) falls back to the shared BEARER_TOKEN,
|
|
66
|
+
* because that token is scoped to the shared ATG audience and will cause a 401 at the server.
|
|
67
|
+
*/
|
|
68
|
+
private createDevTokenAcquirer;
|
|
69
|
+
/**
|
|
70
|
+
* Returns a TokenAcquirer for the deprecated legacy (agenticAppId, authToken) overload in prod.
|
|
71
|
+
* V1 servers (ATG shared scope) receive the caller-supplied authToken directly.
|
|
72
|
+
* V2 servers (per-audience scope) throw immediately — OBO exchange requires Authorization and
|
|
73
|
+
* authHandlerName which the legacy signature does not provide; callers must migrate to the
|
|
74
|
+
* TurnContext-based overload.
|
|
75
|
+
*/
|
|
76
|
+
private createLegacyProdTokenAcquirer;
|
|
77
|
+
/**
|
|
78
|
+
* Returns a TokenAcquirer that performs OBO token exchange via AgenticAuthenticationService.
|
|
79
|
+
* Throws if the exchange returns null so callers receive an explicit error rather than a
|
|
80
|
+
* silently missing Authorization header.
|
|
81
|
+
*/
|
|
82
|
+
private createOboTokenAcquirer;
|
|
49
83
|
/**
|
|
50
84
|
* Connect to the MCP server and return tools with names prefixed by the server name.
|
|
51
85
|
* Throws if the server URL is missing or the client fails to list tools.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpToolServerConfigurationService.d.ts","sourceRoot":"","sources":["../../src/McpToolServerConfigurationService.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAkB,sBAAsB,EAA2D,MAAM,gCAAgC,CAAC;AAClK,OAAO,EAAE,eAAe,EAA0B,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,EAAE,kBAAkB,EAAsB,MAAM,gBAAgB,CAAC;AAExE,OAAO,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"McpToolServerConfigurationService.d.ts","sourceRoot":"","sources":["../../src/McpToolServerConfigurationService.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAkB,sBAAsB,EAA2D,MAAM,gCAAgC,CAAC;AAClK,OAAO,EAAE,eAAe,EAA0B,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,EAAE,kBAAkB,EAAsB,MAAM,gBAAgB,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAmE,MAAM,iBAAiB,CAAC;AAWxH;;;GAGG;AACH,qBAAa,iCAAiC;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAW;IAClC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA+C;IAE9E;;;OAGG;gBACS,cAAc,CAAC,EAAE,sBAAsB,CAAC,oBAAoB,CAAC;IAIzE;;;;;;;OAOG;IACG,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAE1F;;;;;;;;OAQG;IACG,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAEjH;;;;;;;;;;OAUG;IACG,eAAe,CAAC,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAkF7K;;;;;;;;OAQG;YACW,uBAAuB;IAuBrC;;;;;;;;OAQG;IACH,OAAO,CAAC,sBAAsB;IAiB9B;;;;;;OAMG;IACH,OAAO,CAAC,6BAA6B;IAcrC;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAgB9B;;;OAGG;IACG,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IA8B1G;;;;;;;;;;;;OAYG;IACG,eAAe,CAAC,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAEpH;;;;;;;;;;;;;OAaG;IACG,eAAe,CAAC,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAyE3I;;;;;;;;;OASG;YACW,qCAAqC;IA8BnD;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;YACW,+BAA+B;IAuC7C;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAI7B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;OAEG;IACH,OAAO,CAAC,sBAAsB;CAG/B"}
|
|
@@ -5,7 +5,7 @@ import path from 'path';
|
|
|
5
5
|
import axios from 'axios';
|
|
6
6
|
import { OperationResult, OperationError, AgenticAuthenticationService, Utility as RuntimeUtility } from '@microsoft/agents-a365-runtime';
|
|
7
7
|
import { Utility } from './Utility';
|
|
8
|
-
import { defaultToolingConfigurationProvider } from './configuration';
|
|
8
|
+
import { defaultToolingConfigurationProvider, resolveTokenScopeForServer } from './configuration';
|
|
9
9
|
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';
|
|
10
10
|
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
|
|
11
11
|
/**
|
|
@@ -32,9 +32,18 @@ export class McpToolServerConfigurationService {
|
|
|
32
32
|
}
|
|
33
33
|
const authToken = authTokenOrAuthorization;
|
|
34
34
|
const toolOptions = optionsOrAuthHandlerName;
|
|
35
|
-
|
|
35
|
+
const servers = await (this.isDevScenario()
|
|
36
36
|
? this.getMCPServerConfigsFromManifest()
|
|
37
37
|
: this.getMCPServerConfigsFromToolingGateway(agenticAppId, authToken, undefined, toolOptions));
|
|
38
|
+
// Apply per-audience tokens on the legacy path too, using the same structural path as the
|
|
39
|
+
// new overload so V2 servers are never silently missing an Authorization header.
|
|
40
|
+
// Dev: reads from BEARER_TOKEN_<NAME> / BEARER_TOKEN env vars, supports V1 and V2.
|
|
41
|
+
// Prod: uses the shared authToken for V1 servers; throws for V2 servers (OBO requires
|
|
42
|
+
// Authorization and authHandlerName — use the TurnContext-based overload instead).
|
|
43
|
+
const acquire = this.isDevScenario()
|
|
44
|
+
? this.createDevTokenAcquirer()
|
|
45
|
+
: this.createLegacyProdTokenAcquirer(authToken);
|
|
46
|
+
return await this.attachPerAudienceTokens(servers, acquire);
|
|
38
47
|
}
|
|
39
48
|
else {
|
|
40
49
|
// NEW PATH: listToolServers(turnContext, authorization, authHandlerName, authToken?, options?)
|
|
@@ -62,11 +71,100 @@ export class McpToolServerConfigurationService {
|
|
|
62
71
|
// to avoid duplicate validation (it's also called by the legacy path)
|
|
63
72
|
// Resolve agenticAppId from TurnContext
|
|
64
73
|
const agenticAppId = RuntimeUtility.ResolveAgentIdentity(turnContext, authToken);
|
|
65
|
-
|
|
74
|
+
// Discover servers: manifest in dev, gateway in prod
|
|
75
|
+
const servers = await (this.isDevScenario()
|
|
66
76
|
? this.getMCPServerConfigsFromManifest()
|
|
67
77
|
: this.getMCPServerConfigsFromToolingGateway(agenticAppId, authToken, turnContext, toolOptions));
|
|
78
|
+
// Acquire and attach per-server tokens via the same structural path in both envs.
|
|
79
|
+
// Token source differs: env vars in dev, OBO in prod.
|
|
80
|
+
const acquire = this.isDevScenario()
|
|
81
|
+
? this.createDevTokenAcquirer()
|
|
82
|
+
: this.createOboTokenAcquirer(authorization, authHandlerName, turnContext);
|
|
83
|
+
return await this.attachPerAudienceTokens(servers, acquire);
|
|
68
84
|
}
|
|
69
85
|
}
|
|
86
|
+
/**
|
|
87
|
+
* Acquire one token per unique audience across the provided server list and attach
|
|
88
|
+
* the correct `Authorization: Bearer` header to each server's headers.
|
|
89
|
+
* V1 servers (no `audience` field, or ATG AppId) all share the same token (one exchange).
|
|
90
|
+
* V2 servers each get a token scoped to their own audience GUID.
|
|
91
|
+
* Token acquisition is delegated to `acquire`, enabling different strategies in dev
|
|
92
|
+
* (env vars via createDevTokenAcquirer) and prod (OBO via createOboTokenAcquirer)
|
|
93
|
+
* while keeping scope resolution, deduplication, and header attachment identical.
|
|
94
|
+
*/
|
|
95
|
+
async attachPerAudienceTokens(servers, acquire) {
|
|
96
|
+
// Fetch once so scope resolution and the legacy-path guard use the same value.
|
|
97
|
+
const sharedScope = this.configProvider.getConfiguration().mcpPlatformAuthenticationScope;
|
|
98
|
+
const tokenCache = new Map(); // scope → token (null = no token available)
|
|
99
|
+
const result = [];
|
|
100
|
+
for (const server of servers) {
|
|
101
|
+
const scope = resolveTokenScopeForServer(server, sharedScope);
|
|
102
|
+
if (!tokenCache.has(scope)) {
|
|
103
|
+
tokenCache.set(scope, await acquire(server, scope));
|
|
104
|
+
}
|
|
105
|
+
const token = tokenCache.get(scope);
|
|
106
|
+
result.push(token
|
|
107
|
+
? { ...server, headers: { ...server.headers, Authorization: `Bearer ${token}` } }
|
|
108
|
+
: server // no token available — dev no-op; prod acquirer would have thrown already
|
|
109
|
+
);
|
|
110
|
+
}
|
|
111
|
+
return result;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Returns a TokenAcquirer that resolves tokens from environment variables (local dev only).
|
|
115
|
+
* Resolution order per server:
|
|
116
|
+
* 1. BEARER_TOKEN_<MCPSERVERNAME_UPPER> — per-server token (effective for V2 unique audiences)
|
|
117
|
+
* 2. BEARER_TOKEN — shared fallback (V1 servers share one token)
|
|
118
|
+
* Returns null when neither variable is set; no Authorization header is attached.
|
|
119
|
+
* Emits a warning when a V2 server (distinct audience) falls back to the shared BEARER_TOKEN,
|
|
120
|
+
* because that token is scoped to the shared ATG audience and will cause a 401 at the server.
|
|
121
|
+
*/
|
|
122
|
+
createDevTokenAcquirer() {
|
|
123
|
+
const sharedScope = this.configProvider.getConfiguration().mcpPlatformAuthenticationScope;
|
|
124
|
+
return (server, scope) => {
|
|
125
|
+
const serverName = server.mcpServerName ?? '';
|
|
126
|
+
const config = this.configProvider.getConfiguration();
|
|
127
|
+
const token = config.getBearerTokenForServer(serverName);
|
|
128
|
+
if (token && !config.hasPerServerBearerToken(serverName) && scope !== sharedScope) {
|
|
129
|
+
this.logger.warn(`Dev: MCP server '${serverName}' requires scope '${scope}' but only BEARER_TOKEN is set. ` +
|
|
130
|
+
`The shared token is scoped to a different audience and will likely cause a 401. ` +
|
|
131
|
+
`Set BEARER_TOKEN_${serverName.toUpperCase()} to a token acquired for the correct audience.`);
|
|
132
|
+
}
|
|
133
|
+
return Promise.resolve(token ?? null);
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Returns a TokenAcquirer for the deprecated legacy (agenticAppId, authToken) overload in prod.
|
|
138
|
+
* V1 servers (ATG shared scope) receive the caller-supplied authToken directly.
|
|
139
|
+
* V2 servers (per-audience scope) throw immediately — OBO exchange requires Authorization and
|
|
140
|
+
* authHandlerName which the legacy signature does not provide; callers must migrate to the
|
|
141
|
+
* TurnContext-based overload.
|
|
142
|
+
*/
|
|
143
|
+
createLegacyProdTokenAcquirer(authToken) {
|
|
144
|
+
const sharedScope = this.configProvider.getConfiguration().mcpPlatformAuthenticationScope;
|
|
145
|
+
return (server, scope) => {
|
|
146
|
+
if (scope !== sharedScope) {
|
|
147
|
+
throw new Error(`MCP server '${server.mcpServerName}' requires a per-audience token (scope: '${scope}'). ` +
|
|
148
|
+
`Per-audience token exchange is not supported by the deprecated listToolServers(agenticAppId, authToken) overload. ` +
|
|
149
|
+
`Migrate to listToolServers(turnContext, authorization, authHandlerName) instead.`);
|
|
150
|
+
}
|
|
151
|
+
return Promise.resolve(authToken);
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Returns a TokenAcquirer that performs OBO token exchange via AgenticAuthenticationService.
|
|
156
|
+
* Throws if the exchange returns null so callers receive an explicit error rather than a
|
|
157
|
+
* silently missing Authorization header.
|
|
158
|
+
*/
|
|
159
|
+
createOboTokenAcquirer(authorization, authHandlerName, turnContext) {
|
|
160
|
+
return async (server, scope) => {
|
|
161
|
+
const token = await AgenticAuthenticationService.GetAgenticUserToken(authorization, authHandlerName, turnContext, [scope]);
|
|
162
|
+
if (!token) {
|
|
163
|
+
throw new Error(`Failed to obtain token for MCP server '${server.mcpServerName}' (scope: ${scope})`);
|
|
164
|
+
}
|
|
165
|
+
return token;
|
|
166
|
+
};
|
|
167
|
+
}
|
|
70
168
|
/**
|
|
71
169
|
* Connect to the MCP server and return tools with names prefixed by the server name.
|
|
72
170
|
* Throws if the server URL is missing or the client fails to list tools.
|
|
@@ -169,7 +267,15 @@ export class McpToolServerConfigurationService {
|
|
|
169
267
|
headers: Utility.GetToolRequestHeaders(authToken, turnContext, options),
|
|
170
268
|
timeout: 10000 // 10 seconds timeout
|
|
171
269
|
});
|
|
172
|
-
|
|
270
|
+
const rawServers = response.data || [];
|
|
271
|
+
return rawServers.map(s => ({
|
|
272
|
+
mcpServerName: s.mcpServerName,
|
|
273
|
+
url: s.url,
|
|
274
|
+
headers: s.headers,
|
|
275
|
+
audience: s.audience,
|
|
276
|
+
scope: s.scope,
|
|
277
|
+
publisher: s.publisher,
|
|
278
|
+
}));
|
|
173
279
|
}
|
|
174
280
|
catch (err) {
|
|
175
281
|
const error = err;
|
|
@@ -224,7 +330,10 @@ export class McpToolServerConfigurationService {
|
|
|
224
330
|
return {
|
|
225
331
|
mcpServerName: serverName,
|
|
226
332
|
url: s.url || this.buildMcpServerUrl(serverName),
|
|
227
|
-
headers: s.headers
|
|
333
|
+
headers: s.headers,
|
|
334
|
+
audience: s.audience,
|
|
335
|
+
scope: s.scope,
|
|
336
|
+
publisher: s.publisher,
|
|
228
337
|
};
|
|
229
338
|
});
|
|
230
339
|
}
|
|
@@ -252,7 +361,7 @@ export class McpToolServerConfigurationService {
|
|
|
252
361
|
* Construct the tooling gateway URL for a given agent identity.
|
|
253
362
|
*/
|
|
254
363
|
getToolingGatewayUrl(agenticAppId) {
|
|
255
|
-
return `${this.getMcpPlatformBaseUrl()}/agents/${agenticAppId}/mcpServers`;
|
|
364
|
+
return `${this.getMcpPlatformBaseUrl()}/agents/v2/${agenticAppId}/mcpServers`;
|
|
256
365
|
}
|
|
257
366
|
/**
|
|
258
367
|
* Build the full URL for accessing a specific MCP server.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"McpToolServerConfigurationService.js","sourceRoot":"","sources":["../../src/McpToolServerConfigurationService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"McpToolServerConfigurationService.js","sourceRoot":"","sources":["../../src/McpToolServerConfigurationService.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/Utility.d.ts
CHANGED
|
@@ -52,7 +52,7 @@ export declare class Utility {
|
|
|
52
52
|
*
|
|
53
53
|
* Example:
|
|
54
54
|
* Utility.GetToolingGatewayForDigitalWorker(agenticAppId)
|
|
55
|
-
* // => "https://agent365.svc.cloud.microsoft/agents/{agenticAppId}/mcpServers"
|
|
55
|
+
* // => "https://agent365.svc.cloud.microsoft/agents/v2/{agenticAppId}/mcpServers"
|
|
56
56
|
*
|
|
57
57
|
* @param agenticAppId - The unique identifier for the agent identity.
|
|
58
58
|
* @param configProvider - Optional configuration provider. Defaults to defaultToolingConfigurationProvider.
|
package/dist/esm/Utility.js
CHANGED
|
@@ -117,7 +117,7 @@ export class Utility {
|
|
|
117
117
|
*
|
|
118
118
|
* Example:
|
|
119
119
|
* Utility.GetToolingGatewayForDigitalWorker(agenticAppId)
|
|
120
|
-
* // => "https://agent365.svc.cloud.microsoft/agents/{agenticAppId}/mcpServers"
|
|
120
|
+
* // => "https://agent365.svc.cloud.microsoft/agents/v2/{agenticAppId}/mcpServers"
|
|
121
121
|
*
|
|
122
122
|
* @param agenticAppId - The unique identifier for the agent identity.
|
|
123
123
|
* @param configProvider - Optional configuration provider. Defaults to defaultToolingConfigurationProvider.
|
|
@@ -125,7 +125,7 @@ export class Utility {
|
|
|
125
125
|
* @deprecated This method is for internal use only. Use McpToolServerConfigurationService.listToolServers() instead.
|
|
126
126
|
*/
|
|
127
127
|
static GetToolingGatewayForDigitalWorker(agenticAppId, configProvider) {
|
|
128
|
-
return `${this.getMcpPlatformBaseUrl(configProvider)}/agents/${agenticAppId}/mcpServers`;
|
|
128
|
+
return `${this.getMcpPlatformBaseUrl(configProvider)}/agents/v2/${agenticAppId}/mcpServers`;
|
|
129
129
|
}
|
|
130
130
|
/**
|
|
131
131
|
* Get the base URL used to query MCP environments.
|
package/dist/esm/Utility.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Utility.js","sourceRoot":"","sources":["../../src/Utility.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Utility.js","sourceRoot":"","sources":["../../src/Utility.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
import { RuntimeConfiguration } from '@microsoft/agents-a365-runtime';
|
|
2
2
|
import { ToolingConfigurationOptions } from './ToolingConfigurationOptions';
|
|
3
|
+
import { MCPServerConfig } from '../contracts';
|
|
4
|
+
/**
|
|
5
|
+
* Resolve the OAuth scope to request for a given MCP server.
|
|
6
|
+
*
|
|
7
|
+
* V2 servers carry their own audience in the `audience` field and get a per-audience token.
|
|
8
|
+
* V1 servers (no `audience`, or audience matching the shared scope's own audience in plain
|
|
9
|
+
* or api:// form) fall back to `sharedScope` — the configured mcpPlatformAuthenticationScope.
|
|
10
|
+
*
|
|
11
|
+
* @param server The MCP server config returned by the gateway or manifest.
|
|
12
|
+
* @param sharedScope The configured shared scope (mcpPlatformAuthenticationScope).
|
|
13
|
+
* Defaults to the prod ATG scope so that external callers without a custom config
|
|
14
|
+
* continue to work without passing the argument.
|
|
15
|
+
*/
|
|
16
|
+
export declare function resolveTokenScopeForServer(server: MCPServerConfig, sharedScope?: string): string;
|
|
3
17
|
/**
|
|
4
18
|
* Configuration for tooling package.
|
|
5
19
|
* Inherits runtime settings and adds tooling-specific settings.
|
|
@@ -20,5 +34,18 @@ export declare class ToolingConfiguration extends RuntimeConfiguration {
|
|
|
20
34
|
* Trims whitespace to prevent token exchange failures.
|
|
21
35
|
*/
|
|
22
36
|
get mcpPlatformAuthenticationScope(): string;
|
|
37
|
+
/**
|
|
38
|
+
* Returns the dev-mode bearer token for an MCP server by name.
|
|
39
|
+
* Checks BEARER_TOKEN_<SERVERNAME_UPPER> first, then falls back to BEARER_TOKEN.
|
|
40
|
+
* Returns undefined when the variable is not set (no Authorization header will be attached).
|
|
41
|
+
*/
|
|
42
|
+
getBearerTokenForServer(mcpServerName: string): string | undefined;
|
|
43
|
+
/**
|
|
44
|
+
* Returns true when a per-server bearer token env var (BEARER_TOKEN_<SERVERNAME_UPPER>)
|
|
45
|
+
* is explicitly set for the given server, false when only the shared BEARER_TOKEN fallback
|
|
46
|
+
* would be used. Used to detect V2 servers that are silently falling back to a
|
|
47
|
+
* wrong-audience token in dev mode.
|
|
48
|
+
*/
|
|
49
|
+
hasPerServerBearerToken(mcpServerName: string): boolean;
|
|
23
50
|
}
|
|
24
51
|
//# sourceMappingURL=ToolingConfiguration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolingConfiguration.d.ts","sourceRoot":"","sources":["../../../src/configuration/ToolingConfiguration.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"ToolingConfiguration.d.ts","sourceRoot":"","sources":["../../../src/configuration/ToolingConfiguration.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAM/C;;;;;;;;;;;GAWG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,eAAe,EACvB,WAAW,GAAE,MAA+C,GAC3D,MAAM,CAoBR;AAUD;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,oBAAoB;IAE5D,SAAS,KAAK,gBAAgB,IAAI,2BAA2B,CAE5D;gBAEW,SAAS,CAAC,EAAE,2BAA2B;IAMnD,IAAI,mBAAmB,IAAI,MAAM,CAQhC;IAED;;;;OAIG;IACH,IAAI,kBAAkB,IAAI,OAAO,CAKhC;IAED;;;;OAIG;IACH,IAAI,8BAA8B,IAAI,MAAM,CAQ3C;IAED;;;;OAIG;IACH,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAKlE;;;;;OAKG;IACH,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;CAIxD"}
|
|
@@ -4,6 +4,38 @@ import { RuntimeConfiguration } from '@microsoft/agents-a365-runtime';
|
|
|
4
4
|
// Constants for tooling-specific settings
|
|
5
5
|
const MCP_PLATFORM_PROD_BASE_URL = 'https://agent365.svc.cloud.microsoft';
|
|
6
6
|
const PROD_MCP_PLATFORM_AUTHENTICATION_SCOPE = 'ea9ffc3e-8a23-4a7d-836d-234d7c7565c1/.default';
|
|
7
|
+
/**
|
|
8
|
+
* Resolve the OAuth scope to request for a given MCP server.
|
|
9
|
+
*
|
|
10
|
+
* V2 servers carry their own audience in the `audience` field and get a per-audience token.
|
|
11
|
+
* V1 servers (no `audience`, or audience matching the shared scope's own audience in plain
|
|
12
|
+
* or api:// form) fall back to `sharedScope` — the configured mcpPlatformAuthenticationScope.
|
|
13
|
+
*
|
|
14
|
+
* @param server The MCP server config returned by the gateway or manifest.
|
|
15
|
+
* @param sharedScope The configured shared scope (mcpPlatformAuthenticationScope).
|
|
16
|
+
* Defaults to the prod ATG scope so that external callers without a custom config
|
|
17
|
+
* continue to work without passing the argument.
|
|
18
|
+
*/
|
|
19
|
+
export function resolveTokenScopeForServer(server, sharedScope = PROD_MCP_PLATFORM_AUTHENTICATION_SCOPE) {
|
|
20
|
+
if (server.audience) {
|
|
21
|
+
// Extract the audience portion of sharedScope (everything before the last '/').
|
|
22
|
+
// e.g. 'ea9ffc3e-.../.default' → 'ea9ffc3e-...'
|
|
23
|
+
// 'api://ea9ffc3e-.../.default' → 'api://ea9ffc3e-...'
|
|
24
|
+
const sharedAudience = sharedScope.slice(0, sharedScope.lastIndexOf('/'));
|
|
25
|
+
// Build the alternate form so we match both 'guid' and 'api://guid'.
|
|
26
|
+
const sharedAudienceAlt = sharedAudience.startsWith('api://')
|
|
27
|
+
? sharedAudience.slice(6) // 'api://guid' → 'guid'
|
|
28
|
+
: `api://${sharedAudience}`; // 'guid' → 'api://guid'
|
|
29
|
+
if (server.audience !== sharedAudience && server.audience !== sharedAudienceAlt) {
|
|
30
|
+
// V2 server: use its own audience with explicit scope or /.default fallback.
|
|
31
|
+
return server.scope
|
|
32
|
+
? `${server.audience}/${server.scope}`
|
|
33
|
+
: `${server.audience}/.default`;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
// V1 server: no audience, or audience matches the shared ATG audience.
|
|
37
|
+
return sharedScope;
|
|
38
|
+
}
|
|
7
39
|
/**
|
|
8
40
|
* Normalize URL by trimming whitespace and removing trailing slashes.
|
|
9
41
|
* Prevents double-slash issues in URL construction (e.g., "https://example.com//api").
|
|
@@ -58,5 +90,24 @@ export class ToolingConfiguration extends RuntimeConfiguration {
|
|
|
58
90
|
return envValue;
|
|
59
91
|
return PROD_MCP_PLATFORM_AUTHENTICATION_SCOPE;
|
|
60
92
|
}
|
|
93
|
+
/**
|
|
94
|
+
* Returns the dev-mode bearer token for an MCP server by name.
|
|
95
|
+
* Checks BEARER_TOKEN_<SERVERNAME_UPPER> first, then falls back to BEARER_TOKEN.
|
|
96
|
+
* Returns undefined when the variable is not set (no Authorization header will be attached).
|
|
97
|
+
*/
|
|
98
|
+
getBearerTokenForServer(mcpServerName) {
|
|
99
|
+
const key = mcpServerName.toUpperCase();
|
|
100
|
+
return process.env[`BEARER_TOKEN_${key}`] ?? process.env['BEARER_TOKEN'];
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Returns true when a per-server bearer token env var (BEARER_TOKEN_<SERVERNAME_UPPER>)
|
|
104
|
+
* is explicitly set for the given server, false when only the shared BEARER_TOKEN fallback
|
|
105
|
+
* would be used. Used to detect V2 servers that are silently falling back to a
|
|
106
|
+
* wrong-audience token in dev mode.
|
|
107
|
+
*/
|
|
108
|
+
hasPerServerBearerToken(mcpServerName) {
|
|
109
|
+
const key = mcpServerName.toUpperCase();
|
|
110
|
+
return !!process.env[`BEARER_TOKEN_${key}`];
|
|
111
|
+
}
|
|
61
112
|
}
|
|
62
113
|
//# sourceMappingURL=ToolingConfiguration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolingConfiguration.js","sourceRoot":"","sources":["../../../src/configuration/ToolingConfiguration.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"ToolingConfiguration.js","sourceRoot":"","sources":["../../../src/configuration/ToolingConfiguration.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAItE,0CAA0C;AAC1C,MAAM,0BAA0B,GAAG,sCAAsC,CAAC;AAC1E,MAAM,sCAAsC,GAAG,+CAA+C,CAAC;AAE/F;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,0BAA0B,CACxC,MAAuB,EACvB,cAAsB,sCAAsC;IAE5D,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,gFAAgF;QAChF,qDAAqD;QACrD,4DAA4D;QAC5D,MAAM,cAAc,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1E,qEAAqE;QACrE,MAAM,iBAAiB,GAAG,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC3D,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAQ,wBAAwB;YACzD,CAAC,CAAC,SAAS,cAAc,EAAE,CAAC,CAAK,8BAA8B;QAEjE,IAAI,MAAM,CAAC,QAAQ,KAAK,cAAc,IAAI,MAAM,CAAC,QAAQ,KAAK,iBAAiB,EAAE,CAAC;YAChF,6EAA6E;YAC7E,OAAO,MAAM,CAAC,KAAK;gBACjB,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,EAAE;gBACtC,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,WAAW,CAAC;QACpC,CAAC;IACH,CAAC;IACD,uEAAuE;IACvE,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CAAC,GAAW;IAC/B,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACxC,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,oBAAqB,SAAQ,oBAAoB;IAC5D,wCAAwC;IACxC,IAAc,gBAAgB;QAC5B,OAAO,IAAI,CAAC,SAAwC,CAAC;IACvD,CAAC;IAED,YAAY,SAAuC;QACjD,KAAK,CAAC,SAAS,CAAC,CAAC;IACnB,CAAC;IAED,6EAA6E;IAE7E,IAAI,mBAAmB;QACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,EAAE,CAAC;QAC/D,IAAI,QAAQ;YAAE,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE5C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,IAAI,EAAE,CAAC;QAC3D,IAAI,QAAQ;YAAE,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE5C,OAAO,0BAA0B,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACH,IAAI,kBAAkB;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,EAAE,CAAC;QAC9D,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,QAAQ,CAAC;QAE5C,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,IAAI,8BAA8B;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,8BAA8B,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;QAClF,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAE9B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,IAAI,EAAE,CAAC;QACvE,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAE9B,OAAO,sCAAsC,CAAC;IAChD,CAAC;IAED;;;;OAIG;IACH,uBAAuB,CAAC,aAAqB;QAC3C,MAAM,GAAG,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;QACxC,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,EAAE,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;OAKG;IACH,uBAAuB,CAAC,aAAqB;QAC3C,MAAM,GAAG,GAAG,aAAa,CAAC,WAAW,EAAE,CAAC;QACxC,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,EAAE,CAAC,CAAC;IAC9C,CAAC;CACF"}
|
package/dist/esm/contracts.d.ts
CHANGED
|
@@ -2,10 +2,16 @@ export interface MCPServerConfig {
|
|
|
2
2
|
mcpServerName: string;
|
|
3
3
|
url: string;
|
|
4
4
|
headers?: Record<string, string>;
|
|
5
|
+
audience?: string;
|
|
6
|
+
scope?: string;
|
|
7
|
+
publisher?: string;
|
|
5
8
|
}
|
|
6
9
|
export type MCPServerManifestEntry = {
|
|
7
10
|
url?: string;
|
|
8
11
|
headers?: Record<string, string>;
|
|
12
|
+
audience?: string;
|
|
13
|
+
scope?: string;
|
|
14
|
+
publisher?: string;
|
|
9
15
|
} & ({
|
|
10
16
|
mcpServerName: string;
|
|
11
17
|
mcpServerUniqueName?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/contracts.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/contracts.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,CACA;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAAE,GACvD;IAAE,mBAAmB,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,CAC1D,CAAC;AAEF,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;CAC1B;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,WAAW,WAAW;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@microsoft/agents-a365-tooling",
|
|
3
|
-
"version": "0.2.0-preview.
|
|
3
|
+
"version": "0.2.0-preview.3",
|
|
4
4
|
"description": "Agent 365 Tooling SDK for AI agents built with TypeScript/Node.js",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"directory": "packages/agents-a365-tooling"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"@microsoft/agents-a365-runtime": "0.2.0-preview.
|
|
22
|
+
"@microsoft/agents-a365-runtime": "0.2.0-preview.3",
|
|
23
23
|
"@microsoft/agents-hosting": "^1.3.1",
|
|
24
24
|
"@modelcontextprotocol/sdk": "^1.25.2",
|
|
25
25
|
"express": "^5.2.0",
|