@microsoft/agents-a365-tooling-extensions-claude 0.1.0-preview.30

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/README.md ADDED
@@ -0,0 +1,33 @@
1
+ # @microsoft/agents-a365-tooling-extensions-claude
2
+
3
+ [![npm](https://img.shields.io/npm/v/@microsoft/agents-a365-tooling-extensions-claude?label=npm&logo=npm)](https://www.npmjs.com/package/@microsoft/agents-a365-tooling-extensions-claude)
4
+ [![npm Downloads](https://img.shields.io/npm/dm/@microsoft/agents-a365-tooling-extensions-claude?label=Downloads&logo=npm)](https://www.npmjs.com/package/@microsoft/agents-a365-tooling-extensions-claude)
5
+
6
+ Claude SDK integration for the Microsoft Agent 365 Tooling SDK. This package enables seamless integration of MCP (Model Context Protocol) tool servers with Anthropic's Claude, providing automatic tool discovery and registration.
7
+
8
+ ## Installation
9
+
10
+ ```bash
11
+ npm install @microsoft/agents-a365-tooling-extensions-claude
12
+ ```
13
+
14
+ ## Usage
15
+
16
+ For detailed usage examples and implementation guidance, see the [Microsoft Agent 365 Tooling Documentation](https://learn.microsoft.com/microsoft-agent-365/developer/tooling?tabs=nodejs).
17
+
18
+ ## Support
19
+
20
+ For issues, questions, or feedback:
21
+
22
+ - File issues in the [GitHub Issues](https://github.com/microsoft/Agent365-nodejs/issues) section
23
+ - See the [main documentation](../../README.md) for more information
24
+
25
+ ## Trademarks
26
+
27
+ *Microsoft, Windows, Microsoft Azure and/or other Microsoft products and services referenced in the documentation may be either trademarks or registered trademarks of Microsoft in the United States and/or other countries. The licenses for this project do not grant you rights to use any Microsoft names, logos, or trademarks. Microsoft's general trademark guidelines can be found at http://go.microsoft.com/fwlink/?LinkID=254653.*
28
+
29
+ ## License
30
+
31
+ Copyright (c) Microsoft Corporation. All rights reserved.
32
+
33
+ Licensed under the MIT License - see the [LICENSE](../../LICENSE.md) file for details
@@ -0,0 +1,20 @@
1
+ import { TurnContext, Authorization } from '@microsoft/agents-hosting';
2
+ import type { Options } from '@anthropic-ai/claude-agent-sdk';
3
+ /**
4
+ * Discover MCP servers and list tools formatted for the Claude SDK.
5
+ * Use getMcpServers to fetch server configs and getTools to enumerate tools.
6
+ */
7
+ export declare class McpToolRegistrationService {
8
+ private readonly configService;
9
+ /**
10
+ * Registers MCP tool servers and updates agent options with discovered tools and server configs.
11
+ * Call this to enable dynamic Claude tool access.
12
+ * @param agentOptions The Claude Agent options to which MCP servers will be added.
13
+ * @param authorization Authorization object for token exchange.
14
+ * @param authHandlerName The name of the auth handler to use for token exchange.
15
+ * @param turnContext The TurnContext of the current request.
16
+ * @param authToken Optional bearer token for MCP server access.
17
+ */
18
+ addToolServersToAgent(agentOptions: Options, authorization: Authorization, authHandlerName: string, turnContext: TurnContext, authToken: string): Promise<void>;
19
+ }
20
+ //# sourceMappingURL=McpToolRegistrationService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"McpToolRegistrationService.d.ts","sourceRoot":"","sources":["../../src/McpToolRegistrationService.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAGvE,OAAO,KAAK,EAAmB,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAE/E;;;GAGG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA8E;IAE5G;;;;;;;;OAQG;IACG,qBAAqB,CACzB,YAAY,EAAE,OAAO,EACrB,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;CAuDjB"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ // Copyright (c) Microsoft Corporation.
3
+ // Licensed under the MIT License.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.McpToolRegistrationService = void 0;
6
+ const agents_a365_tooling_1 = require("@microsoft/agents-a365-tooling");
7
+ const agents_a365_runtime_1 = require("@microsoft/agents-a365-runtime");
8
+ /**
9
+ * Discover MCP servers and list tools formatted for the Claude SDK.
10
+ * Use getMcpServers to fetch server configs and getTools to enumerate tools.
11
+ */
12
+ class McpToolRegistrationService {
13
+ constructor() {
14
+ this.configService = new agents_a365_tooling_1.McpToolServerConfigurationService();
15
+ }
16
+ /**
17
+ * Registers MCP tool servers and updates agent options with discovered tools and server configs.
18
+ * Call this to enable dynamic Claude tool access.
19
+ * @param agentOptions The Claude Agent options to which MCP servers will be added.
20
+ * @param authorization Authorization object for token exchange.
21
+ * @param authHandlerName The name of the auth handler to use for token exchange.
22
+ * @param turnContext The TurnContext of the current request.
23
+ * @param authToken Optional bearer token for MCP server access.
24
+ */
25
+ async addToolServersToAgent(agentOptions, authorization, authHandlerName, turnContext, authToken) {
26
+ if (!agentOptions) {
27
+ throw new Error('Agent Options is Required');
28
+ }
29
+ if (!authToken) {
30
+ authToken = await agents_a365_runtime_1.AgenticAuthenticationService.GetAgenticUserToken(authorization, authHandlerName, turnContext);
31
+ }
32
+ // Validate the authentication token
33
+ agents_a365_tooling_1.Utility.ValidateAuthToken(authToken);
34
+ const agenticAppId = agents_a365_runtime_1.Utility.ResolveAgentIdentity(turnContext, authToken);
35
+ const servers = await this.configService.listToolServers(agenticAppId, authToken);
36
+ const mcpServers = {};
37
+ const tools = [];
38
+ for (const server of servers) {
39
+ // Compose headers if values are available
40
+ const headers = {};
41
+ if (authToken) {
42
+ headers['Authorization'] = `Bearer ${authToken}`;
43
+ }
44
+ // Add each server to the config object
45
+ mcpServers[server.mcpServerName] = {
46
+ type: 'http',
47
+ url: server.url,
48
+ headers: headers
49
+ };
50
+ let clientTools = await this.configService.getMcpClientTools(server.mcpServerName, {
51
+ url: server.url,
52
+ headers: headers
53
+ });
54
+ // Claude will add a prefix to the tool name based on the server name.
55
+ clientTools = clientTools.map((tool) => ({
56
+ name: 'mcp__' + server.mcpServerName + '__' + tool.name,
57
+ description: tool.description,
58
+ inputSchema: tool.inputSchema
59
+ }));
60
+ tools.push(...clientTools);
61
+ }
62
+ agentOptions.allowedTools = agentOptions.allowedTools ?? [];
63
+ agentOptions.allowedTools.push(...tools.map(t => t.name));
64
+ agentOptions.mcpServers = Object.assign(agentOptions.mcpServers ?? {}, mcpServers);
65
+ }
66
+ }
67
+ exports.McpToolRegistrationService = McpToolRegistrationService;
68
+ //# sourceMappingURL=McpToolRegistrationService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"McpToolRegistrationService.js","sourceRoot":"","sources":["../../src/McpToolRegistrationService.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,wEAA4H;AAC5H,wEAAyG;AAQzG;;;GAGG;AACH,MAAa,0BAA0B;IAAvC;QACmB,kBAAa,GAAsC,IAAI,uDAAiC,EAAE,CAAC;IAwE9G,CAAC;IAtEC;;;;;;;;OAQG;IACH,KAAK,CAAC,qBAAqB,CACzB,YAAqB,EACrB,aAA4B,EAC5B,eAAuB,EACvB,WAAwB,EACxB,SAAiB;QAGjB,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,SAAS,GAAG,MAAM,kDAA4B,CAAC,mBAAmB,CAAC,aAAa,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC;QAClH,CAAC;QAED,oCAAoC;QACpC,6BAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAErC,MAAM,YAAY,GAAG,6BAAc,CAAC,oBAAoB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACjF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAClF,MAAM,UAAU,GAAoC,EAAE,CAAC;QACvD,MAAM,KAAK,GAAoB,EAAE,CAAC;QAElC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,0CAA0C;YAC1C,MAAM,OAAO,GAA2B,EAAE,CAAC;YAC3C,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,SAAS,EAAE,CAAC;YACnD,CAAC;YAED,uCAAuC;YACvC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG;gBACjC,IAAI,EAAE,MAAM;gBACZ,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,OAAO,EAAE,OAAO;aACE,CAAC;YAErB,IAAI,WAAW,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAC1D,MAAM,CAAC,aAAa,EACpB;gBACE,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,OAAO,EAAE,OAAO;aACE,CACrB,CAAC;YAEF,sEAAsE;YACtE,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAmB,EAAE,EAAE,CAAC,CAAC;gBACtD,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC,aAAa,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI;gBACvD,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,CAAC,CAAoB,CAAC;YAEvB,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;QAC7B,CAAC;QAED,YAAY,CAAC,YAAY,GAAG,YAAY,CAAC,YAAY,IAAI,EAAE,CAAC;QAC5D,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAE1D,YAAY,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;IACrF,CAAC;CACF;AAzED,gEAyEC"}
@@ -0,0 +1,2 @@
1
+ export * from './McpToolRegistrationService';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./McpToolRegistrationService"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+DAA6C"}
@@ -0,0 +1,20 @@
1
+ import { TurnContext, Authorization } from '@microsoft/agents-hosting';
2
+ import type { Options } from '@anthropic-ai/claude-agent-sdk';
3
+ /**
4
+ * Discover MCP servers and list tools formatted for the Claude SDK.
5
+ * Use getMcpServers to fetch server configs and getTools to enumerate tools.
6
+ */
7
+ export declare class McpToolRegistrationService {
8
+ private readonly configService;
9
+ /**
10
+ * Registers MCP tool servers and updates agent options with discovered tools and server configs.
11
+ * Call this to enable dynamic Claude tool access.
12
+ * @param agentOptions The Claude Agent options to which MCP servers will be added.
13
+ * @param authorization Authorization object for token exchange.
14
+ * @param authHandlerName The name of the auth handler to use for token exchange.
15
+ * @param turnContext The TurnContext of the current request.
16
+ * @param authToken Optional bearer token for MCP server access.
17
+ */
18
+ addToolServersToAgent(agentOptions: Options, authorization: Authorization, authHandlerName: string, turnContext: TurnContext, authToken: string): Promise<void>;
19
+ }
20
+ //# sourceMappingURL=McpToolRegistrationService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"McpToolRegistrationService.d.ts","sourceRoot":"","sources":["../../src/McpToolRegistrationService.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAGvE,OAAO,KAAK,EAAmB,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAE/E;;;GAGG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA8E;IAE5G;;;;;;;;OAQG;IACG,qBAAqB,CACzB,YAAY,EAAE,OAAO,EACrB,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;CAuDjB"}
@@ -0,0 +1,64 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT License.
3
+ import { McpToolServerConfigurationService, Utility } from '@microsoft/agents-a365-tooling';
4
+ import { AgenticAuthenticationService, Utility as RuntimeUtility } from '@microsoft/agents-a365-runtime';
5
+ /**
6
+ * Discover MCP servers and list tools formatted for the Claude SDK.
7
+ * Use getMcpServers to fetch server configs and getTools to enumerate tools.
8
+ */
9
+ export class McpToolRegistrationService {
10
+ constructor() {
11
+ this.configService = new McpToolServerConfigurationService();
12
+ }
13
+ /**
14
+ * Registers MCP tool servers and updates agent options with discovered tools and server configs.
15
+ * Call this to enable dynamic Claude tool access.
16
+ * @param agentOptions The Claude Agent options to which MCP servers will be added.
17
+ * @param authorization Authorization object for token exchange.
18
+ * @param authHandlerName The name of the auth handler to use for token exchange.
19
+ * @param turnContext The TurnContext of the current request.
20
+ * @param authToken Optional bearer token for MCP server access.
21
+ */
22
+ async addToolServersToAgent(agentOptions, authorization, authHandlerName, turnContext, authToken) {
23
+ if (!agentOptions) {
24
+ throw new Error('Agent Options is Required');
25
+ }
26
+ if (!authToken) {
27
+ authToken = await AgenticAuthenticationService.GetAgenticUserToken(authorization, authHandlerName, turnContext);
28
+ }
29
+ // Validate the authentication token
30
+ Utility.ValidateAuthToken(authToken);
31
+ const agenticAppId = RuntimeUtility.ResolveAgentIdentity(turnContext, authToken);
32
+ const servers = await this.configService.listToolServers(agenticAppId, authToken);
33
+ const mcpServers = {};
34
+ const tools = [];
35
+ for (const server of servers) {
36
+ // Compose headers if values are available
37
+ const headers = {};
38
+ if (authToken) {
39
+ headers['Authorization'] = `Bearer ${authToken}`;
40
+ }
41
+ // Add each server to the config object
42
+ mcpServers[server.mcpServerName] = {
43
+ type: 'http',
44
+ url: server.url,
45
+ headers: headers
46
+ };
47
+ let clientTools = await this.configService.getMcpClientTools(server.mcpServerName, {
48
+ url: server.url,
49
+ headers: headers
50
+ });
51
+ // Claude will add a prefix to the tool name based on the server name.
52
+ clientTools = clientTools.map((tool) => ({
53
+ name: 'mcp__' + server.mcpServerName + '__' + tool.name,
54
+ description: tool.description,
55
+ inputSchema: tool.inputSchema
56
+ }));
57
+ tools.push(...clientTools);
58
+ }
59
+ agentOptions.allowedTools = agentOptions.allowedTools ?? [];
60
+ agentOptions.allowedTools.push(...tools.map(t => t.name));
61
+ agentOptions.mcpServers = Object.assign(agentOptions.mcpServers ?? {}, mcpServers);
62
+ }
63
+ }
64
+ //# sourceMappingURL=McpToolRegistrationService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"McpToolRegistrationService.js","sourceRoot":"","sources":["../../src/McpToolRegistrationService.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,iCAAiC,EAAiB,OAAO,EAAmB,MAAM,gCAAgC,CAAC;AAC5H,OAAO,EAAE,4BAA4B,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAQzG;;;GAGG;AACH,MAAM,OAAO,0BAA0B;IAAvC;QACmB,kBAAa,GAAsC,IAAI,iCAAiC,EAAE,CAAC;IAwE9G,CAAC;IAtEC;;;;;;;;OAQG;IACH,KAAK,CAAC,qBAAqB,CACzB,YAAqB,EACrB,aAA4B,EAC5B,eAAuB,EACvB,WAAwB,EACxB,SAAiB;QAGjB,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,SAAS,GAAG,MAAM,4BAA4B,CAAC,mBAAmB,CAAC,aAAa,EAAE,eAAe,EAAE,WAAW,CAAC,CAAC;QAClH,CAAC;QAED,oCAAoC;QACpC,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAErC,MAAM,YAAY,GAAG,cAAc,CAAC,oBAAoB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACjF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAClF,MAAM,UAAU,GAAoC,EAAE,CAAC;QACvD,MAAM,KAAK,GAAoB,EAAE,CAAC;QAElC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,0CAA0C;YAC1C,MAAM,OAAO,GAA2B,EAAE,CAAC;YAC3C,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,SAAS,EAAE,CAAC;YACnD,CAAC;YAED,uCAAuC;YACvC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG;gBACjC,IAAI,EAAE,MAAM;gBACZ,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,OAAO,EAAE,OAAO;aACE,CAAC;YAErB,IAAI,WAAW,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAC1D,MAAM,CAAC,aAAa,EACpB;gBACE,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,OAAO,EAAE,OAAO;aACE,CACrB,CAAC;YAEF,sEAAsE;YACtE,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAmB,EAAE,EAAE,CAAC,CAAC;gBACtD,IAAI,EAAE,OAAO,GAAG,MAAM,CAAC,aAAa,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI;gBACvD,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,CAAC,CAAoB,CAAC;YAEvB,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;QAC7B,CAAC;QAED,YAAY,CAAC,YAAY,GAAG,YAAY,CAAC,YAAY,IAAI,EAAE,CAAC;QAC5D,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAE1D,YAAY,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,UAAU,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;IACrF,CAAC;CACF"}
@@ -0,0 +1,2 @@
1
+ export * from './McpToolRegistrationService';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './McpToolRegistrationService';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC"}
package/package.json ADDED
@@ -0,0 +1,62 @@
1
+ {
2
+ "name": "@microsoft/agents-a365-tooling-extensions-claude",
3
+ "version": "0.1.0-preview.30",
4
+ "description": "Agent 365 Tooling SDK for Claude for AI agents built with TypeScript/Node.js",
5
+ "main": "dist/cjs/index.js",
6
+ "module": "dist/esm/index.js",
7
+ "types": "dist/esm/index.d.ts",
8
+ "scripts": {
9
+ "build:cjs": "npx tsc --project tsconfig.cjs.json",
10
+ "build:esm": "npx tsc --project tsconfig.esm.json",
11
+ "build": "npm run build:cjs && npm run build:esm",
12
+ "build:watch": "npx tsc --watch",
13
+ "clean": "npx rimraf dist",
14
+ "test": "jest --passWithNoTests",
15
+ "test:watch": "jest --watch",
16
+ "lint": "eslint src/**/*.ts",
17
+ "lint:fix": "eslint src/**/*.ts --fix",
18
+ "prepublishOnly": "npm run clean && npm run build",
19
+ "ci": "npm ci",
20
+ "pack": "npm pack --pack-destination=../"
21
+ },
22
+ "keywords": [
23
+ "ai",
24
+ "agents",
25
+ "azure",
26
+ "typescript",
27
+ "claude"
28
+ ],
29
+ "author": "Microsoft Corporation",
30
+ "license": "See license file",
31
+ "repository": {
32
+ "type": "git",
33
+ "url": "https://github.com/microsoft/Agent365-nodejs.git",
34
+ "directory": "packages/agents-a365-tooling-extensions-claude"
35
+ },
36
+ "dependencies": {
37
+ "@microsoft/agents-a365-tooling": "0.1.0-preview.30",
38
+ "@microsoft/agents-a365-runtime": "0.1.0-preview.30",
39
+ "@anthropic-ai/claude-agent-sdk": "*",
40
+ "@microsoft/agents-hosting": "*",
41
+ "@modelcontextprotocol/sdk": "*"
42
+ },
43
+ "devDependencies": {
44
+ "@types/jest": "^29.5.14",
45
+ "@types/node": "^20.0.0",
46
+ "@typescript-eslint/eslint-plugin": "^6.0.0",
47
+ "@typescript-eslint/parser": "^6.0.0",
48
+ "eslint": "^8.0.0",
49
+ "jest": "^29.0.0",
50
+ "rimraf": "^5.0.0",
51
+ "ts-jest": "^29.0.0",
52
+ "typescript": "^5.0.0"
53
+ },
54
+ "engines": {
55
+ "node": ">=18.0.0"
56
+ },
57
+ "files": [
58
+ "dist/**/*",
59
+ "README.md",
60
+ "CHANGELOG.md"
61
+ ]
62
+ }