@clareo/clareo-mcp 1.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.
package/LICENSE ADDED
@@ -0,0 +1,15 @@
1
+ ISC License
2
+
3
+ Copyright (c) 2026, Clareo
4
+
5
+ Permission to use, copy, modify, and/or distribute this software for any
6
+ purpose with or without fee is hereby granted, provided that the above
7
+ copyright notice and this permission notice appear in all copies.
8
+
9
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12
+ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15
+ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,65 @@
1
+ # Clareo MCP Server 🚀
2
+
3
+ A powerful Model Context Protocol (MCP) server for the **Clareo Ecosystem**. Effortlessly manage your agency, projects, tasks, and notes directly from your favorite AI assistants (Claude Desktop, Cursor, VS Code, etc.).
4
+
5
+ [![NPM Version](https://img.shields.io/npm/v/clareo-mcp.svg)](https://www.npmjs.com/package/clareo-mcp)
6
+ [![License: ISC](https://img.shields.io/badge/License-ISC-blue.svg)](https://opensource.org/licenses/ISC)
7
+
8
+ ## Features
9
+
10
+ - 👔 **Agency Management**: List agencies and active members.
11
+ - 📋 **Task Mastery**: Create, list, and manage tasks with full support for projects, clients, and checklists.
12
+ - 📈 **Performance Insights**: Get aggregated agency reports or individual performance metrics.
13
+ - 📝 **Smart Notes**: Create private or agency-wide notes with pinning support.
14
+ - 🔐 **Secure RBAC**: Built-in access control via the Clareo Cloud Gateway.
15
+
16
+ ## Quick Start
17
+
18
+ ### 1. Generate your API Key
19
+ Go to your **Clareo Admin Dashboard** > **Settings** > **MCP Tokens** and generate a new token.
20
+
21
+ ### 2. Configure your Client
22
+ Add the following to your MCP settings file (e.g., `claude_desktop_config.json`):
23
+
24
+ ```json
25
+ {
26
+ "mcpServers": {
27
+ "clareo": {
28
+ "command": "npx",
29
+ "args": ["-y", "clareo-mcp@latest"],
30
+ "env": {
31
+ "CLAREO_API_KEY": "YOUR_TOKEN_HERE"
32
+ }
33
+ }
34
+ }
35
+ }
36
+ ```
37
+
38
+ ## Local Development (Contributors)
39
+
40
+ If you want to modify the server or run it locally:
41
+
42
+ 1. **Clone & Install**:
43
+ ```bash
44
+ git clone https://github.com/prazerluizin/clareo-mcp.git
45
+ cd clareo-mcp
46
+ npm install
47
+ ```
48
+
49
+ 2. **Environment Setup**:
50
+ Copy `.env.example` to `.env` and fill in your `CLAREO_API_KEY`.
51
+
52
+ 3. **Build & Run**:
53
+ ```bash
54
+ npm run build
55
+ node build/index.js
56
+ ```
57
+
58
+ ## Documentation
59
+
60
+ - [Tools Reference](docs/tools.md)
61
+ - [Architecture](docs/architecture.md)
62
+
63
+ ## License
64
+
65
+ ISC © [Clareo](https://clareo.app.br)
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/build/index.js ADDED
@@ -0,0 +1,322 @@
1
+ #!/usr/bin/env node
2
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
3
+ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
4
+ import { z } from "zod";
5
+ import dotenv from "dotenv";
6
+ dotenv.config({ quiet: true });
7
+ const CLAREO_API_KEY = process.env.CLAREO_API_KEY;
8
+ const GATEWAY_URL = "https://zmymkpbwxunzcbojbcto.supabase.co/functions/v1/clareo-mcp-gateway";
9
+ /**
10
+ * Proxy Helper
11
+ * Forwards the tool call to the cloud gateway
12
+ */
13
+ async function callGateway(tool, args) {
14
+ if (!CLAREO_API_KEY) {
15
+ throw new Error("CLAREO_API_KEY is missing. Please generate a token in the Clareo Admin dashboard (MCP Settings) and add it to your environment/config.");
16
+ }
17
+ const response = await fetch(GATEWAY_URL, {
18
+ method: "POST",
19
+ headers: {
20
+ "Authorization": `Bearer ${CLAREO_API_KEY}`,
21
+ "Content-Type": "application/json",
22
+ },
23
+ body: JSON.stringify({ tool, arguments: args }),
24
+ });
25
+ if (!response.ok) {
26
+ const errorData = await response.json().catch(() => ({ error: "Unknown gateway error" }));
27
+ throw new Error(`Gateway Error: ${errorData.error || response.statusText}`);
28
+ }
29
+ return await response.json();
30
+ }
31
+ // Create the high-level MCP server
32
+ const server = new McpServer({
33
+ name: "clareo-mcp",
34
+ version: "1.0.0",
35
+ });
36
+ /**
37
+ * Tool: list_active_clients
38
+ */
39
+ server.tool("list_active_clients", "Lists all active clients for a specific agency. Useful for categorizing tasks or notes per client.", {
40
+ agency_id: z.string().uuid().describe("The ID of the agency to filter clients"),
41
+ }, async (args) => {
42
+ const data = await callGateway("list_active_clients", args);
43
+ return {
44
+ content: [{ type: "text", text: JSON.stringify(data, null, 2) }],
45
+ };
46
+ });
47
+ /**
48
+ * Tool: list_agencies
49
+ */
50
+ server.tool("list_agencies", "Lists all agencies associated with the current user. Use this as the first step to get the agency_id.", {}, async () => {
51
+ const data = await callGateway("list_agencies", {});
52
+ return {
53
+ content: [{ type: "text", text: JSON.stringify(data, null, 2) }],
54
+ };
55
+ });
56
+ /**
57
+ * Tool: create_task
58
+ */
59
+ server.tool("create_task", "Creates a new task in the agency. RECOMMENDED FLOW: 1. get agency_id -> 2. (optional) get client_id -> 3. get project_id (for internal tasks, choose project with is_internal: true) -> 4. get assignee_id -> 5. call this tool.", {
60
+ agency_id: z.string().uuid().describe("The ID of the agency"),
61
+ project_id: z.string().uuid().describe("The ID of the project"),
62
+ name: z.string().describe("Task name"),
63
+ description: z.string().optional().describe("Task description"),
64
+ assignee_id: z
65
+ .string()
66
+ .uuid()
67
+ .optional()
68
+ .describe("The ID of the user to assign the task to"),
69
+ client_id: z
70
+ .string()
71
+ .uuid()
72
+ .optional()
73
+ .describe("Optional: The ID of the client. If omitted, task is internal."),
74
+ is_urgent: z.boolean().optional().describe("Is the task urgent?"),
75
+ is_revision: z.boolean().optional().describe("Is this a revision (refação)?"),
76
+ due_date: z.string().optional().describe("Due date (ISO format)"),
77
+ checklist: z
78
+ .array(z.string())
79
+ .optional()
80
+ .describe("Optional list of checklist item titles"),
81
+ }, async (args) => {
82
+ const data = await callGateway("create_task", args);
83
+ return {
84
+ content: [{ type: "text", text: JSON.stringify(data, null, 2) }],
85
+ };
86
+ });
87
+ /**
88
+ * Tool: create_note
89
+ */
90
+ server.tool("create_note", "Creates a new note. Supports private or agency-wide visibility.", {
91
+ title: z.string().describe("Note title"),
92
+ content: z.string().describe("Note content"),
93
+ agency_id: z.string().uuid().describe("Agency ID"),
94
+ visibility: z.enum(["private", "agency"]).optional().default("private").describe("Visibility level"),
95
+ is_pinned: z.boolean().optional().default(false).describe("Pin status"),
96
+ }, async (args) => {
97
+ const data = await callGateway("create_note", args);
98
+ return {
99
+ content: [{ type: "text", text: `Note created successfully: ${data.id}` }],
100
+ };
101
+ });
102
+ /**
103
+ * Tool: disable_user_from_agency
104
+ */
105
+ server.tool("disable_user_from_agency", "Disables a user's access to a specific agency. Requires administrative permissions.", {
106
+ user_id: z.string().uuid().describe("The ID of the user to disable"),
107
+ agency_id: z.string().uuid().describe("The ID of the agency"),
108
+ }, async (args) => {
109
+ const data = await callGateway("disable_user_from_agency", args);
110
+ return {
111
+ content: [{ type: "text", text: `User ${args.user_id} disabled from agency ${args.agency_id} successfully.` }],
112
+ };
113
+ });
114
+ /**
115
+ * Tool: enable_user_from_agency
116
+ */
117
+ server.tool("enable_user_from_agency", "Enables a user's access to a specific agency. Reverses a previous disable action.", {
118
+ user_id: z.string().uuid().describe("The ID of the user to enable"),
119
+ agency_id: z.string().uuid().describe("The ID of the agency"),
120
+ }, async (args) => {
121
+ const data = await callGateway("enable_user_from_agency", args);
122
+ return {
123
+ content: [{ type: "text", text: `User ${args.user_id} enabled in agency ${args.agency_id} successfully.` }],
124
+ };
125
+ });
126
+ /**
127
+ * Tool: list_agency_users
128
+ */
129
+ server.tool("list_agency_users", "Lists all users (members) of an agency. Required to find the assignee_id for tasks.", {
130
+ agency_id: z.string().uuid().describe("The ID of the agency"),
131
+ }, async (args) => {
132
+ const data = await callGateway("list_agency_users", args);
133
+ return {
134
+ content: [{ type: "text", text: JSON.stringify(data, null, 2) }],
135
+ };
136
+ });
137
+ /**
138
+ * Tool: list_agency_projects
139
+ */
140
+ server.tool("list_agency_projects", "Lists all projects in an agency. For internal tasks, look for the project marked with is_internal: true.", {
141
+ agency_id: z.string().uuid().describe("The ID of the agency"),
142
+ }, async (args) => {
143
+ const data = await callGateway("list_agency_projects", args);
144
+ return {
145
+ content: [{ type: "text", text: JSON.stringify(data, null, 2) }],
146
+ };
147
+ });
148
+ /**
149
+ * Tool: get_agency_report
150
+ */
151
+ server.tool("get_agency_report", "Retrieves an aggregated cost and performance report for the entire agency. Includes total hours, costs, and task counts.", {
152
+ agency_id: z.string().uuid().describe("The ID of the agency"),
153
+ start_date: z.string().optional().describe("Start date (YYYY-MM-DD)"),
154
+ end_date: z.string().optional().describe("End date (YYYY-MM-DD)"),
155
+ }, async (args) => {
156
+ const data = await callGateway("get_agency_report", args);
157
+ return {
158
+ content: [{ type: "text", text: JSON.stringify(data, null, 2) }],
159
+ };
160
+ });
161
+ /**
162
+ * Tool: get_user_performance
163
+ */
164
+ server.tool("get_user_performance", "Retrieves performance metrics for a specific user within an agency.", {
165
+ agency_id: z.string().uuid().describe("The ID of the agency"),
166
+ user_id: z.string().uuid().optional().describe("The user to get performance for. Defaults to the authenticated user."),
167
+ start_date: z.string().optional().describe("Start date (YYYY-MM-DD)"),
168
+ end_date: z.string().optional().describe("End date (YYYY-MM-DD)"),
169
+ }, async (args) => {
170
+ const data = await callGateway("get_user_performance", args);
171
+ return {
172
+ content: [{ type: "text", text: JSON.stringify(data, null, 2) }],
173
+ };
174
+ });
175
+ /**
176
+ * Tool: list_my_tasks
177
+ */
178
+ server.tool("list_my_tasks", "Lists the authenticated user's tasks (open or pending).", {
179
+ agency_id: z.string().uuid().optional().describe("Filter by agency ID"),
180
+ status: z.union([z.string(), z.array(z.string())]).optional().describe("Filter by status (default: ['pending', 'paused'])"),
181
+ }, async (args) => {
182
+ const data = await callGateway("list_my_tasks", args);
183
+ return {
184
+ content: [{ type: "text", text: JSON.stringify(data, null, 2) }],
185
+ };
186
+ });
187
+ /**
188
+ * Tool: create_client
189
+ */
190
+ server.tool("create_client", "Creates a new client in the agency.", {
191
+ agency_id: z.string().uuid().describe("The ID of the agency"),
192
+ name: z.string().describe("Client name"),
193
+ description: z.string().optional().describe("Client description"),
194
+ }, async (args) => {
195
+ const data = await callGateway("create_client", args);
196
+ return {
197
+ content: [{ type: "text", text: `Client created successfully: ${data.id}` }],
198
+ };
199
+ });
200
+ /**
201
+ * Tool: create_campaign
202
+ */
203
+ server.tool("create_campaign", "Creates a new campaign for a client.", {
204
+ agency_id: z.string().uuid().describe("The ID of the agency"),
205
+ client_id: z.string().uuid().optional().describe("The ID of the client (optional for agency-wide campaigns)"),
206
+ name: z.string().describe("Campaign name"),
207
+ description: z.string().optional().describe("Campaign description"),
208
+ status: z.enum(["active", "paused", "completed", "draft"]).optional().default("active").describe("Campaign status"),
209
+ duration_type: z.enum(["fixed", "open"]).optional().default("open").describe("Duration type"),
210
+ start_date: z.string().describe("Start date (ISO format)"),
211
+ end_date: z.string().optional().describe("End date (ISO format)"),
212
+ }, async (args) => {
213
+ const data = await callGateway("create_campaign", args);
214
+ return {
215
+ content: [{ type: "text", text: `Campaign created successfully: ${data.id}` }],
216
+ };
217
+ });
218
+ /**
219
+ * Tool: create_project
220
+ */
221
+ server.tool("create_project", "Creates a new project in the agency.", {
222
+ agency_id: z.string().uuid().describe("The ID of the agency"),
223
+ client_id: z.string().uuid().optional().describe("The ID of the client"),
224
+ name: z.string().describe("Project name"),
225
+ description: z.string().optional().describe("Project description"),
226
+ color: z.string().optional().describe("Hex color code"),
227
+ is_internal: z.boolean().optional().default(false).describe("Is this an internal project?"),
228
+ }, async (args) => {
229
+ const data = await callGateway("create_project", args);
230
+ return {
231
+ content: [{ type: "text", text: `Project created successfully: ${data.id}` }],
232
+ };
233
+ });
234
+ /**
235
+ * Tool: update_task
236
+ */
237
+ server.tool("update_task", "Updates an existing task.", {
238
+ agency_id: z.string().uuid().describe("The ID of the agency"),
239
+ task_id: z.string().uuid().describe("The ID of the task to update"),
240
+ name: z.string().optional().describe("New task name"),
241
+ description: z.string().optional().describe("New task description"),
242
+ project_id: z.string().uuid().optional().describe("New project ID"),
243
+ assignee_id: z.string().uuid().optional().describe("New assignee ID"),
244
+ status: z.enum(["pending", "paused", "in_progress", "completed", "canceled"]).optional().describe("New status"),
245
+ is_urgent: z.boolean().optional().describe("Is the task urgent?"),
246
+ due_date: z.string().optional().describe("New due date (ISO format)"),
247
+ }, async (args) => {
248
+ const data = await callGateway("update_task", args);
249
+ return {
250
+ content: [{ type: "text", text: `Task updated successfully: ${data.id}` }],
251
+ };
252
+ });
253
+ /**
254
+ * Tool: get_task_details
255
+ */
256
+ server.tool("get_task_details", "Retrieves detailed information about a task, including checklists and linked clients.", {
257
+ agency_id: z.string().uuid().describe("The ID of the agency"),
258
+ task_id: z.string().uuid().describe("The ID of the task"),
259
+ }, async (args) => {
260
+ const data = await callGateway("get_task_details", args);
261
+ return {
262
+ content: [{ type: "text", text: JSON.stringify(data, null, 2) }],
263
+ };
264
+ });
265
+ /**
266
+ * Tool: delete_task
267
+ */
268
+ server.tool("delete_task", "Deletes a task from the agency.", {
269
+ agency_id: z.string().uuid().describe("The ID of the agency"),
270
+ task_id: z.string().uuid().describe("The ID of the task to delete"),
271
+ }, async (args) => {
272
+ await callGateway("delete_task", args);
273
+ return {
274
+ content: [{ type: "text", text: `Task ${args.task_id} deleted successfully.` }],
275
+ };
276
+ });
277
+ /**
278
+ * Tool: start_task
279
+ */
280
+ server.tool("start_task", "Starts the timer for a task. Moves status to 'in_progress'.", {
281
+ agency_id: z.string().uuid().describe("The ID of the agency"),
282
+ task_id: z.string().uuid().describe("The ID of the task"),
283
+ }, async (args) => {
284
+ const data = await callGateway("start_task", args);
285
+ return {
286
+ content: [{ type: "text", text: `Timer started for task ${args.task_id}.` }],
287
+ };
288
+ });
289
+ /**
290
+ * Tool: pause_task
291
+ */
292
+ server.tool("pause_task", "Pauses the timer for a task. Moves status to 'paused'.", {
293
+ agency_id: z.string().uuid().describe("The ID of the agency"),
294
+ task_id: z.string().uuid().describe("The ID of the task"),
295
+ }, async (args) => {
296
+ const data = await callGateway("pause_task", args);
297
+ return {
298
+ content: [{ type: "text", text: `Timer paused for task ${args.task_id}.` }],
299
+ };
300
+ });
301
+ /**
302
+ * Tool: complete_task
303
+ */
304
+ server.tool("complete_task", "Completes a task and stops the timer. Moves status to 'completed'.", {
305
+ agency_id: z.string().uuid().describe("The ID of the agency"),
306
+ task_id: z.string().uuid().describe("The ID of the task"),
307
+ }, async (args) => {
308
+ const data = await callGateway("complete_task", args);
309
+ return {
310
+ content: [{ type: "text", text: `Task ${args.task_id} marked as completed.` }],
311
+ };
312
+ });
313
+ async function main() {
314
+ const transport = new StdioServerTransport();
315
+ await server.connect(transport);
316
+ console.error("Clareo MCP Server running via Cloud Gateway");
317
+ }
318
+ main().catch((error) => {
319
+ console.error("Server error:", error);
320
+ process.exit(1);
321
+ });
322
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAE/B,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;AAClD,MAAM,WAAW,GAAG,0EAA0E,CAAC;AAE/F;;;GAGG;AACH,KAAK,UAAU,WAAW,CAAC,IAAY,EAAE,IAAS;IAChD,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,wIAAwI,CACzI,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE;QACxC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,eAAe,EAAE,UAAU,cAAc,EAAE;YAC3C,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;KAChD,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC,CAAC;QAC1F,MAAM,IAAI,KAAK,CAAC,kBAAkB,SAAS,CAAC,KAAK,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC/B,CAAC;AAED,mCAAmC;AACnC,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB,oGAAoG,EACpG;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;CAChF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IAC5D,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,eAAe,EACf,uGAAuG,EACvG,EAAE,EACF,KAAK,IAAI,EAAE;IACT,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IACpD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,aAAa,EACb,kOAAkO,EAClO;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC7D,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IAC/D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;IACtC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IAC/D,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,0CAA0C,CAAC;IACvD,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,IAAI,EAAE;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,+DAA+D,CAAC;IAC5E,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IACjE,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IAC7E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IACjE,SAAS,EAAE,CAAC;SACT,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,wCAAwC,CAAC;CACtD,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IACpD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,aAAa,EACb,iEAAiE,EACjE;IACE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;IACxC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;IAC5C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;IAClD,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IACpG,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC;CACxE,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IACpD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,8BAA8B,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC;KAC3E,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,0BAA0B,EAC1B,qFAAqF,EACrF;IACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IACpE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;CAC9D,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,0BAA0B,EAAE,IAAI,CAAC,CAAC;IACjE,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,IAAI,CAAC,OAAO,yBAAyB,IAAI,CAAC,SAAS,gBAAgB,EAAE,CAAC;KAC/G,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,mFAAmF,EACnF;IACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IACnE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;CAC9D,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,yBAAyB,EAAE,IAAI,CAAC,CAAC;IAChE,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,IAAI,CAAC,OAAO,sBAAsB,IAAI,CAAC,SAAS,gBAAgB,EAAE,CAAC;KAC5G,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,qFAAqF,EACrF;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;CAC9D,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;IAC1D,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,0GAA0G,EAC1G;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;CAC9D,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;IAC7D,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,0HAA0H,EAC1H;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC7D,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IACrE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;CAClE,EACD,KAAK,EAAE,IAAS,EAAE,EAAE;IAClB,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;IAC1D,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,sBAAsB,EACtB,qEAAqE,EACrE;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sEAAsE,CAAC;IACtH,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IACrE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;CAClE,EACD,KAAK,EAAE,IAAS,EAAE,EAAE;IAClB,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;IAC7D,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,eAAe,EACf,yDAAyD,EACzD;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IACvE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;CAC5H,EACD,KAAK,EAAE,IAAS,EAAE,EAAE;IAClB,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IACtD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,eAAe,EACf,qCAAqC,EACrC;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC7D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;IACxC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;CAClE,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IACtD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gCAAgC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC;KAC7E,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,iBAAiB,EACjB,sCAAsC,EACtC;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC7D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2DAA2D,CAAC;IAC7G,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;IAC1C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACnE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACnH,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC;IAC7F,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IAC1D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;CAClE,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IACxD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kCAAkC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC;KAC/E,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,gBAAgB,EAChB,sCAAsC,EACtC;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC7D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACxE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;IACzC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IAClE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACvD,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,8BAA8B,CAAC;CAC5F,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IACvD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC;KAC9E,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,aAAa,EACb,2BAA2B,EAC3B;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IACnE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;IACrD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACnE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACnE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACrE,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;IAC/G,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IACjE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;CACtE,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IACpD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,8BAA8B,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC;KAC3E,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,uFAAuF,EACvF;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;CAC1D,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;IACzD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,aAAa,EACb,iCAAiC,EACjC;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;CACpE,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IACvC,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,IAAI,CAAC,OAAO,wBAAwB,EAAE,CAAC;KAChF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,6DAA6D,EAC7D;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;CAC1D,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACnD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,0BAA0B,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;KAC7E,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,wDAAwD,EACxD;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;CAC1D,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACnD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;KAC5E,CAAC;AACJ,CAAC,CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,IAAI,CACT,eAAe,EACf,oEAAoE,EACpE;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;CAC1D,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IACtD,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,IAAI,CAAC,OAAO,uBAAuB,EAAE,CAAC;KAC/E,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;AAC/D,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
package/package.json ADDED
@@ -0,0 +1,49 @@
1
+ {
2
+ "name": "@clareo/clareo-mcp",
3
+ "version": "1.1.0",
4
+ "description": "Clareo MCP Server for task and project management",
5
+ "main": "build/index.js",
6
+ "type": "module",
7
+ "bin": {
8
+ "clareo-mcp": "build/index.js"
9
+ },
10
+ "files": [
11
+ "build"
12
+ ],
13
+ "scripts": {
14
+ "build": "tsc && chmod +x build/index.js",
15
+ "start": "node build/index.js",
16
+ "dev": "ts-node src/index.ts",
17
+ "test": "echo \"Error: no test specified\" && exit 1",
18
+ "release": "standard-version",
19
+ "prepare": "husky"
20
+ },
21
+ "repository": {
22
+ "type": "git",
23
+ "url": "git+https://github.com/prazerluizin/clareo-mcp.git"
24
+ },
25
+ "homepage": "https://github.com/prazerluizin/clareo-mcp#readme",
26
+ "bugs": {
27
+ "url": "https://github.com/prazerluizin/clareo-mcp/issues"
28
+ },
29
+ "keywords": [
30
+ "mcp",
31
+ "clareo",
32
+ "supabase"
33
+ ],
34
+ "author": "",
35
+ "license": "ISC",
36
+ "dependencies": {
37
+ "@modelcontextprotocol/sdk": "^1.27.1",
38
+ "@supabase/supabase-js": "^2.100.0",
39
+ "dotenv": "^17.3.1",
40
+ "zod": "^4.3.6"
41
+ },
42
+ "devDependencies": {
43
+ "@types/node": "^25.5.0",
44
+ "husky": "^9.1.7",
45
+ "standard-version": "^9.5.0",
46
+ "ts-node": "^10.9.2",
47
+ "typescript": "^6.0.2"
48
+ }
49
+ }