@mondaydotcomorg/agent-toolkit 0.1.0

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.
Files changed (2) hide show
  1. package/README.md +170 -0
  2. package/package.json +85 -0
package/README.md ADDED
@@ -0,0 +1,170 @@
1
+ # @mondaydotcomorg/agent-toolkit
2
+
3
+ A powerful toolkit for building AI agents that interact with the Monday.com API. This package provides a set of tools and utilities to help you create AI-powered integrations with Monday.com, supporting both OpenAI and Model Context Protocol (MCP) implementations.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @mondaydotcomorg/agent-toolkit
9
+ ```
10
+
11
+ ## Features
12
+
13
+ - OpenAI integration support
14
+ - Model Context Protocol (MCP) support
15
+ - Pre-built Monday.com API tools
16
+ - TypeScript support with full type definitions
17
+ - Modular architecture with subpath exports
18
+
19
+ ## Subpath Exports
20
+
21
+ The package provides several modular components that can be imported separately:
22
+
23
+ - `@mondaydotcomorg/agent-toolkit/mcp` - MCP server implementation
24
+ - `@mondaydotcomorg/agent-toolkit/tools` - Monday.com API tools
25
+ - `@mondaydotcomorg/agent-toolkit/core` - Core utilities and base classes
26
+ - `@mondaydotcomorg/agent-toolkit/openai` - OpenAI integration
27
+
28
+ ## Available Tools
29
+
30
+ The toolkit includes several pre-built tools for common Monday.com operations:
31
+
32
+ - Delete Item Tool
33
+ - Get Board Items Tool
34
+ - Create Item Tool
35
+ - Create Update Tool
36
+ - Get Board Schema Tool
37
+
38
+ ## Usage
39
+
40
+ ### OpenAI Integration
41
+
42
+ ```typescript
43
+ import { MondayAgentToolkit } from '@mondaydotcomorg/agent-toolkit/openai';
44
+ import OpenAI from 'openai';
45
+
46
+ // Initialize the Monday.com Agent Toolkit
47
+ const mondayToolkit = new MondayAgentToolkit({
48
+ mondayApiToken: 'your-monday-api-token',
49
+ mondayApiVersion: '2025-01',
50
+ mondayApiRequestConfig: {},
51
+ toolsConfiguration: {
52
+ // Optional: Configure available tools
53
+ include: ['deleteItem', 'getBoardItems'],
54
+ // OR exclude specific tools
55
+ // exclude: ['createItem'],
56
+ // Disable all mutation operations
57
+ // disableMutations: true,
58
+ }
59
+ });
60
+
61
+
62
+ ### MCP Integration
63
+
64
+ ```typescript
65
+ import { MondayAgentToolkit } from '@mondaydotcomorg/agent-toolkit/mcp';
66
+
67
+ // Initialize with all tools
68
+ const toolkit = new MondayAgentToolkit({
69
+ mondayApiToken: 'your-monday-api-token',
70
+ mondayApiVersion: 'your-api-version',
71
+ mondayApiRequestConfig: {} // Optional request config
72
+ });
73
+
74
+ // Or initialize with specific tools / disable mutations
75
+ const toolkitWithSpecificTools = new MondayAgentToolkit({
76
+ mondayApiToken: 'your-monday-api-token',
77
+ mondayApiVersion: 'your-api-version',
78
+ mondayApiRequestConfig: {},
79
+ tools: {
80
+ include: ['mcp_monday_api_mcp_delete_item', 'create monday item'], // Only include these tools
81
+ readOnlyMode: true, // Disable all mutation tools (create, update, delete operations)
82
+ // OR
83
+ // exclude: ['tool_name_to_exclude'] // Include all tools except these
84
+ }
85
+ });
86
+
87
+ // The toolkit extends McpServer and automatically registers all available tools
88
+ ```
89
+
90
+ ### Types
91
+
92
+ The toolkit categorizes tools into two types:
93
+
94
+ - **Query Tools**: Read-only operations that fetch data (e.g., get board items, get board schema)
95
+ - **Mutation Tools**: Write operations that modify data (e.g., create item, delete item, create update)
96
+
97
+ You can disable all mutation tools using the `readOnlyMode` option in the configuration. This is useful when you want to ensure that your agent can only read data and cannot make any modifications.
98
+
99
+ ### Using Individual Tools
100
+
101
+ ```typescript
102
+ import { CreateItemTool } from '@mondaydotcomorg/agent-toolkit/tools';
103
+ import { ApiClient } from '@mondaydotcomorg/api';
104
+
105
+ const apiClient = new ApiClient({
106
+ token: 'your-monday-api-token',
107
+ apiVersion: 'your-api-version'
108
+ });
109
+
110
+ const createItemTool = new CreateItemTool(apiClient);
111
+ await createItemTool.execute(/* tool input */);
112
+ ```
113
+
114
+ ## Requirements
115
+
116
+ - Node.js >= 16.20.0
117
+ - Monday.com API token
118
+ - OpenAI API key (if using OpenAI integration)
119
+
120
+ ## Development
121
+
122
+ ```bash
123
+ # Install dependencies
124
+ npm install
125
+
126
+ # Build the package
127
+ npm run build
128
+
129
+ # Run tests
130
+ npm test
131
+
132
+ # Format code
133
+ npm run prettier
134
+
135
+ # Lint code
136
+ npm run lint
137
+
138
+ # Watch mode during development
139
+ npm run watch
140
+
141
+ # Update Monday.com GraphQL schema
142
+ npm run fetch:schema
143
+
144
+ # Generate types from schema
145
+ npm run codegen
146
+
147
+ # Fetch schema and generate types
148
+ npm run fetch:generate
149
+ ```
150
+
151
+ ## License
152
+
153
+ MIT
154
+
155
+ ## Author
156
+
157
+ monday.com API Team
158
+
159
+ ## Repository
160
+
161
+ [GitHub Repository](https://github.com/mondaycom/monday-graphql-api/tree/main/packages/agent-toolkit)
162
+
163
+ ## Keywords
164
+
165
+ - monday
166
+ - api
167
+ - agent-toolkit
168
+ - openai
169
+ - mcp
170
+ - ai-agents
package/package.json ADDED
@@ -0,0 +1,85 @@
1
+ {
2
+ "name": "@mondaydotcomorg/agent-toolkit",
3
+ "version": "0.1.0",
4
+ "description": "monday.com agent toolkit",
5
+ "main": "dist/cjs/index.js",
6
+ "module": "dist/esm/index.js",
7
+ "types": "dist/esm/index.d.ts",
8
+ "type": "module",
9
+ "exports": {
10
+ "./mcp": {
11
+ "import": "./dist/esm/mcp/index.js",
12
+ "require": "./dist/cjs/mcp/index.js",
13
+ "types": "./dist/esm/mcp/index.d.ts"
14
+ },
15
+ "./tools": {
16
+ "import": "./dist/esm/tools/index.js",
17
+ "require": "./dist/cjs/tools/index.js",
18
+ "types": "./dist/esm/tools/index.d.ts"
19
+ },
20
+ "./core": {
21
+ "import": "./dist/esm/core/index.js",
22
+ "require": "./dist/cjs/core/index.js",
23
+ "types": "./dist/esm/core/index.d.ts"
24
+ },
25
+ "./openai": {
26
+ "import": "./dist/esm/openai/index.js",
27
+ "require": "./dist/cjs/openai/index.js",
28
+ "types": "./dist/esm/openai/index.d.ts"
29
+ }
30
+ },
31
+ "files": [
32
+ "dist",
33
+ "LICENSE"
34
+ ],
35
+ "scripts": {
36
+ "build": "rollup -c",
37
+ "prettier": "prettier --write \"lib/**/*.ts\"",
38
+ "lint": "eslint --fix \"lib/**/*.ts\"",
39
+ "test": "jest -c",
40
+ "watch": "rollup -c -w",
41
+ "fetch:schema": "bash fetch-schema.sh",
42
+ "codegen": "graphql-codegen",
43
+ "fetch:generate": "npm run fetch:schema && npm run codegen"
44
+ },
45
+ "engines": {
46
+ "node": ">= 16.20.0"
47
+ },
48
+ "author": "monday.com Api Team",
49
+ "license": "MIT",
50
+ "keywords": [
51
+ "monday",
52
+ "api",
53
+ "agent-toolkit"
54
+ ],
55
+ "repository": {
56
+ "type": "git",
57
+ "url": "https://github.com/mondaycom/monday-graphql-api/tree/main/packages/agent-toolkit"
58
+ },
59
+ "dependencies": {
60
+ "@mondaydotcomorg/api": "^9.0.1",
61
+ "zod": "^3.24.2",
62
+ "zod-to-json-schema": "^3.24.5"
63
+ },
64
+ "devDependencies": {
65
+ "@rollup/plugin-commonjs": "^25.0.7",
66
+ "@rollup/plugin-json": "^6.1.0",
67
+ "@rollup/plugin-node-resolve": "^15.2.3",
68
+ "@rollup/plugin-terser": "^0.4.4",
69
+ "@rollup/plugin-typescript": "^11.1.6",
70
+ "@types/jest": "^29.5.12",
71
+ "@types/node": "^20.11.18",
72
+ "jest": "^29.7.0",
73
+ "moment": "^2.30.1",
74
+ "rollup": "^2.79.1",
75
+ "rollup-plugin-delete": "^2.0.0",
76
+ "rollup-plugin-dts": "^4.2.3",
77
+ "ts-jest": "^29.1.2",
78
+ "typescript": "^4.9.5"
79
+ },
80
+ "peerDependencies": {
81
+ "@langchain/core": "^0.3.43",
82
+ "@modelcontextprotocol/sdk": "^1.8.0",
83
+ "openai": "^4.91.0"
84
+ }
85
+ }