Skip to main content
Glama
martinbowling

Clipboard to Supabase MCP Helper

Zwischenablage zum Supabase MCP Helper

Ein lokaler Agent, der die Zwischenablage des Systems überwacht, alle kopierten Bilder in den Supabase-Speicher hochlädt und dann die öffentliche (oder signierte) URL wieder in die Zwischenablage schreibt.

Merkmale

  • Zero-Click-Bildhosting: Kopieren Sie ein Bild und erhalten Sie sofort eine URL

  • Geringe Latenz: Unter 800 ms vom Kopieren zur URL

  • Plattformübergreifend: Funktioniert unter macOS, Windows und Linux

  • MCP-Integration: Zwischenablage-Bildupload als MCP-Endpunkt verfügbar machen

  • Autostart: Konfigurieren Sie die Ausführung beim Systemstart

  • Effiziente Erkennung: Hash-basierte Deduplizierung mit geringer CPU-Auslastung

Related MCP server: Supabase MCP Server

Voraussetzungen

  • Node.js 18+

  • Supabase-Konto mit aktiviertem Speicher

  • Plattformspezifische Abhängigkeiten:

    • macOS: pngpaste ( brew install pngpaste )

    • Windows/Linux: Nativer Zugriff auf die Zwischenablage des Betriebssystems

Installation

  1. Klonen Sie das Repository:

git clone https://github.com/martinbowling/clipboard-to-supabase-mcp-helper.git
cd clipboard-to-supabase-mcp-helper
  1. Installieren Sie Abhängigkeiten:

npm install
  1. Erstellen Sie eine .env Datei basierend auf .env.example :

SUPABASE_URL=https://<project>.supabase.co
SUPABASE_SERVICE_ROLE_KEY=your-service-role-key
BUCKET=media
MCP_PORT=3333
  1. Testen Sie Ihre Supabase-Verbindung:

npm run test:supabase
  1. Erstellen Sie das Projekt:

npm run build
  1. Als Systemdienst installieren:

Für macOS:

npm run install:macos

Für Linux:

npm run install:linux

Für Windows:

npm run install:windows

Verwendung

Sobald der Helfer installiert und ausgeführt wird, führt er Folgendes aus:

  1. Überwachen Sie Ihre Zwischenablage auf Bildänderungen (Abfrage alle 300 ms)

  2. Laden Sie alle kopierten Bilder in Ihren Supabase-Bucket hoch

  3. Legen Sie die öffentliche URL wieder in Ihre Zwischenablage, bereit zum Einfügen

Ausführen des Dienstes

Der Zwischenablage-Helfer kann in zwei Modi ausgeführt werden:

Stdio-Modus (Standard)

npm start

Dadurch wird der MCP-Server mit StdioServerTransport ausgeführt, ideal für die Verwendung über die Befehlszeile.

HTTP-Modus

npm run start:http

Dies führt einen Express-HTTP-Server auf Port 3333 (konfigurierbar) mit einem geeigneten REST-API-Endpunkt aus.

MCP-Integration

Der Helfer stellt die folgenden MCP-Endpunkte bereit:

Zwischenablagebild hochladen

Im HTTP-Servermodus:

POST http://localhost:3333/mcp

Anforderungstext:

{
  "id": "1",
  "jsonrpc": "2.0",
  "method": "tool",
  "params": {
    "name": "upload_clipboard_image",
    "input": {}
  }
}

Antwort:

{
  "id": "1",
  "jsonrpc": "2.0",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "https://your-project.supabase.co/storage/v1/object/public/media/clips/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.png"
      }
    ]
  }
}

Alte Dateien bereinigen

Der Helfer bietet auch einen MCP-Endpunkt, um die Bereinigung alter Dateien manuell auszulösen.

Anforderungstext:

{
  "id": "1",
  "jsonrpc": "2.0",
  "method": "tool",
  "params": {
    "name": "cleanup_old_files",
    "input": {
      "days": 30
    }
  }
}

Antwort:

{
  "id": "1",
  "jsonrpc": "2.0",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "Cleanup completed: Deleted 5 files older than 30 days. Failed: 0."
      }
    ]
  }
}

Der Parameter days ist optional. Wenn er nicht angegeben wird, wird der Wert aus der Umgebungsvariable RETENTION_DAYS verwendet.

Wie es funktioniert

  1. Änderungserkennung : Fragt alle 300 ms die Zwischenablage ab und berechnet den SHA-1-Hash der Bilddaten

  2. Deduplizierung : Verarbeitet nur neue oder geänderte Bilder basierend auf einem Hash-Vergleich

  3. Plattformanpassung : Verwendet plattformspezifische Methoden zum Erfassen von Zwischenablagebildern

  4. Supabase-Integration : Lädt Bilder mit eindeutigen UUIDs in Ihren Supabase-Bucket hoch

  5. MCP-Endpunkt : Stellt KI-Agenten die Funktionalität über das Model Context Protocol zur Verfügung

  6. Automatische Bereinigung : Entfernt regelmäßig Bilder, die älter sind als die konfigurierte Aufbewahrungsfrist (Standard: 30 Tage).

Plattformspezifische Hinweise

macOS

  • Erfordert pngpaste : Installieren Sie mit brew install pngpaste

  • Verwendet LaunchAgents für den Autostart

Windows

  • Verwendet PowerShells System.Windows.Forms.Clipboard zur Bilderfassung

  • Verwendet die Windows-Registrierung für den Autostart

Linux

  • Verwendet xclip (X11) oder wl-paste (Wayland) für den Zugriff auf die Zwischenablage

  • Verwendet systemd für den Autostart

Entwicklung

# Run with live reload (stdio mode)
npm run dev

# Run with live reload (HTTP mode)
npm run dev:http

# Build for production
npm run build

# Run stdio version
npm start

# Run HTTP version
npm run start:http

Lizenz

MIT

Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/martinbowling/clipboard-to-supabase-mcp-helper'

If you have feedback or need assistance with the MCP directory API, please join our Discord server