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
- Clone the repository:
git clone <repository-url>
cd codescan-mcp-server
- Install dependencies:
pnpm install
- Build the project:
pnpm run build
- Start the server:
pnpm start
Docker Deployment
- Build the Docker image:
docker build -t codescan-mcp-server .
- 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
Variable | Description | Required | Default |
---|---|---|---|
CODESCAN_URL | URL of your Codescan instance | Yes | https://app.codescan.io |
CODESCAN_TOKEN | Authentication token for Codescan API | Yes | - |
CODESCAN_ORGANIZATION | Organization key for Codescan Cloud | No | - |
CODESCAN_PROJECT | Default project key | No | - |
CODESCAN_COMPONENT | Default component key | No | - |
NODE_OPTIONS | Node.js runtime options | No | --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
- List Projects:
{
"tool": "projects",
"params": {
"page": "1",
"page_size": "10"
}
}
- Get Metrics:
{
"tool": "metrics",
"params": {
"component": "your_component",
"page": "1",
"page_size": "10"
}
}
- 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 codepnpm start
: Start the MCP serverpnpm test
: Run testspnpm lint
: Run linterpnpm 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