Connection-Key MCP Server

Heiko888/Connection-Key-MCP-Server
0 starsCommunity

Install to Claude Code

This server doesn't publish a one-line install command. Follow the setup in the source repository.

Summary

MCP server for Cursor IDE offering tools for Human Design chart analysis, partner matching, n8n workflow management, and utility functions like UUID generation and calculation.

README.md

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: ```bash

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: ```bash

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:

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
  1. Cursor neu starten:
  • Starten Sie Cursor neu, damit die MCP-Konfiguration geladen wird
  1. Logs überprüfen:
  • Öffnen Sie das Output-Panel in Cursor
  • Wählen Sie "MCP" oder "Model Context Protocol" aus
  • Suchen Sie nach Fehlermeldungen
  1. 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.

Related MCP servers

Browse all →