Codelogic-MCP-Server
Ein MCP-Server zur Nutzung der umfangreichen Softwareabhängigkeitsdaten von Codelogic in Ihrem KI-Programmierassistenten.
Komponenten
Werkzeuge
Der Server implementiert zwei Tools:
codelogic-method-impact : Ruft eine Auswirkungsbewertung aus den APIs des CodeLogic-Servers für Ihren Code ab.
Nimmt die gegebene „Methode“, an der Sie arbeiten, und die zugehörige „Klasse“.
codelogic-database-impact : Analysiert Auswirkungen zwischen Code und Datenbankeinheiten.
Übernimmt den Datenbankentitätstyp (Spalte, Tabelle oder Ansicht) und seinen Namen.
Installieren
Voraussetzungen
Der MCP-Server ist auf Astral UV angewiesen. Bitte installieren Sie
MacOS-Workaround für uvx
Es gibt ein bekanntes Problem mit uvx unter MacOS , bei dem der CodeLogic MCP-Server in bestimmten IDEs (wie Cursor) möglicherweise nicht gestartet werden kann, was zu Fehlern wie diesen führt: Siehe Problem Nr. 11
Failed to connect client closedDies scheint ein Problem mit Astral uvx unter macOS zu sein. Folgendes kann als Workaround verwendet werden:
Klonen Sie dieses Projekt lokal.
Konfigurieren Sie Ihre
mcp.jsonso, dassuvanstelle vonuvxverwendet wird. Beispiel:
{
"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"
}
}
}
}Cursor neu starten.
Stellen Sie sicher, dass die globale Cursorregel für CodeLogic vorhanden ist.
Öffnen Sie die Registerkarte MCP im Cursor und aktualisieren Sie den
codelogic-mcp-server.Bitten Sie Cursor, eine Codeänderung in einer vorhandenen Klasse vorzunehmen. Der MCP-Server sollte nun die Auswirkungsanalyse erfolgreich ausführen.
Related MCP server: DependencyMCP Server
Konfiguration für verschiedene IDEs
Visual Studio Code-Konfiguration
So konfigurieren Sie diesen MCP-Server in VS Code:
Stellen Sie zunächst sicher, dass der GitHub Copilot-Agentmodus in VS Code aktiviert ist.
Erstellen Sie in Ihrem Arbeitsbereich eine
.vscode/mcp.json-Datei mit der folgenden Konfiguration:
{
"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"
}
}
}
}Hinweis: Auf manchen Systemen müssen Sie möglicherweise den vollständigen Pfad zur uvx-Programmdatei anstelle von „uvx“ verwenden. Beispiel:
/home/user/.local/bin/uvxunter Linux/Mac oderC:\Users\username\AppData\Local\astral\uvx.exeunter Windows.
Alternativ können Sie den Befehl
MCP: Add Serveraus der Befehlspalette ausführen und die Serverinformationen angeben.Verwenden Sie zum Verwalten Ihrer MCP-Server den Befehl
MCP: List Serversaus der Befehlspalette.Nach der Konfiguration stehen die Server-Tools im Copilot-Agentenmodus zur Verfügung. Sie können bestimmte Tools nach Bedarf ein- und ausschalten, indem Sie im Agentenmodus in der Chat-Ansicht auf die Schaltfläche „Tools“ klicken.
Um die Codelogic-Tools im Agentenmodus zu verwenden, können Sie gezielt nach Codeauswirkungen oder Datenbankbeziehungen fragen, und der Agent verwendet die entsprechenden Tools.
Claude Desktop-Konfiguration
Konfigurieren Sie Claude Desktop, indem Sie die Konfigurationsdatei bearbeiten:
Unter MacOS:
~/Library/Application\ Support/Claude/claude_desktop_config.jsonUnter Windows:
%APPDATA%/Claude/claude_desktop_config.jsonUnter Linux:
~/.config/Claude/claude_desktop_config.json
Fügen Sie Ihrer Konfigurationsdatei Folgendes hinzu:
"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>"
}
}
}Hinweis: Auf manchen Systemen müssen Sie möglicherweise den vollständigen Pfad zur uvx-Programmdatei anstelle von „uvx“ verwenden. Beispiel:
/home/user/.local/bin/uvxunter Linux/Mac oderC:\Users\username\AppData\Local\astral\uvx.exeunter Windows.
Starten Sie Claude Desktop nach dem Hinzufügen der Konfiguration neu, um die Änderungen zu übernehmen.
Windsurf IDE-Konfiguration
So führen Sie diesen MCP-Server mit Windsurf IDE aus:
Windsurf IDE konfigurieren :
Um Windsurf IDE zu konfigurieren, müssen Sie die Konfigurationsdatei ~/.codeium/windsurf/mcp_config.json erstellen oder ändern.
Fügen Sie Ihrer Datei die folgende Konfiguration hinzu:
"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>"
}
}
}Hinweis: Auf manchen Systemen müssen Sie möglicherweise den vollständigen Pfad zur uvx-Programmdatei anstelle von „uvx“ verwenden. Beispiel:
/home/user/.local/bin/uvxunter Linux/Mac oderC:\Users\username\AppData\Local\astral\uvx.exeunter Windows.
Starten Sie Windsurf IDE nach dem Hinzufügen der Konfiguration neu oder aktualisieren Sie die Tools, um die Änderungen anzuwenden.
Cursorkonfiguration
So konfigurieren Sie den CodeLogic MCP-Server in Cursor:
Konfigurieren Sie den MCP-Server, indem Sie eine
.cursor/mcp.jsonDatei erstellen:
{
"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"
}
}
}
}Hinweis: Auf manchen Systemen müssen Sie möglicherweise den vollständigen Pfad zur uvx-Programmdatei anstelle von „uvx“ verwenden. Beispiel:
/home/user/.local/bin/uvxunter Linux/Mac oderC:\Users\username\AppData\Local\astral\uvx.exeunter Windows.
Starten Sie Cursor neu, um die Änderungen zu übernehmen.
Die CodeLogic MCP-Servertools sind jetzt in Ihrem Cursor-Arbeitsbereich verfügbar.
Anweisungen/Regeln für den KI-Assistenten
Damit der KI-Assistent die CodeLogic-Tools effektiv nutzen kann, können Sie die folgenden Anweisungen/Regeln zur Konfiguration Ihres Clients hinzufügen. Wir empfehlen, diese Anweisungen an die spezifischen Codierungsstandards, Best Practices und Workflow-Anforderungen Ihres Teams anzupassen:
VS Code (GitHub Copilot) Anweisungen
Erstellen Sie eine .vscode/copilot-instructions.md -Datei mit folgendem Inhalt:
# 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 impactsClaude Desktop-Anweisungen
Erstellen Sie eine Datei ~/.claude/instructions.md mit folgendem Inhalt:
# 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 impactsWindsurf IDE Regeln
Erstellen oder ändern Sie die Markdown-Datei ~/.codeium/windsurf/memories/global_rules.md mit dem folgenden Inhalt:
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 impactsGlobale Cursorregel
So konfigurieren Sie CodeLogic-Regeln in Cursor:
Cursoreinstellungen öffnen
Navigieren Sie zum Abschnitt „Regeln“
Fügen Sie den „Benutzerregeln“ den folgenden Inhalt hinzu:
# 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 impactsUmgebungsvariablen
Die folgenden Umgebungsvariablen können konfiguriert werden, um das Verhalten des Servers anzupassen:
CODELOGIC_SERVER_HOST: Die URL des CodeLogic-Servers.CODELOGIC_USERNAME: Ihr CodeLogic-Benutzername.CODELOGIC_PASSWORD: Ihr CodeLogic-Passwort.CODELOGIC_WORKSPACE_NAME: Der Name des zu verwendenden Arbeitsbereichs.CODELOGIC_DEBUG_MODE: Auftruesetzen, um den Debug-Modus zu aktivieren. Wenn aktiviert, werden zusätzliche Debug-Dateien wietiming_log.txtundimpact_data*.jsongeneriert. Standardmäßig auffalsegesetzt.
Beispielkonfiguration
"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"
}Fixieren der Version
Anstatt die neueste Version des Servers zu verwenden, können Sie eine bestimmte Version festlegen, indem Sie das Argumentfeld so ändern, dass es der Version in pypi entspricht, z. B.
"args": [
"codelogic-mcp-server@0.2.2"
],Versionskompatibilität
Für diesen MCP-Server gelten die folgenden Versionskompatibilitätsanforderungen:
Version 0.3.1 und darunter: Kompatibel mit allen CodeLogic API-Versionen
Version 0.4.0 und höher: Erfordert CodeLogic API Version 25.10.0 oder höher
Stellen Sie beim Upgrade sicher, dass Ihr CodeLogic-Server die Mindestanforderungen an die API-Version erfüllt.
Testen
Ausführen von Unit-Tests
Das Projekt verwendet unittest zum Testen. Sie können Unit-Tests ohne externe Abhängigkeiten ausführen:
python -m unittest discover -s test -p "unit_*.py"Unit-Tests verwenden simulierte Daten und erfordern keine Verbindung zu einem CodeLogic-Server.
Integrationstests (optional)
Wenn Sie Integrationstests ausführen möchten, die eine Verbindung zu einem echten CodeLogic-Server herstellen:
Kopieren Sie
test/.env.test.examplenachtest/.env.testund füllen Sie es mit Ihren CodeLogic-ServerdetailsFühren Sie die Integrationstests aus:
python -m unittest discover -s test -p "integration_*.py"Hinweis: Integrationstests erfordern Zugriff auf eine CodeLogic-Serverinstanz.