@atlaskit/ads-mcp 0.2.5 → 0.4.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 (57) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +57 -1
  3. package/dist/cjs/index.js +16 -5
  4. package/dist/cjs/instructions.js +1 -1
  5. package/dist/cjs/tools/analyze-accessibility/index.js +483 -0
  6. package/dist/cjs/tools/get-accessibility-guidelines/index.js +204 -0
  7. package/dist/cjs/tools/{get-icons → get-all-icons}/index.js +6 -6
  8. package/dist/cjs/tools/{get-tokens → get-all-tokens}/index.js +7 -8
  9. package/dist/cjs/tools/search-icons/index.js +138 -0
  10. package/dist/cjs/tools/search-tokens/index.js +106 -0
  11. package/dist/cjs/tools/suggest-accessibility-fixes/fixes.js +387 -0
  12. package/dist/cjs/tools/suggest-accessibility-fixes/index.js +185 -0
  13. package/dist/cjs/tools/suggest-accessibility-fixes/keywords.js +34 -0
  14. package/dist/es2019/index.js +16 -5
  15. package/dist/es2019/instructions.js +12 -1
  16. package/dist/es2019/tools/analyze-accessibility/index.js +457 -0
  17. package/dist/es2019/tools/get-accessibility-guidelines/index.js +312 -0
  18. package/dist/es2019/tools/{get-icons → get-all-icons}/index.js +4 -4
  19. package/dist/es2019/tools/get-all-tokens/index.js +34 -0
  20. package/dist/es2019/tools/search-icons/index.js +126 -0
  21. package/dist/es2019/tools/search-tokens/index.js +96 -0
  22. package/dist/es2019/tools/suggest-accessibility-fixes/fixes.js +705 -0
  23. package/dist/es2019/tools/suggest-accessibility-fixes/index.js +143 -0
  24. package/dist/es2019/tools/suggest-accessibility-fixes/keywords.js +28 -0
  25. package/dist/esm/index.js +16 -5
  26. package/dist/esm/instructions.js +1 -1
  27. package/dist/esm/tools/analyze-accessibility/index.js +476 -0
  28. package/dist/esm/tools/get-accessibility-guidelines/index.js +197 -0
  29. package/dist/esm/tools/{get-icons → get-all-icons}/index.js +5 -5
  30. package/dist/esm/tools/{get-tokens → get-all-tokens}/index.js +6 -7
  31. package/dist/esm/tools/search-icons/index.js +131 -0
  32. package/dist/esm/tools/search-tokens/index.js +99 -0
  33. package/dist/esm/tools/suggest-accessibility-fixes/fixes.js +381 -0
  34. package/dist/esm/tools/suggest-accessibility-fixes/index.js +178 -0
  35. package/dist/esm/tools/suggest-accessibility-fixes/keywords.js +28 -0
  36. package/dist/types/instructions.d.ts +1 -1
  37. package/dist/types/tools/analyze-accessibility/index.d.ts +56 -0
  38. package/dist/types/tools/get-accessibility-guidelines/index.d.ts +26 -0
  39. package/dist/{types-ts4.5/tools/get-tokens → types/tools/get-all-icons}/index.d.ts +2 -2
  40. package/dist/types/tools/{get-tokens → get-all-tokens}/index.d.ts +2 -2
  41. package/dist/types/tools/search-icons/index.d.ts +38 -0
  42. package/dist/types/tools/search-tokens/index.d.ts +38 -0
  43. package/dist/types/tools/suggest-accessibility-fixes/fixes.d.ts +17 -0
  44. package/dist/types/tools/suggest-accessibility-fixes/index.d.ts +28 -0
  45. package/dist/types/tools/suggest-accessibility-fixes/keywords.d.ts +12 -0
  46. package/dist/types-ts4.5/instructions.d.ts +1 -1
  47. package/dist/types-ts4.5/tools/analyze-accessibility/index.d.ts +56 -0
  48. package/dist/types-ts4.5/tools/get-accessibility-guidelines/index.d.ts +26 -0
  49. package/dist/types-ts4.5/tools/{get-icons → get-all-icons}/index.d.ts +2 -2
  50. package/dist/{types/tools/get-icons → types-ts4.5/tools/get-all-tokens}/index.d.ts +2 -2
  51. package/dist/types-ts4.5/tools/search-icons/index.d.ts +38 -0
  52. package/dist/types-ts4.5/tools/search-tokens/index.d.ts +38 -0
  53. package/dist/types-ts4.5/tools/suggest-accessibility-fixes/fixes.d.ts +17 -0
  54. package/dist/types-ts4.5/tools/suggest-accessibility-fixes/index.d.ts +28 -0
  55. package/dist/types-ts4.5/tools/suggest-accessibility-fixes/keywords.d.ts +12 -0
  56. package/package.json +10 -3
  57. package/dist/es2019/tools/get-tokens/index.js +0 -35
@@ -0,0 +1,56 @@
1
+ export declare const listAnalyzeAccessibilityTool: {
2
+ name: string;
3
+ description: string;
4
+ annotations: {
5
+ title: string;
6
+ readOnlyHint: boolean;
7
+ destructiveHint: boolean;
8
+ idempotentHint: boolean;
9
+ openWorldHint: boolean;
10
+ };
11
+ inputSchema: import("zod-to-json-schema").JsonSchema7Type & {
12
+ $schema?: string | undefined;
13
+ definitions?: {
14
+ [key: string]: import("zod-to-json-schema").JsonSchema7Type;
15
+ } | undefined;
16
+ };
17
+ };
18
+ export declare const listAnalyzeLocalhostAccessibilityTool: {
19
+ name: string;
20
+ description: string;
21
+ annotations: {
22
+ title: string;
23
+ readOnlyHint: boolean;
24
+ destructiveHint: boolean;
25
+ idempotentHint: boolean;
26
+ openWorldHint: boolean;
27
+ };
28
+ inputSchema: import("zod-to-json-schema").JsonSchema7Type & {
29
+ $schema?: string | undefined;
30
+ definitions?: {
31
+ [key: string]: import("zod-to-json-schema").JsonSchema7Type;
32
+ } | undefined;
33
+ };
34
+ };
35
+ export declare const analyzeAccessibilityTool: (params: {
36
+ code: string;
37
+ componentName?: string;
38
+ context?: string;
39
+ includePatternAnalysis?: boolean;
40
+ }) => Promise<{
41
+ content: {
42
+ type: string;
43
+ text: string;
44
+ }[];
45
+ }>;
46
+ export declare const analyzeLocalhostAccessibilityTool: (params: {
47
+ url: string;
48
+ componentName?: string;
49
+ context?: string;
50
+ selector?: string;
51
+ }) => Promise<{
52
+ content: {
53
+ type: string;
54
+ text: string;
55
+ }[];
56
+ }>;
@@ -0,0 +1,26 @@
1
+ export declare const listGetAccessibilityGuidelinesTool: {
2
+ name: string;
3
+ description: string;
4
+ annotations: {
5
+ title: string;
6
+ readOnlyHint: boolean;
7
+ destructiveHint: boolean;
8
+ idempotentHint: boolean;
9
+ openWorldHint: boolean;
10
+ };
11
+ inputSchema: import("zod-to-json-schema").JsonSchema7Type & {
12
+ $schema?: string | undefined;
13
+ definitions?: {
14
+ [key: string]: import("zod-to-json-schema").JsonSchema7Type;
15
+ } | undefined;
16
+ };
17
+ };
18
+ export declare const getAccessibilityGuidelinesTool: (params: {
19
+ topic?: string;
20
+ component?: string;
21
+ }) => Promise<{
22
+ content: {
23
+ type: string;
24
+ text: string;
25
+ }[];
26
+ }>;
@@ -1,4 +1,4 @@
1
- export declare const listGetTokensTool: {
1
+ export declare const listGetAllIconsTool: {
2
2
  name: string;
3
3
  description: string;
4
4
  annotations: {
@@ -15,7 +15,7 @@ export declare const listGetTokensTool: {
15
15
  } | undefined;
16
16
  };
17
17
  };
18
- export declare const getTokensTool: () => Promise<{
18
+ export declare const getAllIconsTool: () => Promise<{
19
19
  content: {
20
20
  type: string;
21
21
  text: string;
@@ -1,4 +1,4 @@
1
- export declare const listGetTokensTool: {
1
+ export declare const listGetAllTokensTool: {
2
2
  name: string;
3
3
  description: string;
4
4
  annotations: {
@@ -15,7 +15,7 @@ export declare const listGetTokensTool: {
15
15
  } | undefined;
16
16
  };
17
17
  };
18
- export declare const getTokensTool: () => Promise<{
18
+ export declare const getAllTokensTool: () => Promise<{
19
19
  content: {
20
20
  type: string;
21
21
  text: string;
@@ -0,0 +1,38 @@
1
+ import { z } from 'zod';
2
+ declare const inputSchema: z.ZodObject<{
3
+ terms: z.ZodArray<z.ZodString, "many">;
4
+ limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
5
+ exactName: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ terms: string[];
8
+ limit: number;
9
+ exactName: boolean;
10
+ }, {
11
+ terms: string[];
12
+ limit?: number | undefined;
13
+ exactName?: boolean | undefined;
14
+ }>;
15
+ export declare const listSearchIconsTool: {
16
+ name: string;
17
+ description: string;
18
+ annotations: {
19
+ title: string;
20
+ readOnlyHint: boolean;
21
+ destructiveHint: boolean;
22
+ idempotentHint: boolean;
23
+ openWorldHint: boolean;
24
+ };
25
+ inputSchema: import("zod-to-json-schema").JsonSchema7Type & {
26
+ $schema?: string | undefined;
27
+ definitions?: {
28
+ [key: string]: import("zod-to-json-schema").JsonSchema7Type;
29
+ } | undefined;
30
+ };
31
+ };
32
+ export declare const searchIconsTool: (params: z.infer<typeof inputSchema>) => Promise<{
33
+ content: {
34
+ type: string;
35
+ text: string;
36
+ }[];
37
+ }>;
38
+ export {};
@@ -0,0 +1,38 @@
1
+ import { z } from 'zod';
2
+ declare const inputSchema: z.ZodObject<{
3
+ terms: z.ZodArray<z.ZodString, "many">;
4
+ limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
5
+ exactName: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ terms: string[];
8
+ limit: number;
9
+ exactName: boolean;
10
+ }, {
11
+ terms: string[];
12
+ limit?: number | undefined;
13
+ exactName?: boolean | undefined;
14
+ }>;
15
+ export declare const listSearchTokensTool: {
16
+ name: string;
17
+ description: string;
18
+ annotations: {
19
+ title: string;
20
+ readOnlyHint: boolean;
21
+ destructiveHint: boolean;
22
+ idempotentHint: boolean;
23
+ openWorldHint: boolean;
24
+ };
25
+ inputSchema: import("zod-to-json-schema").JsonSchema7Type & {
26
+ $schema?: string | undefined;
27
+ definitions?: {
28
+ [key: string]: import("zod-to-json-schema").JsonSchema7Type;
29
+ } | undefined;
30
+ };
31
+ };
32
+ export declare const searchTokensTool: (params: z.infer<typeof inputSchema>) => Promise<{
33
+ content: {
34
+ type: string;
35
+ text: string;
36
+ }[];
37
+ }>;
38
+ export {};
@@ -0,0 +1,17 @@
1
+ export interface FixSuggestion {
2
+ title: string;
3
+ description: string;
4
+ before: string;
5
+ after: string;
6
+ explanation: string;
7
+ }
8
+ export interface AccessibilityFix {
9
+ title: string;
10
+ description: string;
11
+ fixes: FixSuggestion[];
12
+ bestPractices: string[];
13
+ }
14
+ export interface AccessibilityFixCategory {
15
+ [key: string]: AccessibilityFix;
16
+ }
17
+ export declare const accessibilityFixes: AccessibilityFixCategory;
@@ -0,0 +1,28 @@
1
+ export declare const listSuggestAccessibilityFixesTool: {
2
+ name: string;
3
+ description: string;
4
+ annotations: {
5
+ title: string;
6
+ readOnlyHint: boolean;
7
+ destructiveHint: boolean;
8
+ idempotentHint: boolean;
9
+ openWorldHint: boolean;
10
+ };
11
+ inputSchema: import("zod-to-json-schema").JsonSchema7Type & {
12
+ $schema?: string | undefined;
13
+ definitions?: {
14
+ [key: string]: import("zod-to-json-schema").JsonSchema7Type;
15
+ } | undefined;
16
+ };
17
+ };
18
+ export declare const suggestAccessibilityFixesTool: (params: {
19
+ violation: string;
20
+ code: string;
21
+ component?: string;
22
+ context?: string;
23
+ }) => Promise<{
24
+ content: {
25
+ type: string;
26
+ text: string;
27
+ }[];
28
+ }>;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Violation keywords mapping for fuzzy matching accessibility violations
3
+ *
4
+ * This file contains keyword synonyms and variations that users might use
5
+ * when describing accessibility violations. The keys should match the exact
6
+ * violation types defined in fixes.ts
7
+ *
8
+ * Each violation type has an array of keywords that help identify when a user
9
+ * is describing that particular type of accessibility issue, even if they
10
+ * don't use the exact technical terminology.
11
+ */
12
+ export declare const violationKeywords: Record<string, string[]>;
@@ -1 +1 @@
1
- export declare const instructions = "\nYou are an expert in the Atlassian Design System (aka ADS). You are able to answer questions about the design system and provide guidance on what offerings to use when building user interfaces.\n\nYou are able to use the provided tools to help answer your questions, but may also access https://atlassian.design/llms.txt or https://atlassian.design/ directly for deeper research and information.\n";
1
+ export declare const instructions = "\nYou are an expert in the Atlassian Design System (aka ADS). You are able to answer questions about the design system and provide guidance on what offerings to use when building user interfaces.\n\nYou have special expertise in accessibility and can help ensure that interfaces built with ADS components are accessible to all users. You can analyze code for accessibility violations, provide specific fix suggestions, and offer guidance on accessibility best practices.\n\nYou are able to use the provided tools to help answer your questions, but may also access https://atlassian.design/llms.txt, https://atlassian.design/llms-a11y.txt, or https://atlassian.design/ directly for deeper research and information.\n\nAccessibility Tools Available:\n- analyze_accessibility: Analyze React component code for accessibility violations\n- get_accessibility_guidelines: Get specific accessibility guidelines and best practices\n- suggest_accessibility_fixes: Get specific fix suggestions for accessibility violations\n- get_all_tokens: Get all tokens and their example values\n- search_tokens: Search for token(s) and their example value(s)\n- get_all_icons: Get all icons and their usage\n- search_icons: Search for icon(s) and their usage\n";
@@ -0,0 +1,56 @@
1
+ export declare const listAnalyzeAccessibilityTool: {
2
+ name: string;
3
+ description: string;
4
+ annotations: {
5
+ title: string;
6
+ readOnlyHint: boolean;
7
+ destructiveHint: boolean;
8
+ idempotentHint: boolean;
9
+ openWorldHint: boolean;
10
+ };
11
+ inputSchema: import("zod-to-json-schema").JsonSchema7Type & {
12
+ $schema?: string | undefined;
13
+ definitions?: {
14
+ [key: string]: import("zod-to-json-schema").JsonSchema7Type;
15
+ } | undefined;
16
+ };
17
+ };
18
+ export declare const listAnalyzeLocalhostAccessibilityTool: {
19
+ name: string;
20
+ description: string;
21
+ annotations: {
22
+ title: string;
23
+ readOnlyHint: boolean;
24
+ destructiveHint: boolean;
25
+ idempotentHint: boolean;
26
+ openWorldHint: boolean;
27
+ };
28
+ inputSchema: import("zod-to-json-schema").JsonSchema7Type & {
29
+ $schema?: string | undefined;
30
+ definitions?: {
31
+ [key: string]: import("zod-to-json-schema").JsonSchema7Type;
32
+ } | undefined;
33
+ };
34
+ };
35
+ export declare const analyzeAccessibilityTool: (params: {
36
+ code: string;
37
+ componentName?: string;
38
+ context?: string;
39
+ includePatternAnalysis?: boolean;
40
+ }) => Promise<{
41
+ content: {
42
+ type: string;
43
+ text: string;
44
+ }[];
45
+ }>;
46
+ export declare const analyzeLocalhostAccessibilityTool: (params: {
47
+ url: string;
48
+ componentName?: string;
49
+ context?: string;
50
+ selector?: string;
51
+ }) => Promise<{
52
+ content: {
53
+ type: string;
54
+ text: string;
55
+ }[];
56
+ }>;
@@ -0,0 +1,26 @@
1
+ export declare const listGetAccessibilityGuidelinesTool: {
2
+ name: string;
3
+ description: string;
4
+ annotations: {
5
+ title: string;
6
+ readOnlyHint: boolean;
7
+ destructiveHint: boolean;
8
+ idempotentHint: boolean;
9
+ openWorldHint: boolean;
10
+ };
11
+ inputSchema: import("zod-to-json-schema").JsonSchema7Type & {
12
+ $schema?: string | undefined;
13
+ definitions?: {
14
+ [key: string]: import("zod-to-json-schema").JsonSchema7Type;
15
+ } | undefined;
16
+ };
17
+ };
18
+ export declare const getAccessibilityGuidelinesTool: (params: {
19
+ topic?: string;
20
+ component?: string;
21
+ }) => Promise<{
22
+ content: {
23
+ type: string;
24
+ text: string;
25
+ }[];
26
+ }>;
@@ -1,4 +1,4 @@
1
- export declare const listGetIconsTool: {
1
+ export declare const listGetAllIconsTool: {
2
2
  name: string;
3
3
  description: string;
4
4
  annotations: {
@@ -15,7 +15,7 @@ export declare const listGetIconsTool: {
15
15
  } | undefined;
16
16
  };
17
17
  };
18
- export declare const getIconsTool: () => Promise<{
18
+ export declare const getAllIconsTool: () => Promise<{
19
19
  content: {
20
20
  type: string;
21
21
  text: string;
@@ -1,4 +1,4 @@
1
- export declare const listGetIconsTool: {
1
+ export declare const listGetAllTokensTool: {
2
2
  name: string;
3
3
  description: string;
4
4
  annotations: {
@@ -15,7 +15,7 @@ export declare const listGetIconsTool: {
15
15
  } | undefined;
16
16
  };
17
17
  };
18
- export declare const getIconsTool: () => Promise<{
18
+ export declare const getAllTokensTool: () => Promise<{
19
19
  content: {
20
20
  type: string;
21
21
  text: string;
@@ -0,0 +1,38 @@
1
+ import { z } from 'zod';
2
+ declare const inputSchema: z.ZodObject<{
3
+ terms: z.ZodArray<z.ZodString, "many">;
4
+ limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
5
+ exactName: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ terms: string[];
8
+ limit: number;
9
+ exactName: boolean;
10
+ }, {
11
+ terms: string[];
12
+ limit?: number | undefined;
13
+ exactName?: boolean | undefined;
14
+ }>;
15
+ export declare const listSearchIconsTool: {
16
+ name: string;
17
+ description: string;
18
+ annotations: {
19
+ title: string;
20
+ readOnlyHint: boolean;
21
+ destructiveHint: boolean;
22
+ idempotentHint: boolean;
23
+ openWorldHint: boolean;
24
+ };
25
+ inputSchema: import("zod-to-json-schema").JsonSchema7Type & {
26
+ $schema?: string | undefined;
27
+ definitions?: {
28
+ [key: string]: import("zod-to-json-schema").JsonSchema7Type;
29
+ } | undefined;
30
+ };
31
+ };
32
+ export declare const searchIconsTool: (params: z.infer<typeof inputSchema>) => Promise<{
33
+ content: {
34
+ type: string;
35
+ text: string;
36
+ }[];
37
+ }>;
38
+ export {};
@@ -0,0 +1,38 @@
1
+ import { z } from 'zod';
2
+ declare const inputSchema: z.ZodObject<{
3
+ terms: z.ZodArray<z.ZodString, "many">;
4
+ limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
5
+ exactName: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ terms: string[];
8
+ limit: number;
9
+ exactName: boolean;
10
+ }, {
11
+ terms: string[];
12
+ limit?: number | undefined;
13
+ exactName?: boolean | undefined;
14
+ }>;
15
+ export declare const listSearchTokensTool: {
16
+ name: string;
17
+ description: string;
18
+ annotations: {
19
+ title: string;
20
+ readOnlyHint: boolean;
21
+ destructiveHint: boolean;
22
+ idempotentHint: boolean;
23
+ openWorldHint: boolean;
24
+ };
25
+ inputSchema: import("zod-to-json-schema").JsonSchema7Type & {
26
+ $schema?: string | undefined;
27
+ definitions?: {
28
+ [key: string]: import("zod-to-json-schema").JsonSchema7Type;
29
+ } | undefined;
30
+ };
31
+ };
32
+ export declare const searchTokensTool: (params: z.infer<typeof inputSchema>) => Promise<{
33
+ content: {
34
+ type: string;
35
+ text: string;
36
+ }[];
37
+ }>;
38
+ export {};
@@ -0,0 +1,17 @@
1
+ export interface FixSuggestion {
2
+ title: string;
3
+ description: string;
4
+ before: string;
5
+ after: string;
6
+ explanation: string;
7
+ }
8
+ export interface AccessibilityFix {
9
+ title: string;
10
+ description: string;
11
+ fixes: FixSuggestion[];
12
+ bestPractices: string[];
13
+ }
14
+ export interface AccessibilityFixCategory {
15
+ [key: string]: AccessibilityFix;
16
+ }
17
+ export declare const accessibilityFixes: AccessibilityFixCategory;
@@ -0,0 +1,28 @@
1
+ export declare const listSuggestAccessibilityFixesTool: {
2
+ name: string;
3
+ description: string;
4
+ annotations: {
5
+ title: string;
6
+ readOnlyHint: boolean;
7
+ destructiveHint: boolean;
8
+ idempotentHint: boolean;
9
+ openWorldHint: boolean;
10
+ };
11
+ inputSchema: import("zod-to-json-schema").JsonSchema7Type & {
12
+ $schema?: string | undefined;
13
+ definitions?: {
14
+ [key: string]: import("zod-to-json-schema").JsonSchema7Type;
15
+ } | undefined;
16
+ };
17
+ };
18
+ export declare const suggestAccessibilityFixesTool: (params: {
19
+ violation: string;
20
+ code: string;
21
+ component?: string;
22
+ context?: string;
23
+ }) => Promise<{
24
+ content: {
25
+ type: string;
26
+ text: string;
27
+ }[];
28
+ }>;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Violation keywords mapping for fuzzy matching accessibility violations
3
+ *
4
+ * This file contains keyword synonyms and variations that users might use
5
+ * when describing accessibility violations. The keys should match the exact
6
+ * violation types defined in fixes.ts
7
+ *
8
+ * Each violation type has an array of keywords that help identify when a user
9
+ * is describing that particular type of accessibility issue, even if they
10
+ * don't use the exact technical terminology.
11
+ */
12
+ export declare const violationKeywords: Record<string, string[]>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atlaskit/ads-mcp",
3
- "version": "0.2.5",
3
+ "version": "0.4.0",
4
4
  "description": "The official Atlassian Design System MCP server to develop apps and user interfaces matching the Atlassian style.",
5
5
  "author": "Atlassian Pty Ltd",
6
6
  "license": "Apache-2.0",
@@ -29,10 +29,17 @@
29
29
  "./package.json": "./package.json"
30
30
  },
31
31
  "dependencies": {
32
- "@atlaskit/icon": "^28.0.0",
33
- "@atlaskit/tokens": "^6.0.0",
32
+ "@atlaskit/icon": "^28.1.0",
33
+ "@atlaskit/tokens": "^6.3.0",
34
+ "@axe-core/playwright": "^4.8.0",
35
+ "@axe-core/puppeteer": "^4.7.3",
34
36
  "@babel/runtime": "^7.0.0",
35
37
  "@modelcontextprotocol/sdk": "^1.8.0",
38
+ "axe-core": "^4.10.2",
39
+ "fuse.js": "^6.6.2",
40
+ "jsdom": "root:*",
41
+ "playwright": "1.44.1",
42
+ "puppeteer": "13.7.0",
36
43
  "zod": "^3.23.8",
37
44
  "zod-to-json-schema": "^3.24.5"
38
45
  },
@@ -1,35 +0,0 @@
1
- import { z } from 'zod';
2
- import { zodToJsonSchema } from 'zod-to-json-schema';
3
- import { tokens } from '@atlaskit/tokens/token-metadata';
4
- const inputSchema = z.object({});
5
- export const listGetTokensTool = {
6
- name: 'get_tokens',
7
- description: `You MUST use this to fetch all Atlassian Design System tokens and parse their names and descriptions (provided in JSON format) before working with tokens.
8
- These tokens are used in place of hardcoded values; you should never use a hardcoded value where a token value is appropriate.
9
- The resulting token name is used inside of the \`token()\` function, eg.:
10
- \`\`\`tsx
11
- import { token } from '@atlaskit/tokens';
12
- const styles = css({ color: token('color.text') });
13
- \`\`\`
14
- `,
15
- annotations: {
16
- title: 'Get ADS tokens',
17
- readOnlyHint: true,
18
- destructiveHint: false,
19
- idempotentHint: true,
20
- openWorldHint: true
21
- },
22
- inputSchema: zodToJsonSchema(inputSchema)
23
- };
24
- export const getTokensTool = async () => ({
25
- content: tokens.map(token => ({
26
- // NOTE: Ideally one day the MCP would support structured content…
27
- // eg. `type: 'object', data: token`
28
- type: 'text',
29
- text: JSON.stringify({
30
- name: token.name,
31
- description: token.description,
32
- exampleValue: token.exampleValue
33
- }, null, 2)
34
- }))
35
- });