Connection-Key-MCP-Server

Heiko888/Connection-Key-MCP-Server

3.2

If you are the rightful owner of Connection-Key-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 dayong@mcphub.com.

The MCP Server is a versatile tool designed to enhance the functionality of the Cursor IDE by providing a suite of tools and integrations, particularly with n8n workflows.

Tools
12
Resources
0
Prompts
0

MCP Server - Connection Key

Ein MCP (Model Context Protocol) Server mit verschiedenen nützlichen Tools für Cursor IDE.

Verfügbare Tools

Der Server stellt folgende Tools zur Verfügung:

1. ping

Test-Tool zur Überprüfung der Server-Verbindung.

  • Parameter: Keine
  • Ausgabe: "pong"

2. echo

Gibt den eingegebenen Text zurück. Nützlich zum Testen von Parametern.

  • Parameter:
    • text (string): Der Text, der zurückgegeben werden soll
  • Ausgabe: Der eingegebene Text

3. getDateTime

Gibt das aktuelle Datum und die aktuelle Uhrzeit zurück.

  • Parameter:
    • timezone (string, optional): Zeitzone (z.B. 'Europe/Berlin'), Standard: UTC
  • Ausgabe:
    • dateTime: Formatierte Datum/Zeit-String
    • timestamp: Unix-Timestamp
    • timezone: Verwendete Zeitzone

4. calculate

Führt mathematische Berechnungen durch.

  • Parameter:
    • expression (string): Mathematischer Ausdruck (z.B. '2 + 2', '10 * 5', '2 ** 3')
  • Unterstützte Operatoren: +, -, *, /, %, ** (Potenz)
  • Ausgabe:
    • result: Berechnungsergebnis
    • expression: Ursprünglicher Ausdruck

5. generateUUID

Generiert eine eindeutige UUID (Universally Unique Identifier).

  • Parameter:
    • version (enum, optional): UUID Version - "v4" (zufällig, Standard) oder "v1" (zeitbasiert)
  • Ausgabe:
    • uuid: Generierte UUID
    • version: Verwendete Version

n8n Integration Tools

6. callN8N

Ruft die n8n REST API auf. Kann Workflows starten, Daten senden oder abrufen.

  • Parameter:
    • endpoint (string): API-Endpoint (z.B. '/api/v1/workflows' oder '/webhook/reading')
    • method (enum): HTTP-Methode - GET, POST, PUT, DELETE, PATCH (Standard: POST)
    • body (object, optional): Request Body als JSON-Objekt
    • headers (object, optional): Zusätzliche HTTP-Header
  • Ausgabe:
    • status: HTTP-Status-Code
    • data: Antwort-Daten
    • success: Erfolgsstatus

7. createN8NWorkflow

Erstellt einen neuen n8n Workflow mit dem angegebenen Namen und Nodes.

  • Parameter:
    • name (string): Name des Workflows
    • nodes (array): Array von Workflow-Nodes
    • active (boolean, optional): Workflow aktivieren (Standard: false)
    • tags (array, optional): Tags für den Workflow
  • Ausgabe:
    • workflowId: ID des erstellten Workflows
    • name: Workflow-Name
    • nodeCount: Anzahl der Nodes
    • message: Statusmeldung

8. triggerN8NWebhook

Löst einen n8n Webhook-Workflow aus. Nützlich zum Starten von Automatisierungen.

  • Parameter:
    • webhookPath (string): Webhook-Pfad (z.B. 'reading', 'matching', 'chart-analysis')
    • data (object): Daten, die an den Webhook gesendet werden sollen
  • Ausgabe:
    • success: Erfolgsstatus
    • executionId: ID der Ausführung (optional)
    • message: Statusmeldung

Human Design Tools

9. generateReading

Generiert ein Human Design Reading basierend auf Geburtsdaten. Ruft n8n Workflow auf.

  • Parameter:
    • birthDate (string): Geburtsdatum im Format YYYY-MM-DD
    • birthTime (string): Geburtszeit im Format HH:MM
    • birthPlace (string): Geburtsort
    • userId (string, optional): User-ID
    • readingType (enum, optional): Art des Readings - basic, detailed, business, relationship (Standard: basic)
  • Ausgabe:
    • readingId: ID des generierten Readings
    • chartData: Chart-Daten
    • reading: Reading-Text
    • success: Erfolgsstatus

10. analyzeChart

Analysiert Human Design Chart-Daten und gibt detaillierte Informationen zurück.

  • Parameter:
    • chartData (object): Chart-Daten (Typ, Zentren, Channels, etc.)
    • analysisType (enum, optional): Art der Analyse - type, centers, channels, gates, profile, full (Standard: full)
  • Ausgabe:
    • analysis: Analyse-Ergebnisse
    • summary: Zusammenfassung
    • success: Erfolgsstatus

Matching Tools

11. matchPartner

Führt Human Design Partner-Matching zwischen zwei Personen durch.

  • Parameter:
    • user1Chart (object): Chart-Daten der ersten Person
    • user2Chart (object): Chart-Daten der zweiten Person
    • matchingType (enum, optional): Art des Matchings - compatibility, relationship, business, full (Standard: compatibility)
    • userId1 (string, optional): User-ID der ersten Person
    • userId2 (string, optional): User-ID der zweiten Person
  • Ausgabe:
    • matchId: ID des Matchings
    • compatibilityScore: Kompatibilitäts-Score (0-100)
    • analysis: Detaillierte Analyse
    • recommendations: Empfehlungen als Array
    • success: Erfolgsstatus

User Data Tools

12. saveUserData

Speichert User-Daten über n8n Webhook. Nützlich für App-User-Login und Datenverarbeitung.

  • Parameter:
    • userId (string): User-ID
    • data (object): Zu speichernde Daten
    • dataType (enum, optional): Art der Daten - profile, chart, reading, preferences, custom (Standard: custom)
  • Ausgabe:
    • success: Erfolgsstatus
    • recordId: ID des gespeicherten Records (optional)
    • message: Statusmeldung

Installation

Lokale Entwicklung

  1. Stellen Sie sicher, dass Node.js installiert ist
  2. Installieren Sie die Abhängigkeiten:
npm install
  1. Konfigurieren Sie die n8n-Verbindung:

    • Öffnen Sie config.js
    • Passen Sie die n8n.baseUrl an Ihre n8n-Instanz an
    • Optional: Setzen Sie N8N_API_KEY als Umgebungsvariable, falls benötigt

    Oder setzen Sie Umgebungsvariablen:

    # Windows PowerShell
    $env:N8N_BASE_URL="https://n8n.deinedomain.tld"
    $env:N8N_API_KEY="your-api-key"
    
    # Linux/Mac
    export N8N_BASE_URL="https://n8n.deinedomain.tld"
    export N8N_API_KEY="your-api-key"
    

Hetzner Server Deployment

Für die Einrichtung auf einem Hetzner Server gibt es ein automatisches Setup-Script:

Schnellstart:

# Auf Hetzner Server
curl -o setup-hetzner.sh https://raw.githubusercontent.com/Heiko888/Connection-Key-MCP-Server/main/setup-hetzner.sh
chmod +x setup-hetzner.sh
sudo ./setup-hetzner.sh

Weitere Informationen:

  • - Schnelleinrichtung
  • - Detaillierte Anleitung
  • - .env Datei Setup

Konfiguration in Cursor IDE

Um den MCP-Server in Cursor IDE zu verwenden, müssen Sie ihn in den Cursor-Einstellungen konfigurieren:

  1. Öffnen Sie die Cursor-Einstellungen (File → Preferences → Settings)
  2. Suchen Sie nach "MCP" oder "Model Context Protocol"
  3. Fügen Sie die folgende Konfiguration hinzu:
{
  "mcpServers": {
    "mcp-server": {
      "command": "node",
      "args": [
        "C:\\AppProgrammierung\\Projekte\\MCP_Connection_Key\\index.js"
      ],
      "cwd": "C:\\AppProgrammierung\\Projekte\\MCP_Connection_Key"
    }
  }
}

Wichtig: Passen Sie die Pfade an Ihren System an!

Alternative: Verwendung von mcp.json

Die Datei mcp.json in diesem Projekt kann als Referenz dienen. Kopieren Sie den Inhalt in Ihre Cursor-Konfiguration.

Server starten (manuell)

Um den Server manuell zu testen:

npm start

Der Server läuft dann über stdio und wartet auf Verbindungen von Cursor.

Fehlerbehebung

Tools werden nicht angezeigt

  1. Server-Verbindung prüfen:

    • Stellen Sie sicher, dass der Server in den Cursor-Einstellungen korrekt konfiguriert ist
    • Überprüfen Sie die Pfade in der Konfiguration
  2. Cursor neu starten:

    • Starten Sie Cursor neu, damit die MCP-Konfiguration geladen wird
  3. Logs überprüfen:

    • Öffnen Sie das Output-Panel in Cursor
    • Wählen Sie "MCP" oder "Model Context Protocol" aus
    • Suchen Sie nach Fehlermeldungen
  4. Server manuell testen:

    • Führen Sie npm start aus
    • Der Server sollte ohne Fehler starten

Häufige Fehler

  • "Cannot find module": Stellen Sie sicher, dass npm install ausgeführt wurde
  • "EACCES" oder Berechtigungsfehler: Überprüfen Sie die Dateiberechtigungen
  • "Command not found": Stellen Sie sicher, dass Node.js im PATH ist

Entwicklung

Neue Tools hinzufügen

Um ein neues Tool hinzuzufügen, verwenden Sie die registerTool-Methode:

server.registerTool(
  "toolName",
  {
    title: "Tool Titel",
    description: "Beschreibung des Tools",
    inputSchema: z.object({
      // Ihre Parameter hier
    }),
    outputSchema: z.object({
      // Ihre Ausgabe hier
    })
  },
  async (params) => {
    // Ihre Tool-Logik hier
    return {
      content: [{ type: "text", text: "Ergebnis" }],
      structuredContent: { /* strukturierte Daten */ }
    };
  }
);

Architektur

Der MCP-Server ist Teil einer größeren Architektur:

App
 ↓  
Connection-Key Server  ←→  MCP Server
 ↓                      ↑
n8n ←———————————————————

Komponenten:

  • App: Sendet User-Wünsche
  • Connection-Key Server: Zentrale API, steuert n8n + MCP
  • MCP Server: Tools, KI-Agenten, Automationen (dieser Server)
  • n8n: Workflows, Datenfluss, Integration, Datenverarbeitung

Kommunikation:

  • Die App kommuniziert nur mit dem Connection-Key Server
  • Der Connection-Key Server ruft n8n Workflows auf
  • Der Connection-Key Server nutzt den MCP-Server als Agenten-Framework
  • Der MCP-Server ruft n8n APIs/Webhooks auf

Beispiel-Verwendung

Beispiel 1: Human Design Reading generieren

// In Cursor können Sie jetzt sagen:
"Erstelle mir ein Human Design Reading für einen User, geboren am 1990-05-15 um 14:30 in Berlin"

Der MCP-Server ruft dann automatisch den n8n Webhook auf und generiert das Reading.

Beispiel 2: Workflow erstellen

"Erstelle einen n8n Workflow namens 'User Login Reading' mit 3 Nodes"

Beispiel 3: Partner-Matching

"Führe ein Partner-Matching zwischen User 123 und User 456 durch"

Technische Details

  • Framework: @modelcontextprotocol/sdk v1.0.0+
  • Schema-Validierung: Zod
  • Transport: stdio (Standard Input/Output)
  • Node.js: Erforderlich
  • n8n Integration: Über REST API und Webhooks
  • Konfiguration: Über config.js oder Umgebungsvariablen

Lizenz

Dieses Projekt ist für den persönlichen Gebrauch bestimmt.