@tinyweb_dev/tracking-mcp-server 0.2.1 → 0.3.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/CHANGELOG.md +41 -0
- package/README.md +1 -1
- package/dist/schemas/project.d.ts +20 -7
- package/dist/schemas/project.d.ts.map +1 -1
- package/dist/schemas/project.js +23 -3
- package/dist/schemas/project.js.map +1 -1
- package/dist/tools/projects.d.ts +2 -1
- package/dist/tools/projects.d.ts.map +1 -1
- package/dist/tools/projects.js +15 -7
- package/dist/tools/projects.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,47 @@ All notable changes to `@tinyweb_dev/tracking-mcp-server` will be documented in
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.3.0] — 2026-05-27
|
|
9
|
+
|
|
10
|
+
### Breaking
|
|
11
|
+
|
|
12
|
+
- **`project_add_member` now takes `email` instead of `userId`.** The backend
|
|
13
|
+
contract (`AddProjectMemberDto`) was changed earlier to accept an email so
|
|
14
|
+
it can branch:
|
|
15
|
+
- If the email matches an existing org member → the backend inserts a
|
|
16
|
+
`ProjectMember` row immediately and the response is
|
|
17
|
+
`{ status: 'added', member }`.
|
|
18
|
+
- Otherwise → the backend creates an org invitation with this project +
|
|
19
|
+
role pre-attached and the response is `{ status: 'invited', invitation }`
|
|
20
|
+
— no separate `invitation_create` call required.
|
|
21
|
+
|
|
22
|
+
MCP `0.2.1` was still sending the old `{ userId, role }` body, so every
|
|
23
|
+
`project_add_member` call failed with HTTP 400
|
|
24
|
+
`"property userId should not exist; email must be an email"`. Migration:
|
|
25
|
+
replace `userId: "<token>"` with `email: "<user@example.com>"` at every
|
|
26
|
+
call site.
|
|
27
|
+
|
|
28
|
+
### Changed
|
|
29
|
+
|
|
30
|
+
- `addProjectMemberSchema` now validates `{ email: string().email(), role }`
|
|
31
|
+
(was `{ userId: userIdSchema, role }`).
|
|
32
|
+
- `project_add_member` tool description rewritten to document the
|
|
33
|
+
`added` vs `invited` branching, so agents know they don't need a
|
|
34
|
+
follow-up `invitation_create` call for non-org emails.
|
|
35
|
+
- `README.md` row for `project_add_member` clarifies the by-email semantics.
|
|
36
|
+
|
|
37
|
+
### Notes
|
|
38
|
+
|
|
39
|
+
- `userIdSchema` / `invitationIdSchema` / `textIdSchema` from `0.2.1` are
|
|
40
|
+
still used for response shapes (`orgMemberSchema.userId`,
|
|
41
|
+
`projectMemberSchema.userId`, `invitationSchema.id`) and for the
|
|
42
|
+
member-mutation tool inputs that still take a `user_id` path param
|
|
43
|
+
(`project_update_member_role`, `project_remove_member`,
|
|
44
|
+
`org_update_member_role`, `org_remove_member`). Only the
|
|
45
|
+
`project_add_member` body changed shape.
|
|
46
|
+
|
|
47
|
+
See task `.manager/tasks/archive/0006-mcp-project-add-member-field-name-mismatch-userid-vs-email.md`.
|
|
48
|
+
|
|
8
49
|
## [0.2.1] — 2026-05-27
|
|
9
50
|
|
|
10
51
|
### Fixed
|
package/README.md
CHANGED
|
@@ -188,7 +188,7 @@ Tổng **62 tools** chia theo 8 resource groups. Naming convention: `<resource>_
|
|
|
188
188
|
| `project_update` | Update project |
|
|
189
189
|
| `project_delete` | 🔴 Xóa project + monitors + errors (yêu cầu `confirm_name`) |
|
|
190
190
|
| `project_list_members` | List members + roles |
|
|
191
|
-
| `project_add_member` |
|
|
191
|
+
| `project_add_member` | Add user vào project **by email**. Nếu email đã là org member → insert trực tiếp (`status: "added"`); nếu chưa → tự động tạo invitation kèm pending project assignment (`status: "invited"`). |
|
|
192
192
|
| `project_update_member_role` | Đổi role (admin/editor/viewer) |
|
|
193
193
|
| `project_remove_member` | 🔴 Remove member |
|
|
194
194
|
|
|
@@ -21,15 +21,28 @@ export declare const updateProjectSchema: z.ZodObject<{
|
|
|
21
21
|
}, {
|
|
22
22
|
name?: string | undefined;
|
|
23
23
|
}>;
|
|
24
|
+
/**
|
|
25
|
+
* Body for `POST /api/projects/:id/members`.
|
|
26
|
+
*
|
|
27
|
+
* The backend branches on the email (`AddProjectMemberDto` in
|
|
28
|
+
* `backend/src/projects/members/dto/add-project-member.dto.ts`):
|
|
29
|
+
* - If the email matches an existing org member → inserts a
|
|
30
|
+
* `ProjectMember` row directly and returns `{ status: 'added', member }`.
|
|
31
|
+
* - Otherwise → creates an org invitation with the pending project
|
|
32
|
+
* assignment attached and returns `{ status: 'invited', invitation }`.
|
|
33
|
+
*
|
|
34
|
+
* The previous `userId` field was removed in MCP `0.3.0` to match this
|
|
35
|
+
* backend contract — see task 0006.
|
|
36
|
+
*/
|
|
24
37
|
export declare const addProjectMemberSchema: z.ZodObject<{
|
|
25
|
-
|
|
38
|
+
email: z.ZodString;
|
|
26
39
|
role: z.ZodEnum<["admin", "editor", "viewer"]>;
|
|
27
40
|
}, "strip", z.ZodTypeAny, {
|
|
28
41
|
role: "viewer" | "admin" | "editor";
|
|
29
|
-
|
|
42
|
+
email: string;
|
|
30
43
|
}, {
|
|
31
44
|
role: "viewer" | "admin" | "editor";
|
|
32
|
-
|
|
45
|
+
email: string;
|
|
33
46
|
}>;
|
|
34
47
|
export declare const updateProjectMemberRoleSchema: z.ZodObject<{
|
|
35
48
|
role: z.ZodEnum<["admin", "editor", "viewer"]>;
|
|
@@ -44,10 +57,10 @@ export declare const projectSchema: z.ZodObject<{
|
|
|
44
57
|
name: z.ZodString;
|
|
45
58
|
/**
|
|
46
59
|
* Only present on the response from `project_create` — backend returns the
|
|
47
|
-
* plaintext key of the auto-provisioned
|
|
60
|
+
* plaintext key of the auto-provisioned initial service exactly once.
|
|
48
61
|
*/
|
|
49
62
|
apiKey: z.ZodOptional<z.ZodString>;
|
|
50
|
-
|
|
63
|
+
initialServiceId: z.ZodOptional<z.ZodString>;
|
|
51
64
|
apiKeyPrefix: z.ZodOptional<z.ZodString>;
|
|
52
65
|
createdAt: z.ZodOptional<z.ZodString>;
|
|
53
66
|
updatedAt: z.ZodOptional<z.ZodString>;
|
|
@@ -58,7 +71,7 @@ export declare const projectSchema: z.ZodObject<{
|
|
|
58
71
|
createdAt?: string | undefined;
|
|
59
72
|
updatedAt?: string | undefined;
|
|
60
73
|
apiKey?: string | undefined;
|
|
61
|
-
|
|
74
|
+
initialServiceId?: string | undefined;
|
|
62
75
|
apiKeyPrefix?: string | undefined;
|
|
63
76
|
}, {
|
|
64
77
|
name: string;
|
|
@@ -67,7 +80,7 @@ export declare const projectSchema: z.ZodObject<{
|
|
|
67
80
|
createdAt?: string | undefined;
|
|
68
81
|
updatedAt?: string | undefined;
|
|
69
82
|
apiKey?: string | undefined;
|
|
70
|
-
|
|
83
|
+
initialServiceId?: string | undefined;
|
|
71
84
|
apiKeyPrefix?: string | undefined;
|
|
72
85
|
}>;
|
|
73
86
|
export declare const projectMemberSchema: z.ZodObject<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/schemas/project.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/schemas/project.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,iBAAiB,0CAAwC,CAAC;AACvE,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,mBAAmB;;;;;;EAE9B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;EAE9B,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;EAWjC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;EAExC,CAAC;AAEH,eAAO,MAAM,aAAa;;;;IAIxB;;;OAGG;;;;;;;;;;;;;;;;;;;;;;;;EAMH,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;EAM9B,CAAC"}
|
package/dist/schemas/project.js
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { z } from 'zod';
|
|
8
8
|
import { idSchema, userIdSchema } from './common.js';
|
|
9
|
+
// userIdSchema is still referenced by projectMemberSchema (response shape).
|
|
9
10
|
export const projectRoleSchema = z.enum(['admin', 'editor', 'viewer']);
|
|
10
11
|
export const createProjectSchema = z.object({
|
|
11
12
|
name: z.string().min(1).max(100),
|
|
@@ -13,8 +14,27 @@ export const createProjectSchema = z.object({
|
|
|
13
14
|
export const updateProjectSchema = z.object({
|
|
14
15
|
name: z.string().min(1).max(100).optional(),
|
|
15
16
|
});
|
|
17
|
+
/**
|
|
18
|
+
* Body for `POST /api/projects/:id/members`.
|
|
19
|
+
*
|
|
20
|
+
* The backend branches on the email (`AddProjectMemberDto` in
|
|
21
|
+
* `backend/src/projects/members/dto/add-project-member.dto.ts`):
|
|
22
|
+
* - If the email matches an existing org member → inserts a
|
|
23
|
+
* `ProjectMember` row directly and returns `{ status: 'added', member }`.
|
|
24
|
+
* - Otherwise → creates an org invitation with the pending project
|
|
25
|
+
* assignment attached and returns `{ status: 'invited', invitation }`.
|
|
26
|
+
*
|
|
27
|
+
* The previous `userId` field was removed in MCP `0.3.0` to match this
|
|
28
|
+
* backend contract — see task 0006.
|
|
29
|
+
*/
|
|
16
30
|
export const addProjectMemberSchema = z.object({
|
|
17
|
-
|
|
31
|
+
email: z
|
|
32
|
+
.string()
|
|
33
|
+
.email('Must be a valid email address')
|
|
34
|
+
.describe('Email of the user to add. If the email belongs to an existing org ' +
|
|
35
|
+
'member they are added to the project immediately; otherwise the ' +
|
|
36
|
+
'backend creates a pending invitation with this project + role ' +
|
|
37
|
+
'pre-attached (no extra MCP call needed).'),
|
|
18
38
|
role: projectRoleSchema,
|
|
19
39
|
});
|
|
20
40
|
export const updateProjectMemberRoleSchema = z.object({
|
|
@@ -26,10 +46,10 @@ export const projectSchema = z.object({
|
|
|
26
46
|
name: z.string(),
|
|
27
47
|
/**
|
|
28
48
|
* Only present on the response from `project_create` — backend returns the
|
|
29
|
-
* plaintext key of the auto-provisioned
|
|
49
|
+
* plaintext key of the auto-provisioned initial service exactly once.
|
|
30
50
|
*/
|
|
31
51
|
apiKey: z.string().optional(),
|
|
32
|
-
|
|
52
|
+
initialServiceId: idSchema.optional(),
|
|
33
53
|
apiKeyPrefix: z.string().optional(),
|
|
34
54
|
createdAt: z.string().optional(),
|
|
35
55
|
updatedAt: z.string().optional(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/schemas/project.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/schemas/project.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACrD,4EAA4E;AAE5E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AAGvE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;CACjC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CAC5C,CAAC,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,KAAK,CAAC,+BAA+B,CAAC;SACtC,QAAQ,CACP,oEAAoE;QAClE,kEAAkE;QAClE,gEAAgE;QAChE,0CAA0C,CAC7C;IACH,IAAI,EAAE,iBAAiB;CACxB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,IAAI,EAAE,iBAAiB;CACxB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,EAAE,EAAE,QAAQ;IACZ,cAAc,EAAE,QAAQ;IACxB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB;;;OAGG;IACH,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,gBAAgB,EAAE,QAAQ,CAAC,QAAQ,EAAE;IACrC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,MAAM,EAAE,YAAY;IACpB,SAAS,EAAE,QAAQ;IACnB,IAAI,EAAE,iBAAiB;IACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE;IACpC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC5B,CAAC,CAAC"}
|
package/dist/tools/projects.d.ts
CHANGED
|
@@ -15,7 +15,8 @@
|
|
|
15
15
|
* NOTE: Project-level API keys were removed in favor of per-service keys.
|
|
16
16
|
* The `service_*` tools (see `tools/services.ts`) handle key prefix / reveal /
|
|
17
17
|
* regenerate now. `project_create` still returns a one-off `apiKey` field —
|
|
18
|
-
* that is the plaintext key of the auto-provisioned
|
|
18
|
+
* that is the plaintext key of the auto-provisioned initial service (slug
|
|
19
|
+
* `default`), which itself can be renamed / deleted like any other service.
|
|
19
20
|
*/
|
|
20
21
|
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
21
22
|
export declare function registerProjectTools(server: McpServer): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/tools/projects.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/tools/projects.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmBzE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAuO5D"}
|
package/dist/tools/projects.js
CHANGED
|
@@ -25,10 +25,12 @@ export function registerProjectTools(server) {
|
|
|
25
25
|
server.registerTool('project_create', {
|
|
26
26
|
title: 'Create project',
|
|
27
27
|
description: 'Create a new project within an organization. The backend auto-provisions ' +
|
|
28
|
-
'
|
|
29
|
-
'service\'s plaintext `apiKey` (along with
|
|
30
|
-
'`apiKeyPrefix`) exactly once — copy it
|
|
31
|
-
'SDK with it.
|
|
28
|
+
'an initial service named "Default" for the project and the response ' +
|
|
29
|
+
'includes that service\'s plaintext `apiKey` (along with ' +
|
|
30
|
+
'`initialServiceId` and `apiKeyPrefix`) exactly once — copy it ' +
|
|
31
|
+
'immediately and configure your SDK with it. The initial service has ' +
|
|
32
|
+
'no special flag — it can be renamed / deleted like any other. Use ' +
|
|
33
|
+
'`service_create` to add more services per runtime.',
|
|
32
34
|
inputSchema: {
|
|
33
35
|
org_id: idSchema.optional(),
|
|
34
36
|
...createProjectSchema.shape,
|
|
@@ -115,9 +117,15 @@ export function registerProjectTools(server) {
|
|
|
115
117
|
}));
|
|
116
118
|
/* ---------------- project_add_member ---------------- */
|
|
117
119
|
server.registerTool('project_add_member', {
|
|
118
|
-
title: 'Add project member',
|
|
119
|
-
description: 'Add
|
|
120
|
-
'
|
|
120
|
+
title: 'Add project member (by email)',
|
|
121
|
+
description: 'Add a user to a project by email. ' +
|
|
122
|
+
'If the email belongs to an existing org member, the backend inserts ' +
|
|
123
|
+
'a ProjectMember row directly and the response is ' +
|
|
124
|
+
'`{ status: "added", member }`. If the email does NOT belong to any ' +
|
|
125
|
+
'org member, the backend creates a pending org invitation with this ' +
|
|
126
|
+
'project + role pre-attached and the response is ' +
|
|
127
|
+
'`{ status: "invited", invitation }` — no separate `invitation_create` ' +
|
|
128
|
+
'call needed. Requires project admin role.',
|
|
121
129
|
inputSchema: {
|
|
122
130
|
project_id: idSchema,
|
|
123
131
|
...addProjectMemberSchema.shape,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/tools/projects.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/tools/projects.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,6BAA6B,EAC7B,QAAQ,EACR,YAAY,GACb,MAAM,qBAAqB,CAAC;AAE7B,MAAM,UAAU,oBAAoB,CAAC,MAAiB;IACpD,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAE5B,oDAAoD;IACpD,MAAM,CAAC,YAAY,CACjB,cAAc,EACd;QACE,KAAK,EAAE,+BAA+B;QACtC,WAAW,EACT,iEAAiE;YACjE,mDAAmD;QACrD,WAAW,EAAE;YACX,MAAM,EAAE,QAAQ,CAAC,QAAQ,EAAE;SAC5B;KACF,EACD,WAAW,CAAC,cAAc,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;QAC/C,MAAM,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAG,MAAM,OAAO,CAAU;YAClC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,sBAAsB,kBAAkB,CAAC,EAAE,CAAC,WAAW;SAC7D,CAAC,CAAC;QACH,OAAO,eAAe,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC,CAAC,CACH,CAAC;IAEF,sDAAsD;IACtD,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,KAAK,EAAE,gBAAgB;QACvB,WAAW,EACT,2EAA2E;YAC3E,sEAAsE;YACtE,0DAA0D;YAC1D,gEAAgE;YAChE,sEAAsE;YACtE,oEAAoE;YACpE,oDAAoD;QACtD,WAAW,EAAE;YACX,MAAM,EAAE,QAAQ,CAAC,QAAQ,EAAE;YAC3B,GAAG,mBAAmB,CAAC,KAAK;SAC7B;KACF,EACD,WAAW,CAAC,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QAC5C,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,KAAsD,CAAC;QACnF,MAAM,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAG,MAAM,OAAO,CAAU;YAClC,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,sBAAsB,kBAAkB,CAAC,EAAE,CAAC,WAAW;YAC5D,IAAI;SACL,CAAC,CAAC;QACH,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC,CAAC,CACH,CAAC;IAEF,mDAAmD;IACnD,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;QACE,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,qCAAqC;QAClD,WAAW,EAAE;YACX,UAAU,EAAE,QAAQ;SACrB;KACF,EACD,WAAW,CAAC,aAAa,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;QAClD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAU;YAClC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,iBAAiB,kBAAkB,CAAC,UAAU,CAAC,EAAE;SACvD,CAAC,CAAC;QACH,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC,CAAC,CACH,CAAC;IAEF,sDAAsD;IACtD,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,KAAK,EAAE,gBAAgB;QACvB,WAAW,EAAE,iDAAiD;QAC9D,WAAW,EAAE;YACX,UAAU,EAAE,QAAQ;YACpB,GAAG,mBAAmB,CAAC,KAAK;SAC7B;KACF,EACD,WAAW,CAAC,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QAC5C,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,EAAE,GAAG,KAEN,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAU;YAClC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,iBAAiB,kBAAkB,CAAC,UAAU,CAAC,EAAE;YACtD,IAAI,EAAE,KAAK;SACZ,CAAC,CAAC;QACH,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC,CAAC,CACH,CAAC;IAEF,oEAAoE;IACpE,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;QACE,KAAK,EAAE,gBAAgB;QACvB,WAAW,EACT,yEAAyE;YACzE,2EAA2E;YAC3E,oDAAoD;QACtD,WAAW,EAAE;YACX,UAAU,EAAE,QAAQ;YACpB,YAAY,EAAE,CAAC;iBACZ,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,CAAC,2CAA2C,CAAC;SACzD;KACF,EACD,WAAW,CAAC,gBAAgB,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE;QACnE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAmB;YAC9C,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,iBAAiB,kBAAkB,CAAC,UAAU,CAAC,EAAE;SACvD,CAAC,CAAC;QACH,mBAAmB,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,EAAE,YAAY,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;QAC7E,MAAM,OAAO,CAAU;YACrB,MAAM,EAAE,QAAQ;YAChB,GAAG,EAAE,iBAAiB,kBAAkB,CAAC,UAAU,CAAC,EAAE;SACvD,CAAC,CAAC;QACH,OAAO,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACvF,CAAC,CAAC,CACH,CAAC;IAEF,4DAA4D;IAC5D,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;QACE,KAAK,EAAE,sBAAsB;QAC7B,WAAW,EACT,uEAAuE;QACzE,WAAW,EAAE;YACX,UAAU,EAAE,QAAQ;SACrB;KACF,EACD,WAAW,CAAC,sBAAsB,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;QAC3D,MAAM,IAAI,GAAG,MAAM,OAAO,CAAU;YAClC,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,iBAAiB,kBAAkB,CAAC,UAAU,CAAC,UAAU;SAC/D,CAAC,CAAC;QACH,OAAO,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC,CACH,CAAC;IAEF,0DAA0D;IAC1D,MAAM,CAAC,YAAY,CACjB,oBAAoB,EACpB;QACE,KAAK,EAAE,+BAA+B;QACtC,WAAW,EACT,oCAAoC;YACpC,sEAAsE;YACtE,mDAAmD;YACnD,qEAAqE;YACrE,qEAAqE;YACrE,kDAAkD;YAClD,wEAAwE;YACxE,2CAA2C;QAC7C,WAAW,EAAE;YACX,UAAU,EAAE,QAAQ;YACpB,GAAG,sBAAsB,CAAC,KAAK;SAChC;KACF,EACD,WAAW,CAAC,oBAAoB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QAChD,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,KAEL,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAU;YAClC,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,iBAAiB,kBAAkB,CAAC,UAAU,CAAC,UAAU;YAC9D,IAAI;SACL,CAAC,CAAC;QACH,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC,CAAC,CACH,CAAC;IAEF,kEAAkE;IAClE,MAAM,CAAC,YAAY,CACjB,4BAA4B,EAC5B;QACE,KAAK,EAAE,4BAA4B;QACnC,WAAW,EACT,wEAAwE;QAC1E,WAAW,EAAE;YACX,UAAU,EAAE,QAAQ;YACpB,OAAO,EAAE,YAAY;YACrB,GAAG,6BAA6B,CAAC,KAAK;SACvC;KACF,EACD,WAAW,CAAC,4BAA4B,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACxD,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,KAGf,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAU;YAClC,MAAM,EAAE,OAAO;YACf,GAAG,EAAE,iBAAiB,kBAAkB,CAAC,UAAU,CAAC,YAAY,kBAAkB,CAAC,OAAO,CAAC,EAAE;YAC7F,IAAI,EAAE,KAAK;SACZ,CAAC,CAAC;QACH,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC,CAAC,CACH,CAAC;IAEF,2EAA2E;IAC3E,MAAM,CAAC,YAAY,CACjB,uBAAuB,EACvB;QACE,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EACT,2EAA2E;YAC3E,4DAA4D;QAC9D,WAAW,EAAE;YACX,UAAU,EAAE,QAAQ;YACpB,OAAO,EAAE,YAAY;YACrB,eAAe,EAAE,YAAY,CAAC,QAAQ,CAAC,oCAAoC,CAAC;SAC7E;KACF,EACD,WAAW,CAAC,uBAAuB,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE;QACtF,mBAAmB,CAAC,eAAe,EAAE,OAAO,EAAE,kBAAkB,OAAO,EAAE,CAAC,CAAC;QAC3E,MAAM,OAAO,CAAU;YACrB,MAAM,EAAE,QAAQ;YAChB,GAAG,EAAE,iBAAiB,kBAAkB,CAAC,UAAU,CAAC,YAAY,kBAAkB,CAAC,OAAO,CAAC,EAAE;SAC9F,CAAC,CAAC;QACH,OAAO,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IACpF,CAAC,CAAC,CACH,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tinyweb_dev/tracking-mcp-server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "MCP server for Tiny Tracking — lets AI agents manage organizations, projects, monitors, status pages, incidents, errors, and more via REST API",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|