@mikoto_zero/minigame-open-mcp 1.2.0-beta.8 → 1.2.1

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 (150) hide show
  1. package/README.md +266 -153
  2. package/dist/{auth → core/auth}/deviceFlow.d.ts +28 -2
  3. package/dist/core/auth/deviceFlow.d.ts.map +1 -0
  4. package/dist/{auth → core/auth}/deviceFlow.js +130 -12
  5. package/dist/core/auth/deviceFlow.js.map +1 -0
  6. package/dist/core/handlers/appHandlers.d.ts +9 -0
  7. package/dist/core/handlers/appHandlers.d.ts.map +1 -0
  8. package/dist/core/handlers/appHandlers.js +9 -0
  9. package/dist/core/handlers/appHandlers.js.map +1 -0
  10. package/dist/core/handlers/environmentHandlers.d.ts.map +1 -0
  11. package/dist/core/handlers/environmentHandlers.js +57 -0
  12. package/dist/core/handlers/environmentHandlers.js.map +1 -0
  13. package/dist/{network → core/network}/httpClient.d.ts +4 -0
  14. package/dist/core/network/httpClient.d.ts.map +1 -0
  15. package/dist/{network → core/network}/httpClient.js +66 -22
  16. package/dist/core/network/httpClient.js.map +1 -0
  17. package/dist/core/types/index.d.ts +96 -0
  18. package/dist/core/types/index.d.ts.map +1 -0
  19. package/dist/core/types/index.js.map +1 -0
  20. package/dist/core/utils/cache.d.ts.map +1 -0
  21. package/dist/core/utils/cache.js.map +1 -0
  22. package/dist/core/utils/docHelpers.d.ts +92 -0
  23. package/dist/core/utils/docHelpers.d.ts.map +1 -0
  24. package/dist/core/utils/docHelpers.js +138 -0
  25. package/dist/core/utils/docHelpers.js.map +1 -0
  26. package/dist/core/utils/logger.d.ts +102 -0
  27. package/dist/core/utils/logger.d.ts.map +1 -0
  28. package/dist/core/utils/logger.js +353 -0
  29. package/dist/core/utils/logger.js.map +1 -0
  30. package/dist/features/app/api.d.ts +144 -0
  31. package/dist/features/app/api.d.ts.map +1 -0
  32. package/dist/features/app/api.js +231 -0
  33. package/dist/features/app/api.js.map +1 -0
  34. package/dist/{handlers/appHandlers.d.ts → features/app/handlers.d.ts} +9 -7
  35. package/dist/features/app/handlers.d.ts.map +1 -0
  36. package/dist/{handlers/appHandlers.js → features/app/handlers.js} +46 -2
  37. package/dist/{handlers/appHandlers.js.map → features/app/handlers.js.map} +1 -1
  38. package/dist/features/app/index.d.ts +10 -0
  39. package/dist/features/app/index.d.ts.map +1 -0
  40. package/dist/features/app/index.js +14 -0
  41. package/dist/features/app/index.js.map +1 -0
  42. package/dist/features/app/tools.d.ts +11 -0
  43. package/dist/features/app/tools.d.ts.map +1 -0
  44. package/dist/features/app/tools.js +169 -0
  45. package/dist/features/app/tools.js.map +1 -0
  46. package/dist/features/h5Game/api.d.ts +20 -0
  47. package/dist/features/h5Game/api.d.ts.map +1 -0
  48. package/dist/features/h5Game/api.js +16 -0
  49. package/dist/features/h5Game/api.js.map +1 -0
  50. package/dist/features/h5Game/handlers.d.ts +49 -0
  51. package/dist/features/h5Game/handlers.d.ts.map +1 -0
  52. package/dist/features/h5Game/handlers.js +321 -0
  53. package/dist/features/h5Game/handlers.js.map +1 -0
  54. package/dist/features/h5Game/index.d.ts +7 -0
  55. package/dist/features/h5Game/index.d.ts.map +1 -0
  56. package/dist/features/h5Game/index.js +11 -0
  57. package/dist/features/h5Game/index.js.map +1 -0
  58. package/dist/features/h5Game/messages.d.ts +79 -0
  59. package/dist/features/h5Game/messages.d.ts.map +1 -0
  60. package/dist/features/h5Game/messages.js +141 -0
  61. package/dist/features/h5Game/messages.js.map +1 -0
  62. package/dist/features/h5Game/tools.d.ts +14 -0
  63. package/dist/features/h5Game/tools.d.ts.map +1 -0
  64. package/dist/features/h5Game/tools.js +181 -0
  65. package/dist/features/h5Game/tools.js.map +1 -0
  66. package/dist/features/h5Game/types.d.ts +113 -0
  67. package/dist/features/h5Game/types.d.ts.map +1 -0
  68. package/dist/features/h5Game/types.js +2 -0
  69. package/dist/features/h5Game/types.js.map +1 -0
  70. package/dist/{network/leaderboardApi.d.ts → features/leaderboard/api.d.ts} +1 -64
  71. package/dist/features/leaderboard/api.d.ts.map +1 -0
  72. package/dist/{network/leaderboardApi.js → features/leaderboard/api.js} +3 -151
  73. package/dist/features/leaderboard/api.js.map +1 -0
  74. package/dist/{tools/leaderboardTools.d.ts → features/leaderboard/docTools.d.ts} +6 -1
  75. package/dist/features/leaderboard/docTools.d.ts.map +1 -0
  76. package/dist/{tools/leaderboardTools.js → features/leaderboard/docTools.js} +125 -51
  77. package/dist/features/leaderboard/docTools.js.map +1 -0
  78. package/dist/features/leaderboard/docs.d.ts +11 -0
  79. package/dist/features/leaderboard/docs.d.ts.map +1 -0
  80. package/dist/{data/leaderboardDocs.js → features/leaderboard/docs.js} +5 -127
  81. package/dist/features/leaderboard/docs.js.map +1 -0
  82. package/dist/{handlers/leaderboardHandlers.d.ts → features/leaderboard/handlers.d.ts} +1 -1
  83. package/dist/features/leaderboard/handlers.d.ts.map +1 -0
  84. package/dist/{handlers/leaderboardHandlers.js → features/leaderboard/handlers.js} +37 -20
  85. package/dist/features/leaderboard/handlers.js.map +1 -0
  86. package/dist/features/leaderboard/index.d.ts +10 -0
  87. package/dist/features/leaderboard/index.d.ts.map +1 -0
  88. package/dist/features/leaderboard/index.js +27 -0
  89. package/dist/features/leaderboard/index.js.map +1 -0
  90. package/dist/features/leaderboard/resources.d.ts +11 -0
  91. package/dist/features/leaderboard/resources.d.ts.map +1 -0
  92. package/dist/features/leaderboard/resources.js +68 -0
  93. package/dist/features/leaderboard/resources.js.map +1 -0
  94. package/dist/features/leaderboard/tools.d.ts +11 -0
  95. package/dist/features/leaderboard/tools.d.ts.map +1 -0
  96. package/dist/features/leaderboard/tools.js +146 -0
  97. package/dist/features/leaderboard/tools.js.map +1 -0
  98. package/dist/server.js +366 -159
  99. package/dist/server.js.map +1 -1
  100. package/dist/version.d.ts +2 -0
  101. package/dist/version.d.ts.map +1 -0
  102. package/dist/version.js +15 -0
  103. package/dist/version.js.map +1 -0
  104. package/package.json +17 -10
  105. package/dist/auth/deviceFlow.d.ts.map +0 -1
  106. package/dist/auth/deviceFlow.js.map +0 -1
  107. package/dist/config/promptDefinitions.d.ts +0 -19
  108. package/dist/config/promptDefinitions.d.ts.map +0 -1
  109. package/dist/config/promptDefinitions.js +0 -28
  110. package/dist/config/promptDefinitions.js.map +0 -1
  111. package/dist/config/resourceDefinitions.d.ts +0 -19
  112. package/dist/config/resourceDefinitions.d.ts.map +0 -1
  113. package/dist/config/resourceDefinitions.js +0 -93
  114. package/dist/config/resourceDefinitions.js.map +0 -1
  115. package/dist/config/toolDefinitions.d.ts +0 -10
  116. package/dist/config/toolDefinitions.d.ts.map +0 -1
  117. package/dist/config/toolDefinitions.js +0 -250
  118. package/dist/config/toolDefinitions.js.map +0 -1
  119. package/dist/data/leaderboardDocs.d.ts +0 -37
  120. package/dist/data/leaderboardDocs.d.ts.map +0 -1
  121. package/dist/data/leaderboardDocs.js.map +0 -1
  122. package/dist/handlers/appHandlers.d.ts.map +0 -1
  123. package/dist/handlers/environmentHandlers.d.ts.map +0 -1
  124. package/dist/handlers/environmentHandlers.js +0 -21
  125. package/dist/handlers/environmentHandlers.js.map +0 -1
  126. package/dist/handlers/leaderboardHandlers.d.ts.map +0 -1
  127. package/dist/handlers/leaderboardHandlers.js.map +0 -1
  128. package/dist/handlers/promptHandlers.d.ts +0 -26
  129. package/dist/handlers/promptHandlers.d.ts.map +0 -1
  130. package/dist/handlers/promptHandlers.js +0 -336
  131. package/dist/handlers/promptHandlers.js.map +0 -1
  132. package/dist/network/httpClient.d.ts.map +0 -1
  133. package/dist/network/httpClient.js.map +0 -1
  134. package/dist/network/leaderboardApi.d.ts.map +0 -1
  135. package/dist/network/leaderboardApi.js.map +0 -1
  136. package/dist/tools/leaderboardTools.d.ts.map +0 -1
  137. package/dist/tools/leaderboardTools.js.map +0 -1
  138. package/dist/types/index.d.ts +0 -18
  139. package/dist/types/index.d.ts.map +0 -1
  140. package/dist/types/index.js.map +0 -1
  141. package/dist/utils/cache.d.ts.map +0 -1
  142. package/dist/utils/cache.js.map +0 -1
  143. package/dist/utils/logger.d.ts +0 -45
  144. package/dist/utils/logger.d.ts.map +0 -1
  145. package/dist/utils/logger.js +0 -192
  146. package/dist/utils/logger.js.map +0 -1
  147. /package/dist/{handlers → core/handlers}/environmentHandlers.d.ts +0 -0
  148. /package/dist/{types → core/types}/index.js +0 -0
  149. /package/dist/{utils → core/utils}/cache.d.ts +0 -0
  150. /package/dist/{utils → core/utils}/cache.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/core/utils/cache.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAc9B;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,WAAoB;IAC/C,IAAI,WAAW,EAAE,CAAC;QAChB,yBAAyB;QACzB,MAAM,cAAc,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC;QACnF,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,kBAAkB,EAAE,UAAU,CAAC,CAAC;IACnE,CAAC;SAAM,CAAC;QACN,sCAAsC;QACtC,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,iBAAiB,EAAE,UAAU,CAAC,CAAC;IACnE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,WAAoB;IAC/C,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAE5C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAiB,CAAC;QAElD,qCAAqC;QACrC,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACvC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,IAAkB,EAAE,WAAoB;IACnE,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEzC,IAAI,CAAC;QACH,0BAA0B;QAC1B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9C,CAAC;QAED,gBAAgB;QAChB,MAAM,SAAS,GAAiB;YAC9B,GAAG,IAAI;YACP,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC;QAEF,gBAAgB;QAChB,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,WAAoB;IAChD,MAAM,SAAS,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAE5C,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,WAAoB;IAC/C,MAAM,KAAK,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IACxC,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC"}
@@ -0,0 +1,92 @@
1
+ /**
2
+ * Documentation Helper Utilities
3
+ * Shared utilities for generating documentation across all features
4
+ */
5
+ /**
6
+ * Generic API interface for documentation
7
+ */
8
+ export interface APIDefinition {
9
+ name: string;
10
+ method: string;
11
+ description: string;
12
+ parameters?: Record<string, string>;
13
+ returnValue?: string;
14
+ example: string;
15
+ }
16
+ /**
17
+ * Generic category interface
18
+ */
19
+ export interface APICategory {
20
+ title: string;
21
+ description: string;
22
+ apis: APIDefinition[];
23
+ }
24
+ /**
25
+ * Generic documentation structure
26
+ */
27
+ export interface Documentation {
28
+ title: string;
29
+ description: string;
30
+ apiReference?: string;
31
+ categories: Record<string, APICategory>;
32
+ }
33
+ /**
34
+ * Generate API documentation in Markdown format
35
+ *
36
+ * @param documentation - The documentation structure
37
+ * @param categoryKey - The category key to look up
38
+ * @param apiName - The API name to find
39
+ * @returns Formatted Markdown documentation
40
+ *
41
+ * @example
42
+ * ```typescript
43
+ * const doc = generateAPIDoc(
44
+ * LEADERBOARD_DOCUMENTATION,
45
+ * 'initialization',
46
+ * 'tap.getLeaderboardManager'
47
+ * );
48
+ * ```
49
+ */
50
+ export declare function generateAPIDoc(documentation: Documentation, categoryKey: string, apiName: string): string;
51
+ /**
52
+ * Generate category documentation (all APIs in a category)
53
+ *
54
+ * @param documentation - The documentation structure
55
+ * @param categoryKey - The category key to generate
56
+ * @returns Formatted Markdown documentation
57
+ */
58
+ export declare function generateCategoryDoc(documentation: Documentation, categoryKey: string): string;
59
+ /**
60
+ * Search documentation by keyword
61
+ *
62
+ * @param documentation - The documentation structure
63
+ * @param query - Search query
64
+ * @returns Array of matching API documentation strings
65
+ */
66
+ export declare function searchDocumentation(documentation: Documentation, query: string): string[];
67
+ /**
68
+ * Generate complete overview documentation
69
+ *
70
+ * @param documentation - The documentation structure
71
+ * @returns Formatted Markdown overview
72
+ */
73
+ export declare function generateOverview(documentation: Documentation): string;
74
+ /**
75
+ * Resource suggestion based on keywords
76
+ * Used when search returns no results
77
+ */
78
+ export interface ResourceSuggestion {
79
+ keywords: string[];
80
+ uri: string;
81
+ description: string;
82
+ }
83
+ /**
84
+ * Generate search suggestions when no results found
85
+ *
86
+ * @param query - Search query
87
+ * @param suggestions - Array of resource suggestions
88
+ * @param overviewUri - URI of the overview resource
89
+ * @returns Formatted suggestion message
90
+ */
91
+ export declare function generateSearchSuggestions(query: string, suggestions: ResourceSuggestion[], overviewUri?: string): string;
92
+ //# sourceMappingURL=docHelpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docHelpers.d.ts","sourceRoot":"","sources":["../../../src/core/utils/docHelpers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,aAAa,EAAE,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CACzC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,cAAc,CAC5B,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,MAAM,CA8BR;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,MAAM,GAClB,MAAM,CAeR;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,MAAM,GACZ,MAAM,EAAE,CAkBV;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,MAAM,CAuBrE;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,kBAAkB,EAAE,EACjC,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CAoBR"}
@@ -0,0 +1,138 @@
1
+ /**
2
+ * Documentation Helper Utilities
3
+ * Shared utilities for generating documentation across all features
4
+ */
5
+ /**
6
+ * Generate API documentation in Markdown format
7
+ *
8
+ * @param documentation - The documentation structure
9
+ * @param categoryKey - The category key to look up
10
+ * @param apiName - The API name to find
11
+ * @returns Formatted Markdown documentation
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * const doc = generateAPIDoc(
16
+ * LEADERBOARD_DOCUMENTATION,
17
+ * 'initialization',
18
+ * 'tap.getLeaderboardManager'
19
+ * );
20
+ * ```
21
+ */
22
+ export function generateAPIDoc(documentation, categoryKey, apiName) {
23
+ const category = documentation.categories[categoryKey];
24
+ if (!category) {
25
+ return `Category "${categoryKey}" not found`;
26
+ }
27
+ const api = category.apis.find(a => a.name === apiName);
28
+ if (!api) {
29
+ return `API "${apiName}" not found in category "${categoryKey}"`;
30
+ }
31
+ let doc = `# ${api.name}\n\n`;
32
+ doc += `**Method Signature:**\n\`\`\`javascript\n${api.method}\n\`\`\`\n\n`;
33
+ doc += `**Description:** ${api.description}\n\n`;
34
+ if (api.parameters) {
35
+ doc += `## Parameters\n\n`;
36
+ for (const [param, desc] of Object.entries(api.parameters)) {
37
+ doc += `- **\`${param}\`**: ${desc}\n`;
38
+ }
39
+ doc += '\n';
40
+ }
41
+ if (api.returnValue) {
42
+ doc += `## Returns\n\n${api.returnValue}\n\n`;
43
+ }
44
+ doc += `## Code Example\n\n\`\`\`javascript\n${api.example}\n\`\`\`\n`;
45
+ return doc;
46
+ }
47
+ /**
48
+ * Generate category documentation (all APIs in a category)
49
+ *
50
+ * @param documentation - The documentation structure
51
+ * @param categoryKey - The category key to generate
52
+ * @returns Formatted Markdown documentation
53
+ */
54
+ export function generateCategoryDoc(documentation, categoryKey) {
55
+ const category = documentation.categories[categoryKey];
56
+ if (!category) {
57
+ return `Category "${categoryKey}" not found`;
58
+ }
59
+ let doc = `# ${category.title}\n\n${category.description}\n\n`;
60
+ for (const api of category.apis) {
61
+ doc += `## ${api.name}\n\n`;
62
+ doc += `${api.description}\n\n`;
63
+ doc += `\`\`\`javascript\n${api.example}\n\`\`\`\n\n`;
64
+ }
65
+ return doc;
66
+ }
67
+ /**
68
+ * Search documentation by keyword
69
+ *
70
+ * @param documentation - The documentation structure
71
+ * @param query - Search query
72
+ * @returns Array of matching API documentation strings
73
+ */
74
+ export function searchDocumentation(documentation, query) {
75
+ const results = [];
76
+ const queryLower = query.toLowerCase();
77
+ for (const [categoryKey, category] of Object.entries(documentation.categories)) {
78
+ for (const api of category.apis) {
79
+ // Search in name, method, and description
80
+ if (api.name.toLowerCase().includes(queryLower) ||
81
+ api.method.toLowerCase().includes(queryLower) ||
82
+ api.description.toLowerCase().includes(queryLower)) {
83
+ results.push(generateAPIDoc(documentation, categoryKey, api.name));
84
+ }
85
+ }
86
+ }
87
+ return results;
88
+ }
89
+ /**
90
+ * Generate complete overview documentation
91
+ *
92
+ * @param documentation - The documentation structure
93
+ * @returns Formatted Markdown overview
94
+ */
95
+ export function generateOverview(documentation) {
96
+ let doc = `# ${documentation.title}\n\n`;
97
+ doc += `${documentation.description}\n\n`;
98
+ if (documentation.apiReference) {
99
+ doc += `**Official Documentation**: ${documentation.apiReference}\n\n`;
100
+ }
101
+ doc += `## 📚 API Categories\n\n`;
102
+ for (const [key, category] of Object.entries(documentation.categories)) {
103
+ doc += `### ${category.title}\n\n`;
104
+ doc += `${category.description}\n\n`;
105
+ doc += `**APIs:**\n`;
106
+ for (const api of category.apis) {
107
+ doc += `- \`${api.name}\` - ${api.description.split('\n')[0]}\n`;
108
+ }
109
+ doc += `\n`;
110
+ }
111
+ return doc;
112
+ }
113
+ /**
114
+ * Generate search suggestions when no results found
115
+ *
116
+ * @param query - Search query
117
+ * @param suggestions - Array of resource suggestions
118
+ * @param overviewUri - URI of the overview resource
119
+ * @returns Formatted suggestion message
120
+ */
121
+ export function generateSearchSuggestions(query, suggestions, overviewUri) {
122
+ let message = `No results found for "${query}".\n\n`;
123
+ message += `💡 **建议:直接读取相关 Resources 获取完整文档**\n\n`;
124
+ const queryLower = query.toLowerCase();
125
+ let foundSuggestions = false;
126
+ for (const suggestion of suggestions) {
127
+ if (suggestion.keywords.some(keyword => queryLower.includes(keyword))) {
128
+ message += `- ${suggestion.uri} - ${suggestion.description}\n`;
129
+ foundSuggestions = true;
130
+ }
131
+ }
132
+ if (!foundSuggestions && overviewUri) {
133
+ message += `\n或查看完整概览:\n`;
134
+ message += `- ${overviewUri} - 完整功能概览\n`;
135
+ }
136
+ return message;
137
+ }
138
+ //# sourceMappingURL=docHelpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docHelpers.js","sourceRoot":"","sources":["../../../src/core/utils/docHelpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,102 @@
1
+ /**
2
+ * MCP-compliant Logger for TapTap Minigame MCP Server
3
+ * Supports RFC 5424 log levels and dual output mode (stderr + MCP notifications)
4
+ */
5
+ import type { Server } from '@modelcontextprotocol/sdk/server/index.js';
6
+ /**
7
+ * RFC 5424 log levels (syslog severity levels)
8
+ */
9
+ export type LogLevel = 'debug' | 'info' | 'notice' | 'warning' | 'error' | 'critical' | 'alert' | 'emergency';
10
+ /**
11
+ * MCP-compliant Logger class
12
+ */
13
+ export declare class Logger {
14
+ private verbose;
15
+ private currentLevel;
16
+ private server?;
17
+ private transport?;
18
+ constructor();
19
+ /**
20
+ * Initialize logger with MCP server instance
21
+ */
22
+ initialize(server: Server, transport: 'stdio' | 'sse'): void;
23
+ /**
24
+ * Set log level (implements MCP logging/setLevel)
25
+ */
26
+ setLevel(level: LogLevel): void;
27
+ /**
28
+ * Get current log level
29
+ */
30
+ getLevel(): LogLevel;
31
+ /**
32
+ * Check if a message should be logged based on current level
33
+ */
34
+ private shouldLog;
35
+ /**
36
+ * Core logging method with dual output
37
+ * Pure dual-write: simple stderr + MCP notification
38
+ */
39
+ private log;
40
+ /**
41
+ * Log debug message
42
+ */
43
+ debug(message: string, data?: any, loggerName?: string): Promise<void>;
44
+ /**
45
+ * Log info message
46
+ */
47
+ info(message: string, data?: any, loggerName?: string): Promise<void>;
48
+ /**
49
+ * Log notice message
50
+ */
51
+ notice(message: string, data?: any, loggerName?: string): Promise<void>;
52
+ /**
53
+ * Log warning message
54
+ */
55
+ warning(message: string, data?: any, loggerName?: string): Promise<void>;
56
+ /**
57
+ * Log error message
58
+ */
59
+ error(message: string, error?: any, loggerName?: string): Promise<void>;
60
+ /**
61
+ * Log critical message
62
+ */
63
+ critical(message: string, data?: any, loggerName?: string): Promise<void>;
64
+ /**
65
+ * Log alert message
66
+ */
67
+ alert(message: string, data?: any, loggerName?: string): Promise<void>;
68
+ /**
69
+ * Log emergency message
70
+ */
71
+ emergency(message: string, data?: any, loggerName?: string): Promise<void>;
72
+ /**
73
+ * Log tool call with input arguments
74
+ */
75
+ logToolCall(toolName: string, args: any): Promise<void>;
76
+ /**
77
+ * Log tool response with output
78
+ */
79
+ logToolResponse(toolName: string, output: any, success?: boolean): Promise<void>;
80
+ /**
81
+ * Log HTTP request
82
+ */
83
+ logRequest(method: string, url: string, headers: Record<string, string>, body?: string): Promise<void>;
84
+ /**
85
+ * Log HTTP response
86
+ */
87
+ logResponse(method: string, url: string, status: number, statusText: string, body: any, success?: boolean, responseHeaders?: Record<string, string>): Promise<void>;
88
+ /**
89
+ * Log client connection event
90
+ */
91
+ logClientConnection(sessionId: string): Promise<void>;
92
+ /**
93
+ * Log client disconnection event
94
+ */
95
+ logClientDisconnection(sessionId: string): Promise<void>;
96
+ /**
97
+ * Check if verbose mode is enabled
98
+ */
99
+ isVerbose(): boolean;
100
+ }
101
+ export declare const logger: Logger;
102
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/core/utils/logger.ts"],"names":[],"mappings":"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"}