Sponsored by Deepsite.site

codelogic-mcp-server

Created By
CodeLogicIncEngineering9 months ago
An MCP Server to utilize Codelogic's rich software dependency data in your AI programming assistant.
Content

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

MacOS Workaround for uvx

There is a known issue with uvx on MacOS where the CodeLogic MCP server may fail to launch in certain IDEs (such as Cursor), resulting in errors like: See issue #11

Failed to connect client closed

This appears to be a problem with Astral uvx running on MacOS. The following can be used as a workaround:

  1. Clone this project locally.
  2. Configure your mcp.json to use uv instead of uvx. For example:
{
  "mcpServers": {
    "codelogic-mcp-server": {
      "type": "stdio",
      "command": "<PATH_TO_UV>/uv",
      "args": [
        "--directory",
        "<PATH_TO_THIS_REPO>/codelogic-mcp-server-main",
        "run",
        "codelogic-mcp-server"
      ],
      "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 workspace>",
        "CODELOGIC_DEBUG_MODE": "true"
      }
    }
  }
}
  1. Restart Cursor.
  2. Ensure the Cursor Global Rule for CodeLogic is in place.
  3. Open the MCP tab in Cursor and refresh the codelogic-mcp-server.
  4. Ask Cursor to make a code change in an existing class. The MCP server should now run the impact analysis successfully.

Configuration for Different IDEs

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_WORKSPACE_NAME": "<my workspace>",
        "CODELOGIC_DEBUG_MODE": "true"
      }
    }
  }
}

Note: On some systems, you may need to use the full path to the uvx executable instead of just "uvx". For example: /home/user/.local/bin/uvx on Linux/Mac or C:\Users\username\AppData\Local\astral\uvx.exe on Windows.

  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_WORKSPACE_NAME": "<my workspace>"
    }
  }
}

Note: On some systems, you may need to use the full path to the uvx executable instead of just "uvx". For example: /home/user/.local/bin/uvx on Linux/Mac or C:\Users\username\AppData\Local\astral\uvx.exe on Windows.

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_WORKSPACE_NAME": "<my workspace>"
    }
  }
}

Note: On some systems, you may need to use the full path to the uvx executable instead of just "uvx". For example: /home/user/.local/bin/uvx on Linux/Mac or C:\Users\username\AppData\Local\astral\uvx.exe on Windows.

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:
{
  "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_WORKSPACE_NAME": "<my workspace>",
        "CODELOGIC_DEBUG_MODE": "true"
      }
    }
  }
}

Note: On some systems, you may need to use the full path to the uvx executable instead of just "uvx". For example: /home/user/.local/bin/uvx on Linux/Mac or C:\Users\username\AppData\Local\astral\uvx.exe on Windows.

  1. Restart Cursor to apply the changes.

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

AI Assistant Instructions/Rules

To help the AI assistant use the CodeLogic tools effectively, you can add the following instructions/rules to your client's configuration. We recommend customizing these instructions to align with your team's specific coding standards, best practices, and workflow requirements:

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 Rules

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 Global Rule

To configure CodeLogic rules in Cursor:

  1. Open Cursor Settings
  2. Navigate to the "Rules" section
  3. Add the following content to "User Rules":
# CodeLogic MCP Server Rules
## Codebase
- The CodeLogic MCP Server is for java, javascript, typescript, and C# dotnet codebases
- don't run the tools on python or other non supported codebases
## 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_WORKSPACE_NAME: The name of the workspace 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_WORKSPACE_NAME": "<my workspace>",
  "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.

Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
ChatWiseThe second fastest AI chatbot™
TimeA Model Context Protocol server that provides time and timezone conversion capabilities. This server enables LLMs to get current time information and perform timezone conversions using IANA timezone names, with automatic system timezone detection.
CursorThe AI Code Editor
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题; Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
Playwright McpPlaywright MCP server
WindsurfThe new purpose-built IDE to harness magic
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.
DeepChatYour AI Partner on Desktop
Amap Maps高德地图官方 MCP Server
Serper MCP ServerA Serper MCP Server
Tavily Mcp
Context7Context7 MCP Server -- Up-to-date code documentation for LLMs and AI code editors
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。