codescan-mcp-server

Presh-AR/codescan-mcp-server

3.1

If you are the rightful owner of codescan-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

A Model Context Protocol (MCP) server implementation for Codescan, enabling AI models to interact with Codescan's API through a standardized interface.

Tools
3
Resources
0
Prompts
0

Codescan MCP Server

A Model Context Protocol (MCP) server implementation for Codescan, enabling AI models to interact with Codescan's API through a standardized interface.

Features

  • List Codescan projects
  • Get project metrics
  • Query project issues with advanced filtering
  • Environment-based configuration
  • Docker support
  • TypeScript implementation

Prerequisites

  • Node.js 20 or later
  • pnpm 10.7.1 or later
  • Docker (optional, for containerized deployment)

Installation

Local Development

  1. Clone the repository:
git clone <repository-url>
cd codescan-mcp-server
  1. Install dependencies:
pnpm install
  1. Build the project:
pnpm run build
  1. Start the server:
pnpm start

Docker Deployment

  1. Build the Docker image:
docker build -t codescan-mcp-server .
  1. Run the container:
docker run -d \
  -e CODESCAN_URL=https://app.codescan.io \
  -e CODESCAN_TOKEN=your_token_here \
  -e CODESCAN_ORGANIZATION=your_org \
  -e CODESCAN_PROJECT=your_project \
  -e CODESCAN_COMPONENT=your_component \
  -e NODE_OPTIONS="--experimental-specifier-resolution=node" \
  -p 3000:3000 \
  codescan-mcp-server

Environment Variables

VariableDescriptionRequiredDefault
CODESCAN_URLURL of your Codescan instanceYeshttps://app.codescan.io
CODESCAN_TOKENAuthentication token for Codescan APIYes-
CODESCAN_ORGANIZATIONOrganization key for Codescan CloudNo-
CODESCAN_PROJECTDefault project keyNo-
CODESCAN_COMPONENTDefault component keyNo-
NODE_OPTIONSNode.js runtime optionsNo--experimental-specifier-resolution=node

MCP Client Configuration

Here's an example MCP client configuration for interacting with the Codescan MCP server:

{
  "name": "codescan-mcp-client",
  "version": "1.0.0",
  "description": "MCP client for Codescan integration",
  "servers": [
    {
      "name": "codescan-mcp-server",
      "url": "http://localhost:3000",
      "tools": ["projects", "metrics", "issues"]
    }
  ],
  "env": {
    "CODESCAN_URL": "https://app.codescan.io",
    "CODESCAN_TOKEN": "your_token_here",
    "CODESCAN_ORGANIZATION": "your_org",
    "CODESCAN_PROJECT": "your_project",
    "CODESCAN_COMPONENT": "your_component"
  }
}

Tool Usage Examples

  1. List Projects:
{
  "tool": "projects",
  "params": {
    "page": "1",
    "page_size": "10"
  }
}
  1. Get Metrics:
{
  "tool": "metrics",
  "params": {
    "component": "your_component",
    "page": "1",
    "page_size": "10"
  }
}
  1. Get Issues:
{
  "tool": "issues",
  "params": {
    "component": "your_component",
    "severity": "MAJOR",
    "page": "1",
    "page_size": "10",
    "statuses": ["OPEN", "CONFIRMED"],
    "types": ["BUG", "VULNERABILITY"]
  }
}

Development

Available Scripts

  • pnpm run build: Build the TypeScript code
  • pnpm start: Start the MCP server
  • pnpm test: Run tests
  • pnpm lint: Run linter
  • pnpm format: Format code

Project Structure

codescan-mcp-server/
ā”œā”€ā”€ src/
│   ā”œā”€ā”€ index.ts        # Main server entry point
│   └── codescan.ts     # Codescan API client
ā”œā”€ā”€ dist/               # Compiled JavaScript
ā”œā”€ā”€ Dockerfile          # Docker configuration
ā”œā”€ā”€ package.json        # Project dependencies
ā”œā”€ā”€ tsconfig.json       # TypeScript configuration
└── mcp.json           # MCP server configuration

License

[License Type] - See LICENSE file for details