vibe-coding-mcp 2.12.1 → 2.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +74 -0
- package/LICENSE +21 -0
- package/README.md +205 -291
- package/SECURITY.md +65 -0
- package/dist/core/mcpServerFactory.d.ts +30 -0
- package/dist/core/mcpServerFactory.js +136 -0
- package/dist/core/mcpServerFactory.js.map +1 -0
- package/dist/core/prompts.d.ts +42 -0
- package/dist/core/prompts.js +158 -0
- package/dist/core/prompts.js.map +1 -0
- package/dist/core/resources.d.ts +47 -0
- package/dist/core/resources.js +99 -0
- package/dist/core/resources.js.map +1 -0
- package/dist/core/toolRegistry.d.ts +55 -0
- package/dist/core/toolRegistry.js +185 -0
- package/dist/core/toolRegistry.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.js +88 -147
- package/dist/index.js.map +1 -1
- package/dist/stdio.d.ts +7 -1
- package/dist/stdio.js +15 -137
- package/dist/stdio.js.map +1 -1
- package/package.json +10 -4
- package/dist/__tests__/collectCodeContext.test.d.ts +0 -2
- package/dist/__tests__/collectCodeContext.test.d.ts.map +0 -1
- package/dist/__tests__/collectCodeContext.test.js +0 -139
- package/dist/__tests__/collectCodeContext.test.js.map +0 -1
- package/dist/__tests__/createSessionLog.test.d.ts +0 -2
- package/dist/__tests__/createSessionLog.test.d.ts.map +0 -1
- package/dist/__tests__/createSessionLog.test.js +0 -130
- package/dist/__tests__/createSessionLog.test.js.map +0 -1
- package/dist/__tests__/exportSession.test.d.ts +0 -2
- package/dist/__tests__/exportSession.test.d.ts.map +0 -1
- package/dist/__tests__/exportSession.test.js +0 -180
- package/dist/__tests__/exportSession.test.js.map +0 -1
- package/dist/__tests__/generateDevDocument.test.d.ts +0 -2
- package/dist/__tests__/generateDevDocument.test.d.ts.map +0 -1
- package/dist/__tests__/generateDevDocument.test.js +0 -174
- package/dist/__tests__/generateDevDocument.test.js.map +0 -1
- package/dist/__tests__/git.test.d.ts +0 -2
- package/dist/__tests__/git.test.d.ts.map +0 -1
- package/dist/__tests__/git.test.js +0 -282
- package/dist/__tests__/git.test.js.map +0 -1
- package/dist/__tests__/normalizeForPlatform.test.d.ts +0 -2
- package/dist/__tests__/normalizeForPlatform.test.d.ts.map +0 -1
- package/dist/__tests__/normalizeForPlatform.test.js +0 -171
- package/dist/__tests__/normalizeForPlatform.test.js.map +0 -1
- package/dist/__tests__/projectProfile.test.d.ts +0 -2
- package/dist/__tests__/projectProfile.test.d.ts.map +0 -1
- package/dist/__tests__/projectProfile.test.js +0 -216
- package/dist/__tests__/projectProfile.test.js.map +0 -1
- package/dist/__tests__/publishDocument.test.d.ts +0 -2
- package/dist/__tests__/publishDocument.test.d.ts.map +0 -1
- package/dist/__tests__/publishDocument.test.js +0 -93
- package/dist/__tests__/publishDocument.test.js.map +0 -1
- package/dist/__tests__/sessionHistory.test.d.ts +0 -2
- package/dist/__tests__/sessionHistory.test.d.ts.map +0 -1
- package/dist/__tests__/sessionHistory.test.js +0 -229
- package/dist/__tests__/sessionHistory.test.js.map +0 -1
- package/dist/__tests__/summarizeDesignDecisions.test.d.ts +0 -2
- package/dist/__tests__/summarizeDesignDecisions.test.d.ts.map +0 -1
- package/dist/__tests__/summarizeDesignDecisions.test.js +0 -158
- package/dist/__tests__/summarizeDesignDecisions.test.js.map +0 -1
- package/dist/core/ai.d.ts.map +0 -1
- package/dist/core/cache.d.ts.map +0 -1
- package/dist/core/config.d.ts.map +0 -1
- package/dist/core/errors.d.ts.map +0 -1
- package/dist/core/logger.d.ts.map +0 -1
- package/dist/core/profileStorage.d.ts.map +0 -1
- package/dist/core/schemas.d.ts.map +0 -1
- package/dist/core/security.d.ts.map +0 -1
- package/dist/core/sessionStorage.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/platforms/confluence.d.ts.map +0 -1
- package/dist/platforms/discord.d.ts.map +0 -1
- package/dist/platforms/github-wiki.d.ts.map +0 -1
- package/dist/platforms/notion.d.ts.map +0 -1
- package/dist/platforms/obsidian.d.ts.map +0 -1
- package/dist/platforms/slack.d.ts.map +0 -1
- package/dist/stdio.d.ts.map +0 -1
- package/dist/tools/analyzeCode.d.ts.map +0 -1
- package/dist/tools/autoTag.d.ts.map +0 -1
- package/dist/tools/batch.d.ts.map +0 -1
- package/dist/tools/collectCodeContext.d.ts.map +0 -1
- package/dist/tools/createSessionLog.d.ts.map +0 -1
- package/dist/tools/exportSession.d.ts.map +0 -1
- package/dist/tools/generateDevDocument.d.ts.map +0 -1
- package/dist/tools/git.d.ts.map +0 -1
- package/dist/tools/normalizeForPlatform.d.ts.map +0 -1
- package/dist/tools/projectProfile.d.ts.map +0 -1
- package/dist/tools/publishDocument.d.ts.map +0 -1
- package/dist/tools/sessionHistory.d.ts.map +0 -1
- package/dist/tools/sessionStats.d.ts.map +0 -1
- package/dist/tools/summarizeDesignDecisions.d.ts.map +0 -1
- package/dist/tools/template.d.ts.map +0 -1
- package/dist/types/index.d.ts.map +0 -1
- package/dist/utils/astParser.d.ts.map +0 -1
- package/dist/utils/gitExecutor.d.ts.map +0 -1
- package/dist/utils/gitParsers.d.ts.map +0 -1
- package/dist/utils/i18n.d.ts.map +0 -1
- package/dist/utils/markdown.d.ts.map +0 -1
- package/dist/utils/mermaidGenerator.d.ts.map +0 -1
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared tool registry — single source of truth for all 15 MCP tools.
|
|
3
|
+
*
|
|
4
|
+
* Both entry points (`src/index.ts` HTTP transport and `src/stdio.ts` stdio
|
|
5
|
+
* transport) import from this module so they expose an identical capability
|
|
6
|
+
* surface. Adding/removing a tool is a single-line change here.
|
|
7
|
+
*/
|
|
8
|
+
import { createErrorResponse, ToolError } from './errors.js';
|
|
9
|
+
import { validateInput, CollectCodeContextSchema, SummarizeDesignDecisionsSchema, GenerateDevDocumentSchema, NormalizeForPlatformSchema, PublishDocumentSchema, CreateSessionLogSchema, AnalyzeCodeSchema, SessionHistorySchema, ExportSessionSchema, ProjectProfileSchema, GitSchema, SessionStatsSchema, AutoTagSchema, TemplateSchema, BatchSchema, } from './schemas.js';
|
|
10
|
+
// Tool implementations
|
|
11
|
+
import { collectCodeContext, collectCodeContextSchema } from '../tools/collectCodeContext.js';
|
|
12
|
+
import { summarizeDesignDecisions, summarizeDesignDecisionsSchema, } from '../tools/summarizeDesignDecisions.js';
|
|
13
|
+
import { generateDevDocument, generateDevDocumentSchema } from '../tools/generateDevDocument.js';
|
|
14
|
+
import { normalizeForPlatform, normalizeForPlatformSchema } from '../tools/normalizeForPlatform.js';
|
|
15
|
+
import { publishDocument, publishDocumentSchema } from '../tools/publishDocument.js';
|
|
16
|
+
import { createSessionLog, createSessionLogSchema } from '../tools/createSessionLog.js';
|
|
17
|
+
import { analyzeCodeTool, analyzeCodeSchema } from '../tools/analyzeCode.js';
|
|
18
|
+
import { sessionHistoryTool, sessionHistorySchema } from '../tools/sessionHistory.js';
|
|
19
|
+
import { exportSessionTool, exportSessionSchema } from '../tools/exportSession.js';
|
|
20
|
+
import { projectProfileTool, projectProfileSchema } from '../tools/projectProfile.js';
|
|
21
|
+
import { gitTool, gitSchema } from '../tools/git.js';
|
|
22
|
+
import { sessionStatsTool, sessionStatsSchema } from '../tools/sessionStats.js';
|
|
23
|
+
import { autoTagTool, autoTagSchema } from '../tools/autoTag.js';
|
|
24
|
+
import { templateTool, templateSchema } from '../tools/template.js';
|
|
25
|
+
import { batchTool, batchSchema } from '../tools/batch.js';
|
|
26
|
+
/**
|
|
27
|
+
* All 15 tools, in display order. Edit this array to add/remove/reorder
|
|
28
|
+
* capabilities. The order here is the order clients see in `tools/list`.
|
|
29
|
+
*/
|
|
30
|
+
export const TOOL_REGISTRY = [
|
|
31
|
+
{
|
|
32
|
+
descriptor: collectCodeContextSchema,
|
|
33
|
+
inputZodSchema: CollectCodeContextSchema,
|
|
34
|
+
handler: (args) => {
|
|
35
|
+
const validated = validateInput(CollectCodeContextSchema, args);
|
|
36
|
+
return collectCodeContext(validated);
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
descriptor: summarizeDesignDecisionsSchema,
|
|
41
|
+
inputZodSchema: SummarizeDesignDecisionsSchema,
|
|
42
|
+
handler: async (args) => {
|
|
43
|
+
const validated = validateInput(SummarizeDesignDecisionsSchema, args);
|
|
44
|
+
return summarizeDesignDecisions(validated);
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
descriptor: generateDevDocumentSchema,
|
|
49
|
+
inputZodSchema: GenerateDevDocumentSchema,
|
|
50
|
+
handler: (args) => {
|
|
51
|
+
const validated = validateInput(GenerateDevDocumentSchema, args);
|
|
52
|
+
return generateDevDocument(validated);
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
descriptor: normalizeForPlatformSchema,
|
|
57
|
+
inputZodSchema: NormalizeForPlatformSchema,
|
|
58
|
+
handler: (args) => {
|
|
59
|
+
const validated = validateInput(NormalizeForPlatformSchema, args);
|
|
60
|
+
return normalizeForPlatform(validated);
|
|
61
|
+
},
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
descriptor: publishDocumentSchema,
|
|
65
|
+
inputZodSchema: PublishDocumentSchema,
|
|
66
|
+
handler: async (args) => {
|
|
67
|
+
const validated = validateInput(PublishDocumentSchema, args);
|
|
68
|
+
return publishDocument(validated);
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
descriptor: createSessionLogSchema,
|
|
73
|
+
inputZodSchema: CreateSessionLogSchema,
|
|
74
|
+
handler: async (args) => {
|
|
75
|
+
const validated = validateInput(CreateSessionLogSchema, args);
|
|
76
|
+
return createSessionLog(validated);
|
|
77
|
+
},
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
descriptor: analyzeCodeSchema,
|
|
81
|
+
inputZodSchema: AnalyzeCodeSchema,
|
|
82
|
+
handler: async (args) => {
|
|
83
|
+
const validated = validateInput(AnalyzeCodeSchema, args);
|
|
84
|
+
return analyzeCodeTool(validated);
|
|
85
|
+
},
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
descriptor: sessionHistorySchema,
|
|
89
|
+
inputZodSchema: SessionHistorySchema,
|
|
90
|
+
handler: async (args) => {
|
|
91
|
+
const validated = validateInput(SessionHistorySchema, args);
|
|
92
|
+
return sessionHistoryTool(validated);
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
descriptor: exportSessionSchema,
|
|
97
|
+
inputZodSchema: ExportSessionSchema,
|
|
98
|
+
handler: async (args) => {
|
|
99
|
+
const validated = validateInput(ExportSessionSchema, args);
|
|
100
|
+
return exportSessionTool(validated);
|
|
101
|
+
},
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
descriptor: projectProfileSchema,
|
|
105
|
+
inputZodSchema: ProjectProfileSchema,
|
|
106
|
+
handler: async (args) => {
|
|
107
|
+
const validated = validateInput(ProjectProfileSchema, args);
|
|
108
|
+
return projectProfileTool(validated);
|
|
109
|
+
},
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
descriptor: gitSchema,
|
|
113
|
+
inputZodSchema: GitSchema,
|
|
114
|
+
handler: async (args) => {
|
|
115
|
+
const validated = validateInput(GitSchema, args);
|
|
116
|
+
return gitTool(validated);
|
|
117
|
+
},
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
descriptor: sessionStatsSchema,
|
|
121
|
+
inputZodSchema: SessionStatsSchema,
|
|
122
|
+
handler: async (args) => {
|
|
123
|
+
const validated = validateInput(SessionStatsSchema, args);
|
|
124
|
+
return sessionStatsTool(validated);
|
|
125
|
+
},
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
descriptor: autoTagSchema,
|
|
129
|
+
inputZodSchema: AutoTagSchema,
|
|
130
|
+
handler: async (args) => {
|
|
131
|
+
const validated = validateInput(AutoTagSchema, args);
|
|
132
|
+
return autoTagTool(validated);
|
|
133
|
+
},
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
descriptor: templateSchema,
|
|
137
|
+
inputZodSchema: TemplateSchema,
|
|
138
|
+
handler: async (args) => {
|
|
139
|
+
const validated = validateInput(TemplateSchema, args);
|
|
140
|
+
return templateTool(validated);
|
|
141
|
+
},
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
descriptor: batchSchema,
|
|
145
|
+
inputZodSchema: BatchSchema,
|
|
146
|
+
handler: async (args) => {
|
|
147
|
+
const validated = validateInput(BatchSchema, args);
|
|
148
|
+
return batchTool(validated);
|
|
149
|
+
},
|
|
150
|
+
},
|
|
151
|
+
];
|
|
152
|
+
/** All tool names exposed by the server. */
|
|
153
|
+
export function getToolNames() {
|
|
154
|
+
return TOOL_REGISTRY.map((t) => t.descriptor.name);
|
|
155
|
+
}
|
|
156
|
+
/** All tool descriptors (for `tools/list`). */
|
|
157
|
+
export function getToolDescriptors() {
|
|
158
|
+
return TOOL_REGISTRY.map((t) => t.descriptor);
|
|
159
|
+
}
|
|
160
|
+
/** Look up a registered tool by its public name. */
|
|
161
|
+
export function findTool(name) {
|
|
162
|
+
return TOOL_REGISTRY.find((t) => t.descriptor.name === name);
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Wraps a tool handler invocation into the MCP `tools/call` result envelope.
|
|
166
|
+
* Used by the low-level transport adapter (kept for backward compatibility);
|
|
167
|
+
* the high-level `McpServer.tool()` registration in `mcpServerFactory.ts`
|
|
168
|
+
* uses the handler directly.
|
|
169
|
+
*/
|
|
170
|
+
export async function callToolByName(name, args) {
|
|
171
|
+
try {
|
|
172
|
+
const tool = findTool(name);
|
|
173
|
+
if (!tool) {
|
|
174
|
+
throw new ToolError(`Unknown tool: ${name}`, 'NOT_FOUND', { tool: name });
|
|
175
|
+
}
|
|
176
|
+
const result = await tool.handler(args);
|
|
177
|
+
return {
|
|
178
|
+
content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
catch (error) {
|
|
182
|
+
return createErrorResponse(error);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
//# sourceMappingURL=toolRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolRegistry.js","sourceRoot":"","sources":["../../src/core/toolRegistry.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* HTTP entry point — Streamable HTTP transport (MCP 2025-03-26).
|
|
4
|
+
*
|
|
5
|
+
* As of v2.14.0 this file is a transport-bind around the shared
|
|
6
|
+
* `createMcpServer()` factory. It exposes the *same* 15 tools, 3 resources,
|
|
7
|
+
* and 3 prompts as the stdio entry point in `src/stdio.ts` — the old SSE /
|
|
8
|
+
* 7-tool drift is gone.
|
|
9
|
+
*
|
|
10
|
+
* The previous `SSEServerTransport` (deprecated in the MCP spec) has been
|
|
11
|
+
* replaced with `StreamableHTTPServerTransport`. The SSE GET endpoint is
|
|
12
|
+
* preserved as a compatibility shim that points clients at `/mcp`.
|
|
13
|
+
*/
|
|
2
14
|
import 'dotenv/config';
|
|
3
15
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -1,168 +1,109 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* HTTP entry point — Streamable HTTP transport (MCP 2025-03-26).
|
|
4
|
+
*
|
|
5
|
+
* As of v2.14.0 this file is a transport-bind around the shared
|
|
6
|
+
* `createMcpServer()` factory. It exposes the *same* 15 tools, 3 resources,
|
|
7
|
+
* and 3 prompts as the stdio entry point in `src/stdio.ts` — the old SSE /
|
|
8
|
+
* 7-tool drift is gone.
|
|
9
|
+
*
|
|
10
|
+
* The previous `SSEServerTransport` (deprecated in the MCP spec) has been
|
|
11
|
+
* replaced with `StreamableHTTPServerTransport`. The SSE GET endpoint is
|
|
12
|
+
* preserved as a compatibility shim that points clients at `/mcp`.
|
|
13
|
+
*/
|
|
2
14
|
import express from 'express';
|
|
3
15
|
import cors from 'cors';
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
|
|
16
|
+
import { randomUUID } from 'node:crypto';
|
|
17
|
+
import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js';
|
|
7
18
|
import 'dotenv/config';
|
|
8
|
-
|
|
9
|
-
import {
|
|
10
|
-
import { validateInput, CollectCodeContextSchema, SummarizeDesignDecisionsSchema, GenerateDevDocumentSchema, NormalizeForPlatformSchema, PublishDocumentSchema, CreateSessionLogSchema, AnalyzeCodeSchema, } from './core/schemas.js';
|
|
11
|
-
// Tools
|
|
12
|
-
import { collectCodeContext, collectCodeContextSchema } from './tools/collectCodeContext.js';
|
|
13
|
-
import { summarizeDesignDecisions, summarizeDesignDecisionsSchema } from './tools/summarizeDesignDecisions.js';
|
|
14
|
-
import { generateDevDocument, generateDevDocumentSchema } from './tools/generateDevDocument.js';
|
|
15
|
-
import { normalizeForPlatform, normalizeForPlatformSchema } from './tools/normalizeForPlatform.js';
|
|
16
|
-
import { publishDocument, publishDocumentSchema } from './tools/publishDocument.js';
|
|
17
|
-
import { createSessionLog, createSessionLogSchema } from './tools/createSessionLog.js';
|
|
18
|
-
import { analyzeCodeTool, analyzeCodeSchema } from './tools/analyzeCode.js';
|
|
19
|
+
import { createMcpServer, getCapabilityCounts, SERVER_NAME, SERVER_VERSION } from './core/mcpServerFactory.js';
|
|
20
|
+
import { getToolNames } from './core/toolRegistry.js';
|
|
19
21
|
const app = express();
|
|
20
22
|
const PORT = process.env.PORT || 3000;
|
|
21
23
|
// Middleware
|
|
22
24
|
app.use(cors());
|
|
23
|
-
app.use(express.json());
|
|
24
|
-
|
|
25
|
+
app.use(express.json({ limit: '4mb' }));
|
|
26
|
+
/**
|
|
27
|
+
* Active transports keyed by session ID. We run in stateful mode so a
|
|
28
|
+
* single client conversation re-uses the same transport across requests.
|
|
29
|
+
*/
|
|
25
30
|
const transports = new Map();
|
|
26
|
-
//
|
|
27
|
-
const toolHandlers = {
|
|
28
|
-
muse_collect_code_context: (args) => {
|
|
29
|
-
const validated = validateInput(CollectCodeContextSchema, args);
|
|
30
|
-
return collectCodeContext(validated);
|
|
31
|
-
},
|
|
32
|
-
muse_summarize_design_decisions: (args) => {
|
|
33
|
-
const validated = validateInput(SummarizeDesignDecisionsSchema, args);
|
|
34
|
-
return summarizeDesignDecisions(validated);
|
|
35
|
-
},
|
|
36
|
-
muse_generate_dev_document: (args) => {
|
|
37
|
-
const validated = validateInput(GenerateDevDocumentSchema, args);
|
|
38
|
-
return generateDevDocument(validated);
|
|
39
|
-
},
|
|
40
|
-
muse_normalize_for_platform: (args) => {
|
|
41
|
-
const validated = validateInput(NormalizeForPlatformSchema, args);
|
|
42
|
-
return normalizeForPlatform(validated);
|
|
43
|
-
},
|
|
44
|
-
muse_publish_document: async (args) => {
|
|
45
|
-
const validated = validateInput(PublishDocumentSchema, args);
|
|
46
|
-
return publishDocument(validated);
|
|
47
|
-
},
|
|
48
|
-
muse_create_session_log: async (args) => {
|
|
49
|
-
const validated = validateInput(CreateSessionLogSchema, args);
|
|
50
|
-
return createSessionLog(validated);
|
|
51
|
-
},
|
|
52
|
-
muse_analyze_code: (args) => {
|
|
53
|
-
const validated = validateInput(AnalyzeCodeSchema, args);
|
|
54
|
-
return analyzeCodeTool(validated);
|
|
55
|
-
},
|
|
56
|
-
};
|
|
57
|
-
function isValidToolName(name) {
|
|
58
|
-
return name in toolHandlers;
|
|
59
|
-
}
|
|
60
|
-
// Create MCP Server instance
|
|
61
|
-
function createMCPServer() {
|
|
62
|
-
const server = new Server({
|
|
63
|
-
name: 'vibe-coding-mcp',
|
|
64
|
-
version: '2.0.0',
|
|
65
|
-
}, {
|
|
66
|
-
capabilities: {
|
|
67
|
-
tools: {},
|
|
68
|
-
},
|
|
69
|
-
});
|
|
70
|
-
// List available tools
|
|
71
|
-
server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
72
|
-
return {
|
|
73
|
-
tools: [
|
|
74
|
-
collectCodeContextSchema,
|
|
75
|
-
summarizeDesignDecisionsSchema,
|
|
76
|
-
generateDevDocumentSchema,
|
|
77
|
-
normalizeForPlatformSchema,
|
|
78
|
-
publishDocumentSchema,
|
|
79
|
-
createSessionLogSchema,
|
|
80
|
-
analyzeCodeSchema,
|
|
81
|
-
],
|
|
82
|
-
};
|
|
83
|
-
});
|
|
84
|
-
// Handle tool calls
|
|
85
|
-
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
86
|
-
const { name, arguments: args } = request.params;
|
|
87
|
-
try {
|
|
88
|
-
if (!isValidToolName(name)) {
|
|
89
|
-
throw new ToolError(`Unknown tool: ${name}`, 'NOT_FOUND', { tool: name });
|
|
90
|
-
}
|
|
91
|
-
const handler = toolHandlers[name];
|
|
92
|
-
const result = await handler(args);
|
|
93
|
-
return {
|
|
94
|
-
content: [
|
|
95
|
-
{
|
|
96
|
-
type: 'text',
|
|
97
|
-
text: JSON.stringify(result, null, 2),
|
|
98
|
-
},
|
|
99
|
-
],
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
catch (error) {
|
|
103
|
-
return createErrorResponse(error);
|
|
104
|
-
}
|
|
105
|
-
});
|
|
106
|
-
return server;
|
|
107
|
-
}
|
|
108
|
-
// Health check endpoint
|
|
31
|
+
// Health / discovery endpoint.
|
|
109
32
|
app.get('/', (_req, res) => {
|
|
33
|
+
const counts = getCapabilityCounts();
|
|
110
34
|
res.json({
|
|
111
|
-
name:
|
|
112
|
-
version:
|
|
113
|
-
description: 'MCP server for vibe coding documentation
|
|
35
|
+
name: SERVER_NAME,
|
|
36
|
+
version: SERVER_VERSION,
|
|
37
|
+
description: 'MCP server for vibe coding documentation — unified tool registry, Streamable HTTP transport',
|
|
114
38
|
status: 'running',
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
39
|
+
transport: 'streamable-http',
|
|
40
|
+
endpoints: {
|
|
41
|
+
mcp: '/mcp',
|
|
42
|
+
health: '/health',
|
|
43
|
+
},
|
|
44
|
+
capabilities: {
|
|
45
|
+
tools: counts.tools,
|
|
46
|
+
resources: counts.resources,
|
|
47
|
+
prompts: counts.prompts,
|
|
48
|
+
},
|
|
49
|
+
toolNames: getToolNames(),
|
|
125
50
|
});
|
|
126
51
|
});
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
console.log('New SSE connection established');
|
|
130
|
-
const transport = new SSEServerTransport('/message', res);
|
|
131
|
-
const sessionId = crypto.randomUUID();
|
|
132
|
-
transports.set(sessionId, transport);
|
|
133
|
-
const server = createMCPServer();
|
|
134
|
-
res.on('close', () => {
|
|
135
|
-
console.log('SSE connection closed');
|
|
136
|
-
transports.delete(sessionId);
|
|
137
|
-
});
|
|
138
|
-
await server.connect(transport);
|
|
52
|
+
app.get('/health', (_req, res) => {
|
|
53
|
+
res.json({ status: 'ok', version: SERVER_VERSION, ...getCapabilityCounts() });
|
|
139
54
|
});
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
else {
|
|
150
|
-
res.status(400).json({ error: 'No active session' });
|
|
151
|
-
}
|
|
152
|
-
return;
|
|
153
|
-
}
|
|
154
|
-
const transport = transports.get(sessionId);
|
|
155
|
-
if (transport) {
|
|
156
|
-
await transport.handlePostMessage(req, res);
|
|
55
|
+
/**
|
|
56
|
+
* Main MCP endpoint. Accepts POST (JSON-RPC requests), GET (SSE notification
|
|
57
|
+
* stream), and DELETE (session termination) per the Streamable HTTP spec.
|
|
58
|
+
*/
|
|
59
|
+
async function handleMcpRequest(req, res) {
|
|
60
|
+
const sessionId = req.headers['mcp-session-id'] ?? undefined;
|
|
61
|
+
let transport;
|
|
62
|
+
if (sessionId) {
|
|
63
|
+
transport = transports.get(sessionId);
|
|
157
64
|
}
|
|
158
|
-
|
|
159
|
-
|
|
65
|
+
if (!transport) {
|
|
66
|
+
// Initialize a new transport + server for the first request of a session.
|
|
67
|
+
transport = new StreamableHTTPServerTransport({
|
|
68
|
+
sessionIdGenerator: () => randomUUID(),
|
|
69
|
+
onsessioninitialized: (sid) => {
|
|
70
|
+
transports.set(sid, transport);
|
|
71
|
+
},
|
|
72
|
+
});
|
|
73
|
+
transport.onclose = () => {
|
|
74
|
+
const sid = transport.sessionId;
|
|
75
|
+
if (sid) {
|
|
76
|
+
transports.delete(sid);
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
const server = createMcpServer();
|
|
80
|
+
await server.connect(transport);
|
|
160
81
|
}
|
|
82
|
+
await transport.handleRequest(req, res, req.body);
|
|
83
|
+
}
|
|
84
|
+
app.post('/mcp', (req, res) => {
|
|
85
|
+
void handleMcpRequest(req, res);
|
|
86
|
+
});
|
|
87
|
+
app.get('/mcp', (req, res) => {
|
|
88
|
+
void handleMcpRequest(req, res);
|
|
89
|
+
});
|
|
90
|
+
app.delete('/mcp', (req, res) => {
|
|
91
|
+
void handleMcpRequest(req, res);
|
|
92
|
+
});
|
|
93
|
+
// Back-compat shim: old clients used /sse. Tell them where /mcp lives.
|
|
94
|
+
app.get('/sse', (_req, res) => {
|
|
95
|
+
res
|
|
96
|
+
.status(410)
|
|
97
|
+
.json({
|
|
98
|
+
error: 'sse_transport_removed',
|
|
99
|
+
message: 'The legacy SSE transport was removed in v2.14.0. Use the Streamable HTTP transport at POST /mcp.',
|
|
100
|
+
mcpEndpoint: '/mcp',
|
|
101
|
+
});
|
|
161
102
|
});
|
|
162
|
-
// Start server
|
|
163
103
|
app.listen(PORT, () => {
|
|
164
|
-
|
|
165
|
-
console.log(
|
|
166
|
-
console.log(`
|
|
104
|
+
const counts = getCapabilityCounts();
|
|
105
|
+
console.log(`${SERVER_NAME} v${SERVER_VERSION} running on http://localhost:${PORT}`);
|
|
106
|
+
console.log(`Streamable HTTP endpoint: http://localhost:${PORT}/mcp`);
|
|
107
|
+
console.log(`Capabilities: ${counts.tools} tools, ${counts.resources} resources, ${counts.prompts} prompts`);
|
|
167
108
|
});
|
|
168
109
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/stdio.d.ts
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/**
|
|
3
|
-
* Claude Desktop
|
|
3
|
+
* stdio entry point — used by Claude Desktop / Claude Code via the
|
|
4
|
+
* `vibe-coding-mcp` binary.
|
|
5
|
+
*
|
|
6
|
+
* As of v2.14.0 this file is a thin transport-bind around the shared
|
|
7
|
+
* `createMcpServer()` factory; the tool/resource/prompt registry lives in
|
|
8
|
+
* `src/core/{toolRegistry,resources,prompts}.ts` and is reused verbatim by
|
|
9
|
+
* the HTTP entry point in `src/index.ts`.
|
|
4
10
|
*/
|
|
5
11
|
export {};
|
|
6
12
|
//# sourceMappingURL=stdio.d.ts.map
|