@razorpay/blade-mcp
Version:
Model Context Protocol server for Blade
42 lines • 3.21 kB
JavaScript
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
import * as Sentry from '@sentry/node';
import { createNewBladeProjectToolName, createNewBladeProjectToolDescription, createNewBladeProjectToolSchema, createNewBladeProjectToolCallback, } from './tools/createNewBladeProject.js';
import { createBladeCursorRulesToolName, createBladeCursorRulesToolDescription, createBladeCursorRulesToolSchema, createBladeCursorRulesToolCallback, } from './tools/createBladeCursorRules.js';
import { getBladeComponentDocsToolName, getBladeComponentDocsToolDescription, getBladeComponentDocsToolSchema, getBladeComponentDocsToolCallback, } from './tools/getBladeComponentDocs.js';
import { hiBladeToolName, hiBladeToolDescription, hiBladeToolSchema, hiBladeToolCallback, } from './tools/hiBlade.js';
import { getPackageJSONVersion } from './utils/generalUtils.js';
import { getBladePatternDocsToolName, getBladePatternDocsToolDescription, getBladePatternDocsToolSchema, getBladePatternDocsToolCallback, } from './tools/getBladePatternDocs.js';
import { getBladeGeneralDocsToolName, getBladeGeneralDocsToolDescription, getBladeGeneralDocsToolSchema, getBladeGeneralDocsToolCallback, } from './tools/getBladeGeneralDocs.js';
import { getFigmaToCodeToolName, getFigmaToCodeToolDescription, getFigmaToCodeToolSchema, getFigmaToCodeToolCallback, } from './tools/getFigmaToCode.js';
Sentry.init({
dsn: 'https://303ee336f536584ca853aed16e1a2a60@o515678.ingest.us.sentry.io/4509332105330688',
environment: 'production',
release: getPackageJSONVersion(),
sendDefaultPii: false,
});
try {
const server = new McpServer({
name: 'Blade MCP',
version: getPackageJSONVersion(),
});
server.tool(hiBladeToolName, hiBladeToolDescription, hiBladeToolSchema, hiBladeToolCallback);
server.tool(createNewBladeProjectToolName, createNewBladeProjectToolDescription, createNewBladeProjectToolSchema, createNewBladeProjectToolCallback);
server.tool(createBladeCursorRulesToolName, createBladeCursorRulesToolDescription, createBladeCursorRulesToolSchema, createBladeCursorRulesToolCallback);
server.tool(getBladeComponentDocsToolName, getBladeComponentDocsToolDescription, getBladeComponentDocsToolSchema, getBladeComponentDocsToolCallback);
server.tool(getBladePatternDocsToolName, getBladePatternDocsToolDescription, getBladePatternDocsToolSchema, getBladePatternDocsToolCallback);
server.tool(getBladeGeneralDocsToolName, getBladeGeneralDocsToolDescription, getBladeGeneralDocsToolSchema, getBladeGeneralDocsToolCallback);
server.tool(getFigmaToCodeToolName, getFigmaToCodeToolDescription, getFigmaToCodeToolSchema, getFigmaToCodeToolCallback);
// Start receiving messages on stdin and sending messages on stdout
const transport = new StdioServerTransport();
// Use Promise handling for async operations
await server.connect(transport);
console.log('Blade MCP connected successfully.');
}
catch (error) {
Sentry.captureException(error);
console.error('Blade MCP Error', error);
process.exit(1);
}
//# sourceMappingURL=server.js.map