11#!/usr/bin/env node
2- import { Server } from '@modelcontextprotocol/sdk/server/index.js' ;
32import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js' ;
43import {
54 CallToolRequestSchema ,
@@ -10,6 +9,7 @@ import { OpenAPI } from './src/api/client/index.js';
109import * as Tools from './src/tools/index.js' ;
1110import type { ToolKeys } from './src/schemas.js' ;
1211import * as Handlers from './src/handlers/index.js' ;
12+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js' ;
1313
1414// Check for API key
1515const CODACY_ACCOUNT_TOKEN = process . env . CODACY_ACCOUNT_TOKEN ;
@@ -20,7 +20,7 @@ OpenAPI.HEADERS = {
2020 'X-Codacy-Origin' : 'mcp-server' ,
2121} ;
2222
23- const server = new Server (
23+ const mcpServer = new McpServer (
2424 {
2525 name : 'codacy-mcp-server' ,
2626 version : '0.1.0' ,
@@ -29,33 +29,6 @@ const server = new Server(
2929 capabilities : {
3030 tools : { } ,
3131 resources : { } ,
32- triggers : {
33- patterns : [
34- 'codacy' ,
35- 'code quality' ,
36- 'code analysis' ,
37- 'security vulnerabilities' ,
38- 'repository issues' ,
39- 'pull request analysis' ,
40- 'code coverage' ,
41- 'issues' ,
42- 'security' ,
43- 'srm' ,
44- 'analysis' ,
45- 'tool' ,
46- 'pattern' ,
47- 'pull request' ,
48- 'repository' ,
49- 'file' ,
50- 'coverage' ,
51- 'git' ,
52- 'diff' ,
53- 'branch' ,
54- 'commit' ,
55- 'severity' ,
56- 'organization' ,
57- ] ,
58- } ,
5932 } ,
6033 }
6134) ;
@@ -170,14 +143,14 @@ const toolDefinitions: { [key in ToolKeys]: ToolDefinition } = {
170143} ;
171144
172145// Register tools
173- server . setRequestHandler ( ListToolsRequestSchema , async ( ) => ( {
146+ mcpServer . server . setRequestHandler ( ListToolsRequestSchema , async ( ) => ( {
174147 tools : Object . values ( toolDefinitions )
175148 . filter ( ( { noAuth } ) => CODACY_ACCOUNT_TOKEN || noAuth )
176149 . map ( ( { tool } ) => tool ) ,
177150} ) ) ;
178151
179152// Register request handlers
180- server . setRequestHandler ( CallToolRequestSchema , async request => {
153+ mcpServer . server . setRequestHandler ( CallToolRequestSchema , async request => {
181154 try {
182155 if ( ! request . params . arguments ) {
183156 throw new Error ( 'Arguments are required' ) ;
@@ -206,7 +179,7 @@ server.setRequestHandler(CallToolRequestSchema, async request => {
206179
207180async function runServer ( ) {
208181 const transport = new StdioServerTransport ( ) ;
209- await server . connect ( transport ) ;
182+ await mcpServer . connect ( transport ) ;
210183 console . error ( 'Codacy MCP Server running on stdio' ) ;
211184}
212185
0 commit comments