@uidbai/mcp-server 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.
- package/LICENSE +21 -0
- package/README.md +133 -0
- package/dist/cli.d.ts +13 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +117 -0
- package/dist/cli.js.map +1 -0
- package/dist/core/api-client.d.ts +45 -0
- package/dist/core/api-client.d.ts.map +1 -0
- package/dist/core/api-client.js +98 -0
- package/dist/core/api-client.js.map +1 -0
- package/dist/core/auth.d.ts +42 -0
- package/dist/core/auth.d.ts.map +1 -0
- package/dist/core/auth.js +198 -0
- package/dist/core/auth.js.map +1 -0
- package/dist/core/errors.d.ts +32 -0
- package/dist/core/errors.d.ts.map +1 -0
- package/dist/core/errors.js +72 -0
- package/dist/core/errors.js.map +1 -0
- package/dist/core/index.d.ts +10 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +10 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/types.d.ts +124 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +52 -0
- package/dist/core/types.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -0
- package/dist/prompts/component-guidance.d.ts +16 -0
- package/dist/prompts/component-guidance.d.ts.map +1 -0
- package/dist/prompts/component-guidance.js +98 -0
- package/dist/prompts/component-guidance.js.map +1 -0
- package/dist/prompts/index.d.ts +6 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +6 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/registry.d.ts +37 -0
- package/dist/prompts/registry.d.ts.map +1 -0
- package/dist/prompts/registry.js +40 -0
- package/dist/prompts/registry.js.map +1 -0
- package/dist/resources/index.d.ts +6 -0
- package/dist/resources/index.d.ts.map +1 -0
- package/dist/resources/index.js +6 -0
- package/dist/resources/index.js.map +1 -0
- package/dist/resources/project-config.d.ts +33 -0
- package/dist/resources/project-config.d.ts.map +1 -0
- package/dist/resources/project-config.js +146 -0
- package/dist/resources/project-config.js.map +1 -0
- package/dist/resources/registry.d.ts +20 -0
- package/dist/resources/registry.d.ts.map +1 -0
- package/dist/resources/registry.js +45 -0
- package/dist/resources/registry.js.map +1 -0
- package/dist/server.d.ts +9 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +111 -0
- package/dist/server.js.map +1 -0
- package/dist/tools/ask-intent.d.ts +35 -0
- package/dist/tools/ask-intent.d.ts.map +1 -0
- package/dist/tools/ask-intent.js +50 -0
- package/dist/tools/ask-intent.js.map +1 -0
- package/dist/tools/ask-question.d.ts +40 -0
- package/dist/tools/ask-question.d.ts.map +1 -0
- package/dist/tools/ask-question.js +58 -0
- package/dist/tools/ask-question.js.map +1 -0
- package/dist/tools/detect-pattern.d.ts +48 -0
- package/dist/tools/detect-pattern.d.ts.map +1 -0
- package/dist/tools/detect-pattern.js +64 -0
- package/dist/tools/detect-pattern.js.map +1 -0
- package/dist/tools/finalize.d.ts +35 -0
- package/dist/tools/finalize.d.ts.map +1 -0
- package/dist/tools/finalize.js +51 -0
- package/dist/tools/finalize.js.map +1 -0
- package/dist/tools/get-config.d.ts +28 -0
- package/dist/tools/get-config.d.ts.map +1 -0
- package/dist/tools/get-config.js +48 -0
- package/dist/tools/get-config.js.map +1 -0
- package/dist/tools/index.d.ts +18 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +19 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/list-components.d.ts +28 -0
- package/dist/tools/list-components.d.ts.map +1 -0
- package/dist/tools/list-components.js +44 -0
- package/dist/tools/list-components.js.map +1 -0
- package/dist/tools/list-patterns.d.ts +28 -0
- package/dist/tools/list-patterns.d.ts.map +1 -0
- package/dist/tools/list-patterns.js +44 -0
- package/dist/tools/list-patterns.js.map +1 -0
- package/dist/tools/login.d.ts +35 -0
- package/dist/tools/login.d.ts.map +1 -0
- package/dist/tools/login.js +100 -0
- package/dist/tools/login.js.map +1 -0
- package/dist/tools/registry.d.ts +50 -0
- package/dist/tools/registry.d.ts.map +1 -0
- package/dist/tools/registry.js +75 -0
- package/dist/tools/registry.js.map +1 -0
- package/dist/tools/status.d.ts +28 -0
- package/dist/tools/status.d.ts.map +1 -0
- package/dist/tools/status.js +88 -0
- package/dist/tools/status.js.map +1 -0
- package/dist/tools/submit-pattern.d.ts +67 -0
- package/dist/tools/submit-pattern.d.ts.map +1 -0
- package/dist/tools/submit-pattern.js +94 -0
- package/dist/tools/submit-pattern.js.map +1 -0
- package/dist/tools/update-config.d.ts +48 -0
- package/dist/tools/update-config.d.ts.map +1 -0
- package/dist/tools/update-config.js +94 -0
- package/dist/tools/update-config.js.map +1 -0
- package/package.json +68 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Tool: uidb_ask_intent
|
|
3
|
+
*
|
|
4
|
+
* Start a component guidance flow by describing what UI you need.
|
|
5
|
+
*/
|
|
6
|
+
export declare const askIntentTool: {
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
inputSchema: {
|
|
10
|
+
type: "object";
|
|
11
|
+
properties: {
|
|
12
|
+
description: {
|
|
13
|
+
type: string;
|
|
14
|
+
description: string;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
required: string[];
|
|
18
|
+
};
|
|
19
|
+
execute(args: {
|
|
20
|
+
description: string;
|
|
21
|
+
}): Promise<{
|
|
22
|
+
content: {
|
|
23
|
+
type: "text";
|
|
24
|
+
text: string;
|
|
25
|
+
}[];
|
|
26
|
+
isError?: undefined;
|
|
27
|
+
} | {
|
|
28
|
+
content: {
|
|
29
|
+
type: "text";
|
|
30
|
+
text: string;
|
|
31
|
+
}[];
|
|
32
|
+
isError: boolean;
|
|
33
|
+
}>;
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=ask-intent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ask-intent.d.ts","sourceRoot":"","sources":["../../src/tools/ask-intent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,eAAO,MAAM,aAAa;;;;;;;;;;;;;kBAoBJ;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;CA2B5C,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Tool: uidb_ask_intent
|
|
3
|
+
*
|
|
4
|
+
* Start a component guidance flow by describing what UI you need.
|
|
5
|
+
*/
|
|
6
|
+
import { apiClient } from "../core/api-client.js";
|
|
7
|
+
import { formatErrorResponse } from "../core/errors.js";
|
|
8
|
+
export const askIntentTool = {
|
|
9
|
+
name: "uidb_ask_intent",
|
|
10
|
+
description: `Start a UIDB component guidance flow. Describe what UI component you need and UIDB will guide you through selecting the right component, variant, size, and colors.
|
|
11
|
+
|
|
12
|
+
Example: "I need a button to submit a contact form" or "I need a card to display user profile information"
|
|
13
|
+
|
|
14
|
+
Returns a session_id to use with uidb_ask_question for follow-up questions.`,
|
|
15
|
+
inputSchema: {
|
|
16
|
+
type: "object",
|
|
17
|
+
properties: {
|
|
18
|
+
description: {
|
|
19
|
+
type: "string",
|
|
20
|
+
description: "Describe the UI component you need. Be specific about the use case.",
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
required: ["description"],
|
|
24
|
+
},
|
|
25
|
+
async execute(args) {
|
|
26
|
+
try {
|
|
27
|
+
const response = await apiClient.post("/api/component/ask-intent", { description: args.description });
|
|
28
|
+
return {
|
|
29
|
+
content: [
|
|
30
|
+
{
|
|
31
|
+
type: "text",
|
|
32
|
+
text: JSON.stringify(response, null, 2),
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
return {
|
|
39
|
+
content: [
|
|
40
|
+
{
|
|
41
|
+
type: "text",
|
|
42
|
+
text: formatErrorResponse(error),
|
|
43
|
+
},
|
|
44
|
+
],
|
|
45
|
+
isError: true,
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=ask-intent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ask-intent.js","sourceRoot":"","sources":["../../src/tools/ask-intent.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE;;;;4EAI6D;IAE1E,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,qEAAqE;aACxE;SACF;QACD,QAAQ,EAAE,CAAC,aAAa,CAAC;KAC1B;IAED,KAAK,CAAC,OAAO,CAAC,IAA6B;QACzC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,CACnC,2BAA2B,EAC3B,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAClC,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;qBACxC;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,mBAAmB,CAAC,KAAK,CAAC;qBACjC;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Tool: uidb_ask_question
|
|
3
|
+
*
|
|
4
|
+
* Continue a component guidance flow by answering a question.
|
|
5
|
+
*/
|
|
6
|
+
export declare const askQuestionTool: {
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
inputSchema: {
|
|
10
|
+
type: "object";
|
|
11
|
+
properties: {
|
|
12
|
+
session_id: {
|
|
13
|
+
type: string;
|
|
14
|
+
description: string;
|
|
15
|
+
};
|
|
16
|
+
answer: {
|
|
17
|
+
type: string;
|
|
18
|
+
description: string;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
required: string[];
|
|
22
|
+
};
|
|
23
|
+
execute(args: {
|
|
24
|
+
session_id: string;
|
|
25
|
+
answer: string;
|
|
26
|
+
}): Promise<{
|
|
27
|
+
content: {
|
|
28
|
+
type: "text";
|
|
29
|
+
text: string;
|
|
30
|
+
}[];
|
|
31
|
+
isError?: undefined;
|
|
32
|
+
} | {
|
|
33
|
+
content: {
|
|
34
|
+
type: "text";
|
|
35
|
+
text: string;
|
|
36
|
+
}[];
|
|
37
|
+
isError: boolean;
|
|
38
|
+
}>;
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=ask-question.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ask-question.d.ts","sourceRoot":"","sources":["../../src/tools/ask-question.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;kBA0BN;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;CA8B3D,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Tool: uidb_ask_question
|
|
3
|
+
*
|
|
4
|
+
* Continue a component guidance flow by answering a question.
|
|
5
|
+
*/
|
|
6
|
+
import { apiClient } from "../core/api-client.js";
|
|
7
|
+
import { formatErrorResponse } from "../core/errors.js";
|
|
8
|
+
export const askQuestionTool = {
|
|
9
|
+
name: "uidb_ask_question",
|
|
10
|
+
description: `Continue a UIDB component guidance flow by answering a clarifying question.
|
|
11
|
+
|
|
12
|
+
Use the session_id from uidb_ask_intent or a previous uidb_ask_question call.
|
|
13
|
+
Provide your answer based on the options given in the previous response.
|
|
14
|
+
|
|
15
|
+
When the flow is complete, use uidb_finalize to get the final component code.`,
|
|
16
|
+
inputSchema: {
|
|
17
|
+
type: "object",
|
|
18
|
+
properties: {
|
|
19
|
+
session_id: {
|
|
20
|
+
type: "string",
|
|
21
|
+
description: "The session ID from the previous uidb_ask_intent or uidb_ask_question call",
|
|
22
|
+
},
|
|
23
|
+
answer: {
|
|
24
|
+
type: "string",
|
|
25
|
+
description: "Your answer to the question. Use one of the provided options when available.",
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
required: ["session_id", "answer"],
|
|
29
|
+
},
|
|
30
|
+
async execute(args) {
|
|
31
|
+
try {
|
|
32
|
+
const response = await apiClient.post("/api/component/ask-question", {
|
|
33
|
+
session_id: args.session_id,
|
|
34
|
+
answer: args.answer,
|
|
35
|
+
});
|
|
36
|
+
return {
|
|
37
|
+
content: [
|
|
38
|
+
{
|
|
39
|
+
type: "text",
|
|
40
|
+
text: JSON.stringify(response, null, 2),
|
|
41
|
+
},
|
|
42
|
+
],
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
return {
|
|
47
|
+
content: [
|
|
48
|
+
{
|
|
49
|
+
type: "text",
|
|
50
|
+
text: formatErrorResponse(error),
|
|
51
|
+
},
|
|
52
|
+
],
|
|
53
|
+
isError: true,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=ask-question.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ask-question.js","sourceRoot":"","sources":["../../src/tools/ask-question.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,mBAAmB;IACzB,WAAW,EAAE;;;;;8EAK+D;IAE5E,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,4EAA4E;aAC/E;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,8EAA8E;aACjF;SACF;QACD,QAAQ,EAAE,CAAC,YAAY,EAAE,QAAQ,CAAC;KACnC;IAED,KAAK,CAAC,OAAO,CAAC,IAA4C;QACxD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,CACnC,6BAA6B,EAC7B;gBACE,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CACF,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;qBACxC;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,mBAAmB,CAAC,KAAK,CAAC;qBACjC;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Tool: uidb_detect_pattern
|
|
3
|
+
*
|
|
4
|
+
* Check if a UI composition is a reusable pattern.
|
|
5
|
+
*/
|
|
6
|
+
export declare const detectPatternTool: {
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
inputSchema: {
|
|
10
|
+
type: "object";
|
|
11
|
+
properties: {
|
|
12
|
+
description: {
|
|
13
|
+
type: string;
|
|
14
|
+
description: string;
|
|
15
|
+
};
|
|
16
|
+
components_used: {
|
|
17
|
+
type: string;
|
|
18
|
+
items: {
|
|
19
|
+
type: string;
|
|
20
|
+
};
|
|
21
|
+
description: string;
|
|
22
|
+
};
|
|
23
|
+
context: {
|
|
24
|
+
type: string;
|
|
25
|
+
description: string;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
required: string[];
|
|
29
|
+
};
|
|
30
|
+
execute(args: {
|
|
31
|
+
description: string;
|
|
32
|
+
components_used: string[];
|
|
33
|
+
context?: string;
|
|
34
|
+
}): Promise<{
|
|
35
|
+
content: {
|
|
36
|
+
type: "text";
|
|
37
|
+
text: string;
|
|
38
|
+
}[];
|
|
39
|
+
isError?: undefined;
|
|
40
|
+
} | {
|
|
41
|
+
content: {
|
|
42
|
+
type: "text";
|
|
43
|
+
text: string;
|
|
44
|
+
}[];
|
|
45
|
+
isError: boolean;
|
|
46
|
+
}>;
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=detect-pattern.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detect-pattern.d.ts","sourceRoot":"","sources":["../../src/tools/detect-pattern.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;kBAgCR;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;;;;;;;;;;;;;CA+BF,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Tool: uidb_detect_pattern
|
|
3
|
+
*
|
|
4
|
+
* Check if a UI composition is a reusable pattern.
|
|
5
|
+
*/
|
|
6
|
+
import { apiClient } from "../core/api-client.js";
|
|
7
|
+
import { formatErrorResponse } from "../core/errors.js";
|
|
8
|
+
export const detectPatternTool = {
|
|
9
|
+
name: "uidb_detect_pattern",
|
|
10
|
+
description: `Check if a UI composition (3+ components) is a reusable pattern.
|
|
11
|
+
|
|
12
|
+
Use this after building a multi-component UI to see if it should be documented as a pattern.
|
|
13
|
+
If a pattern is detected, use uidb_submit_pattern to add it to the design system.
|
|
14
|
+
|
|
15
|
+
Example: After building a user profile card with Avatar, Text, and Flex components.`,
|
|
16
|
+
inputSchema: {
|
|
17
|
+
type: "object",
|
|
18
|
+
properties: {
|
|
19
|
+
description: {
|
|
20
|
+
type: "string",
|
|
21
|
+
description: "Describe what you built (e.g., 'User profile card with avatar, name, and email')",
|
|
22
|
+
},
|
|
23
|
+
components_used: {
|
|
24
|
+
type: "array",
|
|
25
|
+
items: { type: "string" },
|
|
26
|
+
description: "List of component names used (e.g., ['Avatar', 'Text', 'Flex', 'Box'])",
|
|
27
|
+
},
|
|
28
|
+
context: {
|
|
29
|
+
type: "string",
|
|
30
|
+
description: "Where this UI is used (e.g., 'dropdown menu', 'sidebar', 'modal header')",
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
required: ["description", "components_used"],
|
|
34
|
+
},
|
|
35
|
+
async execute(args) {
|
|
36
|
+
try {
|
|
37
|
+
const response = await apiClient.post("/api/pattern/detect", {
|
|
38
|
+
description: args.description,
|
|
39
|
+
components_used: args.components_used,
|
|
40
|
+
...(args.context && { context: args.context }),
|
|
41
|
+
});
|
|
42
|
+
return {
|
|
43
|
+
content: [
|
|
44
|
+
{
|
|
45
|
+
type: "text",
|
|
46
|
+
text: JSON.stringify(response, null, 2),
|
|
47
|
+
},
|
|
48
|
+
],
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
catch (error) {
|
|
52
|
+
return {
|
|
53
|
+
content: [
|
|
54
|
+
{
|
|
55
|
+
type: "text",
|
|
56
|
+
text: formatErrorResponse(error),
|
|
57
|
+
},
|
|
58
|
+
],
|
|
59
|
+
isError: true,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
};
|
|
64
|
+
//# sourceMappingURL=detect-pattern.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detect-pattern.js","sourceRoot":"","sources":["../../src/tools/detect-pattern.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE;;;;;oFAKqE;IAElF,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,kFAAkF;aACrF;YACD,eAAe,EAAE;gBACf,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EACT,wEAAwE;aAC3E;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,0EAA0E;aAC7E;SACF;QACD,QAAQ,EAAE,CAAC,aAAa,EAAE,iBAAiB,CAAC;KAC7C;IAED,KAAK,CAAC,OAAO,CAAC,IAIb;QACC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,CACnC,qBAAqB,EACrB;gBACE,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;aAC/C,CACF,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;qBACxC;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,mBAAmB,CAAC,KAAK,CAAC;qBACjC;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Tool: uidb_finalize
|
|
3
|
+
*
|
|
4
|
+
* Get the final component code after completing the guidance flow.
|
|
5
|
+
*/
|
|
6
|
+
export declare const finalizeTool: {
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
inputSchema: {
|
|
10
|
+
type: "object";
|
|
11
|
+
properties: {
|
|
12
|
+
session_id: {
|
|
13
|
+
type: string;
|
|
14
|
+
description: string;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
required: string[];
|
|
18
|
+
};
|
|
19
|
+
execute(args: {
|
|
20
|
+
session_id: string;
|
|
21
|
+
}): Promise<{
|
|
22
|
+
content: {
|
|
23
|
+
type: "text";
|
|
24
|
+
text: string;
|
|
25
|
+
}[];
|
|
26
|
+
isError?: undefined;
|
|
27
|
+
} | {
|
|
28
|
+
content: {
|
|
29
|
+
type: "text";
|
|
30
|
+
text: string;
|
|
31
|
+
}[];
|
|
32
|
+
isError: boolean;
|
|
33
|
+
}>;
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=finalize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"finalize.d.ts","sourceRoot":"","sources":["../../src/tools/finalize.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,eAAO,MAAM,YAAY;;;;;;;;;;;;;kBAoBH;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;CA2B3C,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Tool: uidb_finalize
|
|
3
|
+
*
|
|
4
|
+
* Get the final component code after completing the guidance flow.
|
|
5
|
+
*/
|
|
6
|
+
import { apiClient } from "../core/api-client.js";
|
|
7
|
+
import { formatErrorResponse } from "../core/errors.js";
|
|
8
|
+
export const finalizeTool = {
|
|
9
|
+
name: "uidb_finalize",
|
|
10
|
+
description: `Get the final component code after completing the UIDB guidance flow.
|
|
11
|
+
|
|
12
|
+
Use the session_id from your uidb_ask_intent / uidb_ask_question conversation.
|
|
13
|
+
Returns the recommended component code with proper variant, size, color, and accessibility notes.
|
|
14
|
+
|
|
15
|
+
IMPORTANT: Always use this code exactly as provided to ensure design system consistency.`,
|
|
16
|
+
inputSchema: {
|
|
17
|
+
type: "object",
|
|
18
|
+
properties: {
|
|
19
|
+
session_id: {
|
|
20
|
+
type: "string",
|
|
21
|
+
description: "The session ID from the guidance flow",
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
required: ["session_id"],
|
|
25
|
+
},
|
|
26
|
+
async execute(args) {
|
|
27
|
+
try {
|
|
28
|
+
const response = await apiClient.post("/api/component/finalize", { session_id: args.session_id });
|
|
29
|
+
return {
|
|
30
|
+
content: [
|
|
31
|
+
{
|
|
32
|
+
type: "text",
|
|
33
|
+
text: JSON.stringify(response, null, 2),
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
catch (error) {
|
|
39
|
+
return {
|
|
40
|
+
content: [
|
|
41
|
+
{
|
|
42
|
+
type: "text",
|
|
43
|
+
text: formatErrorResponse(error),
|
|
44
|
+
},
|
|
45
|
+
],
|
|
46
|
+
isError: true,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=finalize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"finalize.js","sourceRoot":"","sources":["../../src/tools/finalize.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE;;;;;yFAK0E;IAEvF,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE;YACV,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uCAAuC;aACrD;SACF;QACD,QAAQ,EAAE,CAAC,YAAY,CAAC;KACzB;IAED,KAAK,CAAC,OAAO,CAAC,IAA4B;QACxC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,CACnC,yBAAyB,EACzB,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAChC,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;qBACxC;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,mBAAmB,CAAC,KAAK,CAAC;qBACjC;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Tool: uidb_get_config
|
|
3
|
+
*
|
|
4
|
+
* Get the project's design system configuration.
|
|
5
|
+
*/
|
|
6
|
+
export declare const getConfigTool: {
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
inputSchema: {
|
|
10
|
+
type: "object";
|
|
11
|
+
properties: {};
|
|
12
|
+
required: never[];
|
|
13
|
+
};
|
|
14
|
+
execute(): Promise<{
|
|
15
|
+
content: {
|
|
16
|
+
type: "text";
|
|
17
|
+
text: string;
|
|
18
|
+
}[];
|
|
19
|
+
isError?: undefined;
|
|
20
|
+
} | {
|
|
21
|
+
content: {
|
|
22
|
+
type: "text";
|
|
23
|
+
text: string;
|
|
24
|
+
}[];
|
|
25
|
+
isError: boolean;
|
|
26
|
+
}>;
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=get-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-config.d.ts","sourceRoot":"","sources":["../../src/tools/get-config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;CAyCzB,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Tool: uidb_get_config
|
|
3
|
+
*
|
|
4
|
+
* Get the project's design system configuration.
|
|
5
|
+
*/
|
|
6
|
+
import { apiClient } from "../core/api-client.js";
|
|
7
|
+
import { formatErrorResponse } from "../core/errors.js";
|
|
8
|
+
export const getConfigTool = {
|
|
9
|
+
name: "uidb_get_config",
|
|
10
|
+
description: `Get the current design system configuration for this project.
|
|
11
|
+
|
|
12
|
+
Returns:
|
|
13
|
+
- accentColor: Primary brand color (e.g., 'blue', 'violet', 'green')
|
|
14
|
+
- grayColor: Neutral color palette (e.g., 'slate', 'gray', 'mauve')
|
|
15
|
+
- radius: Border radius scale (none, small, medium, large, full)
|
|
16
|
+
|
|
17
|
+
Use these values when building UI to ensure consistency with the project theme.`,
|
|
18
|
+
inputSchema: {
|
|
19
|
+
type: "object",
|
|
20
|
+
properties: {},
|
|
21
|
+
required: [],
|
|
22
|
+
},
|
|
23
|
+
async execute() {
|
|
24
|
+
try {
|
|
25
|
+
const response = await apiClient.get("/api/config");
|
|
26
|
+
return {
|
|
27
|
+
content: [
|
|
28
|
+
{
|
|
29
|
+
type: "text",
|
|
30
|
+
text: JSON.stringify(response, null, 2),
|
|
31
|
+
},
|
|
32
|
+
],
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
catch (error) {
|
|
36
|
+
return {
|
|
37
|
+
content: [
|
|
38
|
+
{
|
|
39
|
+
type: "text",
|
|
40
|
+
text: formatErrorResponse(error),
|
|
41
|
+
},
|
|
42
|
+
],
|
|
43
|
+
isError: true,
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=get-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-config.js","sourceRoot":"","sources":["../../src/tools/get-config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE;;;;;;;gFAOiE;IAE9E,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,EAAE;KACb;IAED,KAAK,CAAC,OAAO;QACX,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,CAAgB,aAAa,CAAC,CAAC;YAEnE,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;qBACxC;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,mBAAmB,CAAC,KAAK,CAAC;qBACjC;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Server - Tools Module
|
|
3
|
+
*
|
|
4
|
+
* Re-exports tool registry and all tools.
|
|
5
|
+
*/
|
|
6
|
+
export * from "./registry.js";
|
|
7
|
+
export { askIntentTool } from "./ask-intent.js";
|
|
8
|
+
export { askQuestionTool } from "./ask-question.js";
|
|
9
|
+
export { finalizeTool } from "./finalize.js";
|
|
10
|
+
export { listComponentsTool } from "./list-components.js";
|
|
11
|
+
export { detectPatternTool } from "./detect-pattern.js";
|
|
12
|
+
export { submitPatternTool } from "./submit-pattern.js";
|
|
13
|
+
export { listPatternsTool } from "./list-patterns.js";
|
|
14
|
+
export { getConfigTool } from "./get-config.js";
|
|
15
|
+
export { updateConfigTool } from "./update-config.js";
|
|
16
|
+
export { loginTool } from "./login.js";
|
|
17
|
+
export { statusTool } from "./status.js";
|
|
18
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,eAAe,CAAC;AAG9B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Server - Tools Module
|
|
3
|
+
*
|
|
4
|
+
* Re-exports tool registry and all tools.
|
|
5
|
+
*/
|
|
6
|
+
export * from "./registry.js";
|
|
7
|
+
// Individual tool exports for direct access if needed
|
|
8
|
+
export { askIntentTool } from "./ask-intent.js";
|
|
9
|
+
export { askQuestionTool } from "./ask-question.js";
|
|
10
|
+
export { finalizeTool } from "./finalize.js";
|
|
11
|
+
export { listComponentsTool } from "./list-components.js";
|
|
12
|
+
export { detectPatternTool } from "./detect-pattern.js";
|
|
13
|
+
export { submitPatternTool } from "./submit-pattern.js";
|
|
14
|
+
export { listPatternsTool } from "./list-patterns.js";
|
|
15
|
+
export { getConfigTool } from "./get-config.js";
|
|
16
|
+
export { updateConfigTool } from "./update-config.js";
|
|
17
|
+
export { loginTool } from "./login.js";
|
|
18
|
+
export { statusTool } from "./status.js";
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,eAAe,CAAC;AAE9B,sDAAsD;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Tool: uidb_list_components
|
|
3
|
+
*
|
|
4
|
+
* List all available components in the design system.
|
|
5
|
+
*/
|
|
6
|
+
export declare const listComponentsTool: {
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
inputSchema: {
|
|
10
|
+
type: "object";
|
|
11
|
+
properties: {};
|
|
12
|
+
required: never[];
|
|
13
|
+
};
|
|
14
|
+
execute(): Promise<{
|
|
15
|
+
content: {
|
|
16
|
+
type: "text";
|
|
17
|
+
text: string;
|
|
18
|
+
}[];
|
|
19
|
+
isError?: undefined;
|
|
20
|
+
} | {
|
|
21
|
+
content: {
|
|
22
|
+
type: "text";
|
|
23
|
+
text: string;
|
|
24
|
+
}[];
|
|
25
|
+
isError: boolean;
|
|
26
|
+
}>;
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=list-components.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-components.d.ts","sourceRoot":"","sources":["../../src/tools/list-components.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;CAuC9B,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Tool: uidb_list_components
|
|
3
|
+
*
|
|
4
|
+
* List all available components in the design system.
|
|
5
|
+
*/
|
|
6
|
+
import { apiClient } from "../core/api-client.js";
|
|
7
|
+
import { formatErrorResponse } from "../core/errors.js";
|
|
8
|
+
export const listComponentsTool = {
|
|
9
|
+
name: "uidb_list_components",
|
|
10
|
+
description: `List all available UI components in the UIDB design system.
|
|
11
|
+
|
|
12
|
+
Returns component names, categories, descriptions, and available variants/sizes.
|
|
13
|
+
Use this to see what components are available before starting a guidance flow.`,
|
|
14
|
+
inputSchema: {
|
|
15
|
+
type: "object",
|
|
16
|
+
properties: {},
|
|
17
|
+
required: [],
|
|
18
|
+
},
|
|
19
|
+
async execute() {
|
|
20
|
+
try {
|
|
21
|
+
const response = await apiClient.get("/api/component/list");
|
|
22
|
+
return {
|
|
23
|
+
content: [
|
|
24
|
+
{
|
|
25
|
+
type: "text",
|
|
26
|
+
text: JSON.stringify(response, null, 2),
|
|
27
|
+
},
|
|
28
|
+
],
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
return {
|
|
33
|
+
content: [
|
|
34
|
+
{
|
|
35
|
+
type: "text",
|
|
36
|
+
text: formatErrorResponse(error),
|
|
37
|
+
},
|
|
38
|
+
],
|
|
39
|
+
isError: true,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=list-components.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-components.js","sourceRoot":"","sources":["../../src/tools/list-components.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAOxD,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE;;;+EAGgE;IAE7E,WAAW,EAAE;QACX,IAAI,EAAE,QAAiB;QACvB,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,EAAE;KACb;IAED,KAAK,CAAC,OAAO;QACX,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,CAClC,qBAAqB,CACtB,CAAC;YAEF,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;qBACxC;iBACF;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,mBAAmB,CAAC,KAAK,CAAC;qBACjC;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UIDB MCP Tool: uidb_list_patterns
|
|
3
|
+
*
|
|
4
|
+
* List all documented patterns in the design system.
|
|
5
|
+
*/
|
|
6
|
+
export declare const listPatternsTool: {
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
inputSchema: {
|
|
10
|
+
type: "object";
|
|
11
|
+
properties: {};
|
|
12
|
+
required: never[];
|
|
13
|
+
};
|
|
14
|
+
execute(): Promise<{
|
|
15
|
+
content: {
|
|
16
|
+
type: "text";
|
|
17
|
+
text: string;
|
|
18
|
+
}[];
|
|
19
|
+
isError?: undefined;
|
|
20
|
+
} | {
|
|
21
|
+
content: {
|
|
22
|
+
type: "text";
|
|
23
|
+
text: string;
|
|
24
|
+
}[];
|
|
25
|
+
isError: boolean;
|
|
26
|
+
}>;
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=list-patterns.d.ts.map
|