Skip to main content

Integrates CodeLogic's powerful codebase knowledge graphs with a Model Context Protocol (MCP) server

Project description

codelogic-mcp-server

An MCP Server to utilize Codelogic's rich software dependency data in your AI programming assistant.

Components

Tools

The server implements two tools:

  • codelogic-method-impact: Pulls an impact assessment from the CodeLogic server's APIs for your code.
    • Takes the given "method" that you're working on and its associated "class".
  • codelogic-database-impact: Analyzes impacts between code and database entities.
    • Takes the database entity type (column, table, or view) and its name.

Install

Pre Requisites

The MCP server relies upon Astral UV to run, please install

Visual Studio Code Configuration

To configure this MCP server in VS Code:

  1. First, ensure you have GitHub Copilot agent mode enabled in VS Code.

  2. Create a .vscode/mcp.json file in your workspace with the following configuration:

{
  "servers": {
    "codelogic-mcp-server": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "codelogic-mcp-server@latest"
      ],
      "env": {
        "CODELOGIC_SERVER_HOST": "<url to the server e.g. https://myco.app.codelogic.com>",
        "CODELOGIC_USERNAME": "<my username>",
        "CODELOGIC_PASSWORD": "<my password>",
        "CODELOGIC_MV_NAME": "<my materialized view>",
        "CODELOGIC_DEBUG_MODE": "true"
      }
    }
  }
}
  1. Alternatively, you can run the MCP: Add Server command from the Command Palette and provide the server information.

  2. To manage your MCP servers, use the MCP: List Servers command from the Command Palette.

  3. Once configured, the server's tools will be available to Copilot agent mode. You can toggle specific tools on/off as needed by clicking the Tools button in the Chat view when in agent mode.

  4. To use the Codelogic tools in agent mode, you can specifically ask about code impacts or database relationships, and the agent will utilize the appropriate tools.

Claude Desktop Configuration

Configure Claude Desktop by editing the configuration file:

  • On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
  • On Windows: %APPDATA%/Claude/claude_desktop_config.json
  • On Linux: ~/.config/Claude/claude_desktop_config.json

Add the following to your configuration file:

"mcpServers": {
  "codelogic-mcp-server": {
    "command": "uvx",
    "args": [
      "codelogic-mcp-server@latest"
    ],
    "env": {
      "CODELOGIC_SERVER_HOST": "<url to the server e.g. https://myco.app.codelogic.com>",
      "CODELOGIC_USERNAME": "<my username>",
      "CODELOGIC_PASSWORD": "<my password>",
      "CODELOGIC_MV_NAME": "<my materialized view>"
    }
  }
}

After adding the configuration, restart Claude Desktop to apply the changes.

Windsurf IDE Configuration

To run this MCP server with Windsurf IDE:

Configure Windsurf IDE:

To configure Windsurf IDE, you need to create or modify the ~/.codeium/windsurf/mcp_config.json configuration file.

Add the following configuration to your file:

"mcpServers": {
  "codelogic-mcp-server": {
    "command": "uvx",
    "args": [
      "codelogic-mcp-server@latest"
    ],
    "env": {
      "CODELOGIC_SERVER_HOST": "<url to the server e.g. https://myco.app.codelogic.com>",
      "CODELOGIC_USERNAME": "<my username>",
      "CODELOGIC_PASSWORD": "<my password>",
      "CODELOGIC_MV_NAME": "<my materialized view>"
    }
  }
}

After adding the configuration, restart Windsurf IDE or refresh the tools to apply the changes.

Cursor Configuration

To configure the CodeLogic MCP server in Cursor:

  1. Configure the MCP server by creating a .cursor/mcp.json file:
{
  "servers": {
    "codelogic-mcp-server": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "codelogic-mcp-server@latest"
      ],
      "env": {
        "CODELOGIC_SERVER_HOST": "<url to the server e.g. https://myco.app.codelogic.com>",
        "CODELOGIC_USERNAME": "<my username>",
        "CODELOGIC_PASSWORD": "<my password>",
        "CODELOGIC_MV_NAME": "<my materialized view>",
        "CODELOGIC_DEBUG_MODE": "true"
      }
    }
  }
}
  1. Restart Cursor to apply the changes.

The CodeLogic MCP server tools will now be available in your Cursor workspace.

AI Assistant Instructions

To help the AI assistant use the CodeLogic tools effectively, you can add the following instructions to your client's configuration:

VS Code (GitHub Copilot) Instructions

Create a .vscode/copilot-instructions.md file with the following content:

# CodeLogic MCP Server Instructions

When modifying existing code methods:
- Use codelogic-method-impact to analyze code changes
- Use codelogic-database-impact for database modifications
- Highlight impact results for the modified methods

When modifying SQL code or database entities:
- Always use codelogic-database-impact to analyze potential impacts
- Highlight impact results for the modified database entities

To use the CodeLogic tools effectively:
- For code impacts: Ask about specific methods or functions
- For database relationships: Ask about tables, views, or columns
- Review the impact results before making changes
- Consider both direct and indirect impacts

Claude Desktop Instructions

Create a file ~/.claude/instructions.md with the following content:

# CodeLogic MCP Server Instructions

When modifying existing code methods:
- Use codelogic-method-impact to analyze code changes
- Use codelogic-database-impact for database modifications
- Highlight impact results for the modified methods

When modifying SQL code or database entities:
- Always use codelogic-database-impact to analyze potential impacts
- Highlight impact results for the modified database entities

To use the CodeLogic tools effectively:
- For code impacts: Ask about specific methods or functions
- For database relationships: Ask about tables, views, or columns
- Review the impact results before making changes
- Consider both direct and indirect impacts

Windsurf IDE Instructions

Create or modify the ~/.codeium/windsurf/memories/global_rules.md markdown file with the following content:

When modifying existing code methods:
- Use codelogic-method-impact to analyze code changes
- Use codelogic-database-impact for database modifications
- Highlight impact results for the modified methods

When modifying SQL code or database entities:
- Always use codelogic-database-impact to analyze potential impacts
- Highlight impact results for the modified database entities

To use the CodeLogic tools effectively:
- For code impacts: Ask about specific methods or functions
- For database relationships: Ask about tables, views, or columns
- Review the impact results before making changes
- Consider both direct and indirect impacts

Cursor Instructions

Create a .cursor/rules/codelogic-rules.md file with the following content:

# CodeLogic MCP Server Rules

## AI Assistant Behavior
- When modifying existing code methods:
  - Use codelogic-method-impact to analyze code changes
  - Use codelogic-database-impact for database modifications
  - Highlight impact results for the modified methods
- When modifying SQL code or database entities:
  - Always use codelogic-database-impact to analyze potential impacts
  - Highlight impact results for the modified database entities
- To use the CodeLogic tools effectively:
  - For code impacts: Ask about specific methods or functions
  - For database relationships: Ask about tables, views, or columns
  - Review the impact results before making changes
  - Consider both direct and indirect impacts

Environment Variables

The following environment variables can be configured to customize the behavior of the server:

  • CODELOGIC_SERVER_HOST: The URL of the CodeLogic server.
  • CODELOGIC_USERNAME: Your CodeLogic username.
  • CODELOGIC_PASSWORD: Your CodeLogic password.
  • CODELOGIC_MV_NAME: The name of the materialized view to use.
  • CODELOGIC_DEBUG_MODE: Set to true to enable debug mode. When enabled, additional debug files such as timing_log.txt and impact_data*.json will be generated. Defaults to false.

Example Configuration

"env": {
  "CODELOGIC_SERVER_HOST": "<url to the server e.g. https://myco.app.codelogic.com>",
  "CODELOGIC_USERNAME": "<my username>",
  "CODELOGIC_PASSWORD": "<my password>",
  "CODELOGIC_MV_NAME": "<my materialized view>",
  "CODELOGIC_DEBUG_MODE": "true"
}

Pinning the version

instead of using the latest version of the server, you can pin to a specific version by changing the args field to match the version in pypi e.g.

    "args": [
      "codelogic-mcp-server@0.2.2"
    ],

Version Compatibility

This MCP server has the following version compatibility requirements:

  • Version 0.3.1 and below: Compatible with all CodeLogic API versions
  • Version 0.4.0 and above: Requires CodeLogic API version 25.10.0 or greater

If you're upgrading, make sure your CodeLogic server meets the minimum API version requirement.

Testing

Running Unit Tests

The project uses unittest for testing. You can run unit tests without any external dependencies:

python -m unittest discover -s test -p "unit_*.py"

Unit tests use mock data and don't require a connection to a CodeLogic server.

Integration Tests (Optional)

If you want to run integration tests that connect to a real CodeLogic server:

  1. Copy test/.env.test.example to test/.env.test and populate with your CodeLogic server details
  2. Run the integration tests:
python -m unittest discover -s test -p "integration_*.py"

Note: Integration tests require access to a CodeLogic server instance.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

codelogic_mcp_server-0.6.0.tar.gz (122.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

codelogic_mcp_server-0.6.0-py3-none-any.whl (27.7 kB view details)

Uploaded Python 3

File details

Details for the file codelogic_mcp_server-0.6.0.tar.gz.

File metadata

  • Download URL: codelogic_mcp_server-0.6.0.tar.gz
  • Upload date:
  • Size: 122.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.14

File hashes

Hashes for codelogic_mcp_server-0.6.0.tar.gz
Algorithm Hash digest
SHA256 3e6e2d91a134b35c6b3db7c760a593622390d105c5a8fcf20a4e89a11e30f2be
MD5 bd9cdb53d732880848c0a9d57e309ae1
BLAKE2b-256 0bd898e8076e106f73ae9d49f5b50b934a354d334e1602a75a2833446e1fbd26

See more details on using hashes here.

File details

Details for the file codelogic_mcp_server-0.6.0-py3-none-any.whl.

File metadata

File hashes

Hashes for codelogic_mcp_server-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7917171f5b0c6ecfbf4c3b245a23daa1936696a6aed5173449c2285089031fc1
MD5 148e7260b32803ad616c4cb3e3af7960
BLAKE2b-256 14d34abe7c35e95f5592548a8070dbebd6812c67e377e9cb5357db0caba54858

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page