mta-mcp 1.8.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 (112) hide show
  1. package/CHANGELOG.md +457 -0
  2. package/README.md +680 -0
  3. package/archive/docs/CLAUDE_SETUP.md +103 -0
  4. package/archive/docs/DEVELOPMENT_ROADMAP.md +186 -0
  5. package/archive/docs/GETTING_STARTED.md +337 -0
  6. package/archive/docs/MIGRATION_GUIDE.md +189 -0
  7. package/archive/docs/TROUBLESHOOTING.md +386 -0
  8. package/archive/docs/USAGE_GUIDE.md +739 -0
  9. package/archive/tests/test-cloud-dev.cjs +158 -0
  10. package/archive/tests/test-mcp.sh +46 -0
  11. package/archive/tests/test-miniprogram.cjs +94 -0
  12. package/archive/tests/test-phase2.cjs +144 -0
  13. package/archive/tests/test-phase3.cjs +121 -0
  14. package/archive/tests/test-phase4.cjs +249 -0
  15. package/archive/tests/test-standards.cjs +111 -0
  16. package/archive/tests/test-vitasage-config.cjs +25 -0
  17. package/build/core/agentTemplate.d.ts +33 -0
  18. package/build/core/agentTemplate.d.ts.map +1 -0
  19. package/build/core/agentTemplate.js +158 -0
  20. package/build/core/agentTemplate.js.map +1 -0
  21. package/build/core/codeValidator.d.ts +82 -0
  22. package/build/core/codeValidator.d.ts.map +1 -0
  23. package/build/core/codeValidator.js +287 -0
  24. package/build/core/codeValidator.js.map +1 -0
  25. package/build/core/githubClient.d.ts +26 -0
  26. package/build/core/githubClient.d.ts.map +1 -0
  27. package/build/core/githubClient.js +60 -0
  28. package/build/core/githubClient.js.map +1 -0
  29. package/build/core/i18nDetector.d.ts +47 -0
  30. package/build/core/i18nDetector.d.ts.map +1 -0
  31. package/build/core/i18nDetector.js +314 -0
  32. package/build/core/i18nDetector.js.map +1 -0
  33. package/build/core/projectContextManager.d.ts +39 -0
  34. package/build/core/projectContextManager.d.ts.map +1 -0
  35. package/build/core/projectContextManager.js +147 -0
  36. package/build/core/projectContextManager.js.map +1 -0
  37. package/build/core/smartAgentMatcher.d.ts +51 -0
  38. package/build/core/smartAgentMatcher.d.ts.map +1 -0
  39. package/build/core/smartAgentMatcher.js +493 -0
  40. package/build/core/smartAgentMatcher.js.map +1 -0
  41. package/build/core/standardsManager.d.ts +130 -0
  42. package/build/core/standardsManager.d.ts.map +1 -0
  43. package/build/core/standardsManager.js +595 -0
  44. package/build/core/standardsManager.js.map +1 -0
  45. package/build/core/types.d.ts +55 -0
  46. package/build/core/types.d.ts.map +1 -0
  47. package/build/core/types.js +21 -0
  48. package/build/core/types.js.map +1 -0
  49. package/build/index.d.ts +3 -0
  50. package/build/index.d.ts.map +1 -0
  51. package/build/index.js +463 -0
  52. package/build/index.js.map +1 -0
  53. package/build/tools/analyzeProject.d.ts +12 -0
  54. package/build/tools/analyzeProject.d.ts.map +1 -0
  55. package/build/tools/analyzeProject.js +85 -0
  56. package/build/tools/analyzeProject.js.map +1 -0
  57. package/build/tools/autoSetup.d.ts +15 -0
  58. package/build/tools/autoSetup.d.ts.map +1 -0
  59. package/build/tools/autoSetup.js +291 -0
  60. package/build/tools/autoSetup.js.map +1 -0
  61. package/build/tools/generateConfig.d.ts +16 -0
  62. package/build/tools/generateConfig.d.ts.map +1 -0
  63. package/build/tools/generateConfig.js +379 -0
  64. package/build/tools/generateConfig.js.map +1 -0
  65. package/build/tools/generateProjectAgent.d.ts +15 -0
  66. package/build/tools/generateProjectAgent.d.ts.map +1 -0
  67. package/build/tools/generateProjectAgent.js +348 -0
  68. package/build/tools/generateProjectAgent.js.map +1 -0
  69. package/build/tools/getCompactStandards.d.ts +20 -0
  70. package/build/tools/getCompactStandards.d.ts.map +1 -0
  71. package/build/tools/getCompactStandards.js +367 -0
  72. package/build/tools/getCompactStandards.js.map +1 -0
  73. package/build/tools/getSmartStandards.d.ts +14 -0
  74. package/build/tools/getSmartStandards.d.ts.map +1 -0
  75. package/build/tools/getSmartStandards.js +184 -0
  76. package/build/tools/getSmartStandards.js.map +1 -0
  77. package/build/tools/healthCheck.d.ts +14 -0
  78. package/build/tools/healthCheck.d.ts.map +1 -0
  79. package/build/tools/healthCheck.js +237 -0
  80. package/build/tools/healthCheck.js.map +1 -0
  81. package/build/tools/listAgents.d.ts +10 -0
  82. package/build/tools/listAgents.d.ts.map +1 -0
  83. package/build/tools/listAgents.js +79 -0
  84. package/build/tools/listAgents.js.map +1 -0
  85. package/build/tools/matchAgents.d.ts +14 -0
  86. package/build/tools/matchAgents.d.ts.map +1 -0
  87. package/build/tools/matchAgents.js +70 -0
  88. package/build/tools/matchAgents.js.map +1 -0
  89. package/build/tools/usePreset.d.ts +23 -0
  90. package/build/tools/usePreset.d.ts.map +1 -0
  91. package/build/tools/usePreset.js +163 -0
  92. package/build/tools/usePreset.js.map +1 -0
  93. package/generate-project-config.cjs +97 -0
  94. package/package.json +45 -0
  95. package/regenerate-vitasage.sh +30 -0
  96. package/src/core/codeValidator.ts +357 -0
  97. package/src/core/githubClient.ts +64 -0
  98. package/src/core/i18nDetector.ts +357 -0
  99. package/src/core/smartAgentMatcher.ts +490 -0
  100. package/src/core/standardsManager.ts +763 -0
  101. package/src/core/types.ts +72 -0
  102. package/src/index.ts +519 -0
  103. package/src/tools/analyzeProject.ts +94 -0
  104. package/src/tools/autoSetup.ts +312 -0
  105. package/src/tools/generateConfig.ts +429 -0
  106. package/src/tools/getCompactStandards.ts +413 -0
  107. package/src/tools/getSmartStandards.ts +205 -0
  108. package/src/tools/healthCheck.ts +261 -0
  109. package/src/tools/listAgents.ts +91 -0
  110. package/src/tools/matchAgents.ts +80 -0
  111. package/src/tools/usePreset.ts +180 -0
  112. package/tsconfig.json +20 -0
@@ -0,0 +1,55 @@
1
+ /**
2
+ * 项目特征接口
3
+ */
4
+ export interface ProjectFeatures {
5
+ frameworks: string[];
6
+ languages: string[];
7
+ tools: string[];
8
+ keywords: string[];
9
+ projectType: string;
10
+ }
11
+ /**
12
+ * Agent 元数据接口
13
+ */
14
+ export interface AgentMetadata {
15
+ id: string;
16
+ path: string;
17
+ title: string;
18
+ description: string;
19
+ tags: string[];
20
+ applicableWhen?: {
21
+ frameworks?: string[];
22
+ tools?: string[];
23
+ languages?: string[];
24
+ keywords?: string[];
25
+ };
26
+ score?: number;
27
+ }
28
+ /**
29
+ * 配置生成结果
30
+ */
31
+ export interface GenerationResult {
32
+ success: boolean;
33
+ projectType?: string;
34
+ matchedAgents?: AgentMetadata[];
35
+ configPath?: string;
36
+ error?: string;
37
+ }
38
+ /**
39
+ * 日志输出接口
40
+ */
41
+ export interface Logger {
42
+ log(message: string): void;
43
+ error(message: string): void;
44
+ }
45
+ /**
46
+ * 控制台日志实现
47
+ */
48
+ export declare class ConsoleLogger implements Logger {
49
+ private enableDebug;
50
+ constructor(enableDebug?: boolean);
51
+ log(message: string): void;
52
+ error(message: string): void;
53
+ debug(message: string): void;
54
+ }
55
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,cAAc,CAAC,EAAE;QACb,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACvB,CAAC;IACF,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,aAAa,EAAE,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACnB,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED;;GAEG;AACH,qBAAa,aAAc,YAAW,MAAM;IACxC,OAAO,CAAC,WAAW,CAAU;gBAEjB,WAAW,GAAE,OAAe;IAIxC,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI1B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI5B,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;CAK/B"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * 控制台日志实现
3
+ */
4
+ export class ConsoleLogger {
5
+ enableDebug;
6
+ constructor(enableDebug = false) {
7
+ this.enableDebug = enableDebug;
8
+ }
9
+ log(message) {
10
+ console.error(`[INFO] ${message}`);
11
+ }
12
+ error(message) {
13
+ console.error(`[ERROR] ${message}`);
14
+ }
15
+ debug(message) {
16
+ if (this.enableDebug) {
17
+ console.error(`[DEBUG] ${message}`);
18
+ }
19
+ }
20
+ }
21
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAgDA;;GAEG;AACH,MAAM,OAAO,aAAa;IACd,WAAW,CAAU;IAE7B,YAAY,cAAuB,KAAK;QACpC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,OAAe;QACf,OAAO,CAAC,KAAK,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,OAAe;QACjB,OAAO,CAAC,KAAK,CAAC,WAAW,OAAO,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,OAAe;QACjB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,CAAC,WAAW,OAAO,EAAE,CAAC,CAAC;QACxC,CAAC;IACL,CAAC;CACJ"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/build/index.js ADDED
@@ -0,0 +1,463 @@
1
+ #!/usr/bin/env node
2
+ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
3
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
4
+ import { CallToolRequestSchema, ListToolsRequestSchema, ListResourcesRequestSchema, ReadResourceRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
5
+ import { analyzeProject } from './tools/analyzeProject.js';
6
+ import { matchAgents } from './tools/matchAgents.js';
7
+ import { listAvailableAgents } from './tools/listAgents.js';
8
+ import { generateConfig } from './tools/generateConfig.js';
9
+ import { autoSetup } from './tools/autoSetup.js';
10
+ import { getSmartStandards } from './tools/getSmartStandards.js';
11
+ import { usePreset, listPresets } from './tools/usePreset.js';
12
+ import { healthCheck } from './tools/healthCheck.js';
13
+ import { getCompactStandards } from './tools/getCompactStandards.js';
14
+ import { StandardsManager } from './core/standardsManager.js';
15
+ import { CodeValidator } from './core/codeValidator.js';
16
+ const SERVER_VERSION = '1.7.0'; // v1.3.0 更新
17
+ /**
18
+ * Copilot Prompts MCP Server
19
+ * 智能项目分析和编码规范服务
20
+ *
21
+ * @version 1.7.0
22
+ * @features
23
+ * - 项目技术栈自动检测
24
+ * - 智能 Agent 匹配推荐
25
+ * - 配置文件自动生成
26
+ * - 动态编码规范资源
27
+ * - 跨平台 MCP 支持
28
+ * - Phase 4: 傻瓜模式增强
29
+ * * 一键自动配置
30
+ * * 零参数智能推荐
31
+ * * 预设场景快捷方式
32
+ * * 健康检查诊断
33
+ * - v1.1.0: 代码质量保障
34
+ * * 自动语法验证
35
+ * * 代码完整性检查
36
+ * * 自动修复常见错误
37
+ * * 多场景兼容性测试
38
+ */
39
+ class CopilotPromptsMCPServer {
40
+ server;
41
+ standardsManager;
42
+ codeValidator;
43
+ constructor() {
44
+ this.standardsManager = new StandardsManager();
45
+ this.codeValidator = new CodeValidator();
46
+ this.server = new Server({
47
+ name: 'mta',
48
+ version: SERVER_VERSION,
49
+ }, {
50
+ capabilities: {
51
+ tools: {},
52
+ resources: {},
53
+ },
54
+ });
55
+ this.setupToolHandlers();
56
+ this.setupResourceHandlers();
57
+ this.setupErrorHandlers();
58
+ }
59
+ /**
60
+ * 设置错误处理器
61
+ */
62
+ setupErrorHandlers() {
63
+ this.server.onerror = (error) => {
64
+ console.error('[MCP Error]', error);
65
+ };
66
+ process.on('SIGINT', async () => {
67
+ console.error('[MCP] 收到关闭信号,正在关闭服务器...');
68
+ await this.server.close();
69
+ process.exit(0);
70
+ });
71
+ process.on('SIGTERM', async () => {
72
+ console.error('[MCP] 收到终止信号,正在关闭服务器...');
73
+ await this.server.close();
74
+ process.exit(0);
75
+ });
76
+ process.on('uncaughtException', (error) => {
77
+ console.error('[MCP] 未捕获的异常:', error);
78
+ process.exit(1);
79
+ });
80
+ process.on('unhandledRejection', (reason, promise) => {
81
+ console.error('[MCP] 未处理的 Promise 拒绝:', reason);
82
+ process.exit(1);
83
+ });
84
+ }
85
+ setupToolHandlers() {
86
+ // 列出所有可用工具
87
+ this.server.setRequestHandler(ListToolsRequestSchema, async () => ({
88
+ tools: [
89
+ {
90
+ name: 'analyze_project',
91
+ description: '分析项目的技术栈、框架、工具和特征。自动检测 Vue、React、TypeScript 等技术。路径可选,不填则自动检测当前工作区。',
92
+ inputSchema: {
93
+ type: 'object',
94
+ properties: {
95
+ projectPath: {
96
+ type: 'string',
97
+ description: '项目的绝对路径(可选,不填则使用当前工作目录),例如: /Users/username/projects/my-app',
98
+ },
99
+ },
100
+ },
101
+ },
102
+ {
103
+ name: 'auto_setup',
104
+ description: '🎯 一键自动配置 MCP 服务器和项目规范。自动创建 .vscode/mcp.json、settings.json、extensions.json,并分析项目生成 .github/copilot-instructions.md 配置文件。',
105
+ inputSchema: {
106
+ type: 'object',
107
+ properties: {
108
+ workspacePath: {
109
+ type: 'string',
110
+ description: '工作区路径(可选,不填则使用当前目录)',
111
+ },
112
+ generateInstructions: {
113
+ type: 'boolean',
114
+ description: '是否自动生成 copilot-instructions.md(默认 true)',
115
+ default: true,
116
+ },
117
+ },
118
+ },
119
+ },
120
+ {
121
+ name: 'health_check',
122
+ description: '🏥 检查 MCP 服务器健康状态,诊断配置问题。返回详细的健康报告和修复建议。',
123
+ inputSchema: {
124
+ type: 'object',
125
+ properties: {
126
+ workspacePath: {
127
+ type: 'string',
128
+ description: '工作区路径(可选)',
129
+ },
130
+ verbose: {
131
+ type: 'boolean',
132
+ description: '是否显示详细信息(默认 false)',
133
+ },
134
+ },
135
+ },
136
+ },
137
+ {
138
+ name: 'get_smart_standards',
139
+ description: '🧠 零参数智能规范推荐。自动检测当前文件类型、导入、场景,推荐最相关的编码规范。比手动指定参数更简单。',
140
+ inputSchema: {
141
+ type: 'object',
142
+ properties: {
143
+ currentFile: {
144
+ type: 'string',
145
+ description: '当前编辑的文件路径(可选)',
146
+ },
147
+ fileContent: {
148
+ type: 'string',
149
+ description: '文件内容(可选,用于分析导入和场景)',
150
+ },
151
+ },
152
+ },
153
+ },
154
+ {
155
+ name: 'use_preset',
156
+ description: '⚡ 使用预设场景快捷获取规范。支持 vue3-component、vue3-form、pinia-store、api-call 等常见场景,一键获取。',
157
+ inputSchema: {
158
+ type: 'object',
159
+ properties: {
160
+ preset: {
161
+ type: 'string',
162
+ enum: ['vue3-component', 'vue3-form', 'vue3-table', 'pinia-store', 'api-call', 'typescript-strict', 'i18n', 'composable'],
163
+ description: '预设场景 ID',
164
+ },
165
+ customImports: {
166
+ type: 'array',
167
+ items: { type: 'string' },
168
+ description: '额外的导入(可选)',
169
+ },
170
+ },
171
+ required: ['preset'],
172
+ },
173
+ },
174
+ {
175
+ name: 'list_presets',
176
+ description: '📋 列出所有可用的预设场景及其说明。',
177
+ inputSchema: {
178
+ type: 'object',
179
+ properties: {},
180
+ },
181
+ },
182
+ {
183
+ name: 'match_agents',
184
+ description: '根据项目特征智能匹配最合适的 Copilot Agents。使用加权评分算法。',
185
+ inputSchema: {
186
+ type: 'object',
187
+ properties: {
188
+ projectFeatures: {
189
+ type: 'object',
190
+ description: '项目特征对象(从 analyze_project 获取)',
191
+ properties: {
192
+ frameworks: { type: 'array', items: { type: 'string' } },
193
+ languages: { type: 'array', items: { type: 'string' } },
194
+ tools: { type: 'array', items: { type: 'string' } },
195
+ keywords: { type: 'array', items: { type: 'string' } },
196
+ projectType: { type: 'string' },
197
+ },
198
+ required: ['frameworks', 'languages', 'tools', 'keywords', 'projectType'],
199
+ },
200
+ limit: {
201
+ type: 'number',
202
+ description: '返回的最大 Agent 数量(默认 10)',
203
+ default: 10,
204
+ },
205
+ },
206
+ required: ['projectFeatures'],
207
+ },
208
+ },
209
+ {
210
+ name: 'list_available_agents',
211
+ description: '获取所有可用的 Copilot Agents 列表,包括名称、描述、路径等信息。',
212
+ inputSchema: {
213
+ type: 'object',
214
+ properties: {},
215
+ },
216
+ },
217
+ {
218
+ name: 'generate_config',
219
+ description: '为项目生成 Copilot 配置文件(.github/copilot-instructions.md)。可以自动匹配或手动指定 Agents。',
220
+ inputSchema: {
221
+ type: 'object',
222
+ properties: {
223
+ projectPath: {
224
+ type: 'string',
225
+ description: '项目的绝对路径',
226
+ },
227
+ agentIds: {
228
+ type: 'array',
229
+ items: { type: 'string' },
230
+ description: '要应用的 Agent ID 列表(可选,如不提供则自动匹配)',
231
+ },
232
+ autoMatch: {
233
+ type: 'boolean',
234
+ description: '是否自动匹配 Agents(默认 true)',
235
+ default: true,
236
+ },
237
+ updateMode: {
238
+ type: 'string',
239
+ enum: ['merge', 'overwrite'],
240
+ description: '更新模式:merge-保留自定义内容(默认),overwrite-完全覆盖',
241
+ default: 'merge',
242
+ },
243
+ configId: {
244
+ type: 'string',
245
+ description: '配置方案ID(如 strict),会加载对应的详细规则',
246
+ },
247
+ },
248
+ required: ['projectPath'],
249
+ },
250
+ },
251
+ {
252
+ name: 'get_compact_standards',
253
+ description: '🚀 Token 优化版规范获取。支持三种模式:summary(~500 tokens)仅返回规范列表、key-rules(~2000 tokens)返回关键规则摘要、full(完整内容)。默认 key-rules 模式,比完整加载节省 80%+ token。',
254
+ inputSchema: {
255
+ type: 'object',
256
+ properties: {
257
+ currentFile: {
258
+ type: 'string',
259
+ description: '当前文件路径(可选)',
260
+ },
261
+ fileContent: {
262
+ type: 'string',
263
+ description: '文件内容(可选,用于分析)',
264
+ },
265
+ scenario: {
266
+ type: 'string',
267
+ description: '开发场景(可选)',
268
+ },
269
+ mode: {
270
+ type: 'string',
271
+ enum: ['summary', 'key-rules', 'full'],
272
+ description: '返回模式:summary(~500 tokens)、key-rules(~2000 tokens,默认)、full(完整内容)',
273
+ default: 'key-rules',
274
+ },
275
+ },
276
+ },
277
+ },
278
+ {
279
+ name: 'get_relevant_standards',
280
+ description: '根据当前开发上下文,获取相关的编码规范(完整内容)。如需节省 token,请使用 get_compact_standards。',
281
+ inputSchema: {
282
+ type: 'object',
283
+ properties: {
284
+ fileType: {
285
+ type: 'string',
286
+ description: '文件类型(如 vue, ts, tsx, js)',
287
+ },
288
+ imports: {
289
+ type: 'array',
290
+ items: { type: 'string' },
291
+ description: '文件中的 import 语句(如 ["vue", "pinia", "element-plus"])。如果未提供且提供了 fileContent,将自动检测。',
292
+ },
293
+ scenario: {
294
+ type: 'string',
295
+ description: '开发场景描述(如 "创建表单组件", "API 调用", "状态管理")',
296
+ },
297
+ fileContent: {
298
+ type: 'string',
299
+ description: '文件内容(可选)。提供后可自动检测 imports 并根据关键词智能匹配规范。',
300
+ },
301
+ },
302
+ },
303
+ },
304
+ {
305
+ name: 'get_standards_stats',
306
+ description: '获取规范系统的使用统计和性能指标。用于了解最常用的规范组合、缓存命中率、Token 节省情况等。',
307
+ inputSchema: {
308
+ type: 'object',
309
+ properties: {
310
+ includeCache: {
311
+ type: 'boolean',
312
+ description: '是否包含缓存详细信息(默认 false)',
313
+ },
314
+ },
315
+ },
316
+ },
317
+ ],
318
+ }));
319
+ // 处理工具调用
320
+ this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
321
+ try {
322
+ const { name, arguments: args } = request.params;
323
+ console.error(`[MCP] 调用工具: ${name}`);
324
+ console.error(`[MCP] 参数:`, JSON.stringify(args, null, 2));
325
+ switch (name) {
326
+ case 'analyze_project':
327
+ return await analyzeProject(args);
328
+ case 'auto_setup':
329
+ return await autoSetup(args);
330
+ case 'health_check':
331
+ return await healthCheck(args);
332
+ case 'get_smart_standards':
333
+ return await getSmartStandards(args);
334
+ case 'use_preset':
335
+ return await usePreset(args);
336
+ case 'list_presets':
337
+ return await listPresets();
338
+ case 'match_agents':
339
+ return await matchAgents(args);
340
+ case 'list_available_agents':
341
+ return await listAvailableAgents();
342
+ case 'generate_config':
343
+ return await generateConfig(args);
344
+ case 'get_compact_standards':
345
+ return await getCompactStandards(args);
346
+ case 'get_relevant_standards':
347
+ return this.getRelevantStandards(args);
348
+ case 'get_standards_stats':
349
+ return this.getStandardsStats(args);
350
+ default:
351
+ throw new Error(`未知工具: ${name}`);
352
+ }
353
+ }
354
+ catch (error) {
355
+ const errorMessage = error instanceof Error ? error.message : String(error);
356
+ console.error(`[MCP] 工具执行失败:`, errorMessage);
357
+ return {
358
+ content: [
359
+ {
360
+ type: 'text',
361
+ text: JSON.stringify({
362
+ error: errorMessage,
363
+ success: false,
364
+ }, null, 2),
365
+ },
366
+ ],
367
+ };
368
+ }
369
+ });
370
+ }
371
+ /**
372
+ * 设置资源处理器
373
+ */
374
+ setupResourceHandlers() {
375
+ // 列出所有可用资源
376
+ this.server.setRequestHandler(ListResourcesRequestSchema, async () => {
377
+ const standards = this.standardsManager.getAvailableStandards();
378
+ return {
379
+ resources: standards.map(std => ({
380
+ uri: std.uri,
381
+ name: std.name,
382
+ description: std.description,
383
+ mimeType: 'text/markdown'
384
+ }))
385
+ };
386
+ });
387
+ // 读取特定资源
388
+ this.server.setRequestHandler(ReadResourceRequestSchema, async (request) => {
389
+ const { uri } = request.params;
390
+ try {
391
+ const content = this.standardsManager.readStandard(uri);
392
+ return {
393
+ contents: [{
394
+ uri,
395
+ mimeType: 'text/markdown',
396
+ text: content
397
+ }]
398
+ };
399
+ }
400
+ catch (error) {
401
+ throw new Error(`无法读取规范 ${uri}: ${error}`);
402
+ }
403
+ });
404
+ }
405
+ /**
406
+ * 获取相关编码规范
407
+ */
408
+ getRelevantStandards(args) {
409
+ // 获取相关规范 URI 列表
410
+ const standardUris = this.standardsManager.getRelevantStandards(args);
411
+ // 组合规范内容
412
+ const content = this.standardsManager.combineStandards(standardUris);
413
+ return {
414
+ content: [{
415
+ type: 'text',
416
+ text: JSON.stringify({
417
+ success: true,
418
+ standards: standardUris,
419
+ content: content,
420
+ tokenEstimate: Math.ceil(content.length / 4), // 粗略估算 token 数
421
+ message: `已加载 ${standardUris.length} 个相关规范`
422
+ }, null, 2)
423
+ }]
424
+ };
425
+ }
426
+ /**
427
+ * 获取规范系统统计信息(Phase 3)
428
+ */
429
+ getStandardsStats(args) {
430
+ const usageStats = this.standardsManager.getUsageStats();
431
+ const performanceMetrics = this.standardsManager.getPerformanceMetrics();
432
+ const result = {
433
+ success: true,
434
+ usage: usageStats,
435
+ performance: performanceMetrics,
436
+ summary: {
437
+ totalCalls: usageStats.totalCalls,
438
+ cacheHitRate: performanceMetrics.cacheHitRate,
439
+ totalTokensSaved: performanceMetrics.totalTokensSaved,
440
+ averageResponseTime: `${performanceMetrics.averageResponseTime.toFixed(2)}ms`
441
+ }
442
+ };
443
+ // 如果需要缓存详情
444
+ if (args.includeCache) {
445
+ result.cache = this.standardsManager.getCacheStats();
446
+ }
447
+ return {
448
+ content: [{
449
+ type: 'text',
450
+ text: JSON.stringify(result, null, 2)
451
+ }]
452
+ };
453
+ }
454
+ async run() {
455
+ const transport = new StdioServerTransport();
456
+ await this.server.connect(transport);
457
+ console.error('Copilot Prompts MCP Server 已启动');
458
+ }
459
+ }
460
+ // 启动服务器
461
+ const server = new CopilotPromptsMCPServer();
462
+ server.run().catch(console.error);
463
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * 分析项目工具(Phase 4 增强:支持自动检测 + 国际化检测)
3
+ */
4
+ export declare function analyzeProject(args: {
5
+ projectPath?: string;
6
+ }): Promise<{
7
+ content: Array<{
8
+ type: string;
9
+ text: string;
10
+ }>;
11
+ }>;
12
+ //# sourceMappingURL=analyzeProject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyzeProject.d.ts","sourceRoot":"","sources":["../../src/tools/analyzeProject.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAC1E,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAClD,CAAC,CAkFD"}