Skip to main content
Glama
calypso-so

Calypso Multimodal RAG MCP Server

Official
by calypso-so

Calypso Multimodal RAG MCP Server

Der einfachste gehostete multimodale RAG-MCP-Server für Claude Desktop, Cursor und Agent-Workflows.

Ein einziger npx-Befehl – unterstützt von Gemini File Search. Verarbeitet PDFs, Screenshots, Schaubilder, Diagramme und Bilder nativ mit überprüfbaren Quellenangaben.

Trust Score npm version GitHub stars Multimodal RAG One command License CI

Der einfachste Weg, gehostetes multimodales RAG zu Claude, Cursor, Windsurf und benutzerdefinierten Agenten hinzuzufügen.

  • Super einfache Einrichtung: npx -y @calypsohq/multimodal-rag-mcp-server --api-key sk-your-key-here

  • Echtes multimodales RAG: verarbeitet Text und visuelle Inhalte nativ über Gemini File Search

  • Hochladen und Abfragen: spezielle Tools für dauerhafte Wissensdaten und Stapel-Uploads

  • Mehrrunden-Gespräche: kontextbezogene Antworten mit /new-Reset

  • Auffindbare Workflows: Ressourcen und Prompts für sichere RAG-, Upload- und Aufnahme-Workflows

GitHub | Dokumentation | Smithery | Offizielles MCP-Registry

Tags: multimodal-rag, easiest-mcp-rag, gemini-rag, hosted-rag-mcp, mcp-server

Statt jeden Agenten oder Workflow an einen einmaligen Dokument-Such-Stack anzubinden, nutzen Sie diesen MCP als agentenorientierten Einstiegspunkt in eine wiederverwendbare Antwortebene: Laden Sie Quellmaterial einmal hoch, rufen Sie es über Text- und visuelle Inhalte hinweg ab und liefern Sie Antworten mit Belegen, die Nutzer verifizieren können.

Schnellstart (Am einfachsten)

# One-liner with npx
npx -y @calypsohq/multimodal-rag-mcp-server --api-key "sk-your-key-here"

Oder mit Umgebungsvariablen:

CALYPSO_API_KEY="sk-..." npx -y @calypsohq/multimodal-rag-mcp-server

Fügen Sie dieselben Befehl mit den Konfigurationsbeispielen unten zu Claude Desktop, Cursor oder Smithery hinzu.

Related MCP server: RAG-Anything MCP Server

Warum Calypso wählen

Calypso wurde für Teams entwickelt, die den einfachsten gehosteten multimodalen RAG-MCP-Server möchten: kein lokaler Vektor-Stack, kein Docker Compose und keine eigene OCR- oder Bildverarbeitungspipeline, bevor Agenten quellenbasierte Fragen stellen können.

Funktion

Calypso

rag-anything-mcp

Pixeltable

Einrichtung

1 npx-Befehl (ohne Infrastruktur)

Klon + Python

Docker Compose

Multimodal

Natives Gemini File Search (Text + Bilder, Diagramme, Schaubilder, PDFs) ohne zusätzliche Vision-Pipeline

Umfangreiches OpenAI-visionbasiertes Dokument-RAG

Hervorragend für Video, Audio, Bilder und Tabellen

Hosting

Vollständig gehostet (Option für Selbst-Hosting)

Local-First

Local-First

Betrieb

Zero-Ops-Cloud

Erfordert Python-Setup

Erfordert Docker

Upload-Tools

Integrierte Upload-Session-Werkzeuge für Einzeldateien und Stapel-Wissen

Ja

Ja

Zitate / Grounding

Starke Belegkette mit Retrieval-Metadaten

Ja

Ja

Geeignet für

Teams, die gehostetes multimodales RAG ohne Betriebsaufwand für MCP-Clients wünschen

Lokale Dokument-RAG-Experimente

Umfangreiche lokale Video-, Audio- und Daten-Workflows

Beginnen Sie hier, wenn Sie den einfachstenen, gehosteten, multimodalen RAG-MCP-Server möchten.

Was Sie außerdem davon haben

  • Produktionsreifer multimodaler RAG-Agent mit Mehrrunden-Speicher

  • Integrierte Upload-Tools für Einzeldateien und Stapel-Wissens-Uploads

  • Automatische Identifizierung der RAG-Varianten und Wissensbuckets Ihres Teams

  • Überprüfbare Zitate mit Quellenverweisen und Retrieval-Metadaten

  • Schreibgeschützte Ressourcen und wiederverwendbare Prompts für sichere Workflows

Warum Multimodal-First-RAG

Das meiste Unternehmenswissen besteht nicht nur aus Text. Die Antwort liegt oft in einem Setup-Screenshot, einer PDF-Tabelle, einem Produktdiagramm, einer Help-Center-Seite oder einem Diagramm in einem Bericht. Calypso bündelt all dieses Wissen in einer einzigen Retrieval-Ebene, damit Agents Fragen beantworten können, ohne sich auf generelles Modellwissen verlassen zu müssen.

  • Durchsuchen Sie die Formate, auf die Nutzer sich verlassen: Dokumentation, PDFs, Screenshots, Diagramme, Tabellen, Produktbilder, Support-Artikel, Handbücher, Richtlinien, FAQs und Berichte.

  • Belegte Antworten, bevor das Modell schreibt: Gemini File Search ruft zuerst relevanten Text und visuellen Kontext ab, dann antwortet der RAG-Agent auf der Grundlage dieses Quellenmaterials.

  • Die Belegkette zeigen: Antworten können Quellenverweise, seitenbezogenes Grounding und Retrieval-Metadaten enthalten, damit Nutzer prüfen können, bevor sie vertrauen.

  • Retrieval mit Metadaten eingrenzen: Mithilfe von Workspace, Team, Kunde, Sprache, Dateityp, Status oder anderer Metadaten bleiben Antworten relevant, ohne dass Wissensdatenbanken dupliziert werden müssen.

  • Dieselbe Wissensebene überall wiederverwenden: Cursor, Claude Desktop, KI-Agenten, n8n-Workflows, Produkt-UI, Support-Abläufe und Website-Erlebnisse mit derselben quellenbasierten Ebene verbinden.

In der Praxis kann Ihr Agent Fragen wie die folgenden beantworten:

  • „Erklär mir diesen Setup-Screenshot und das beigefügte PDF mit der Richtlinie. Was soll der Supportmitarbeiter als Nächstes tun?“

  • „Was sagt dieses Onboarding-PDF über Genehmigungsregeln?“

  • „Warum schlägt dieser Einrichtungsbildschirm fehl?“

  • „Vergleiche das Preisschaubild mit unserer Tarifdokumentation und empfehle das richtige Paket.“

  • „Fasse die Richtlinie zusammen, die auf dieses Unterstützungsticket zutrifft.“

  • „Welches Produktpaket passt zu diesem Kunden, baseline auf unserer Grenzdokumentation?“

  • „Vergleichen Sie den dargestellten Aufnahm-Workflow mit dem Retrieval-Workflow.“

Was dieser MCP tut

Mit calypso-rag-agent können Sie Folgendes tun:

  • Stellen Sie grundlegende Fragen gegen die konfigurierte Calypso-Wissensbase.

  • Wählen Sie mit dem optionalen Argument model eine beliebige erkannte Team-RAG-Variante aus.

  • Mehrrunden-Gespräche fortsetzen über das native, erreichbare auf /v1/responses aufbauende Konversationsmodell.

  • Setzen Sie den Gesprächskontext mit /new zurück.

  • Verwenden Sie denselben OpenAI-kompatiblen Responses-Endpunkt, der calypso-rag-agent ressourcen.

  • Entdecken Sie eingebaute Ressourcen und Prompt-Vorlagen für die unterstützten Calypso-Workflows.

Voraussetzungen

  • Node.js 18+

  • Der Server verwendet für API-Auft Graben: fetch, Headers, Request, Response, FormData, Blob und File – Primitiven der Web-Fetch-API und SDK-Kompatibilität. Das Paket erstellt beim Start fehlende Globals für MCP-Runtimes, die nur einen Teil der Node-18+-Web-API-Oberfläche bereitstellen.

  • Ein Calypso-API-Endpunkt, der folgende Endpunkte bereitstellt:

    • POST /v1/responses

    • GET /v1/rag-agent/models

    • GET /v1/knowledge/buckets

    • POST /v1/knowledge/files/upload-session

    • POST /v1/knowledge/files/upload-session/{session_id}/finalize

    • POST /v1/knowledge/files:batch/upload-session

    • POST /v1/knowledge/files:batch/upload-session/{batch_id}/finalize

    • GET /v1/knowledge/batches/{batch_id}

  • Ein Calypso-API-Schlüssel (sk-...)

Konfiguration

Umgebungsvariablen:

  • CALYPSO_API_KEY (erforderlich)

  • CALYPSO_API_BASE_URL (optional, Standard: https://api.calypso.so/v1)

CLI-Flags:

  • --api-key

  • --api-base-url

Konfigurationspriorität:

  1. CLI-Flags / von Smithery bereitgestellte Befehlsargumente

  2. Umgebungsvariablen

  3. Standard-Basis-URL (https://api.calypso.so/v1)

Mit npx ausführen

npx -y @calypsohq/multimodal-rag-mcp-server --api-key "sk-..."

Mit Umgebungsvariablen ausführen

env CALYPSO_API_KEY="sk-..." CALYPSO_API_BASE_URL="https://api.calypso.so/v1" npx -y @calypsohq/multimodal-rag-mcp-server

In Cursor konfigurieren

Fügen Sie einen neuen MCP-Server (Befehlstyp) wie folgt hinzu:

npx -y @calypsohq/multimodal-rag-mcp-server --api-key sk-... --api-base-url https://api.calypso.so/v1

In Claude Desktop konfigurieren

1. Claude-Desktop-MCP-Konfiguration öffnen

In Claude Desktop:

Claude -> Settings -> Developer -> Edit Config

Unter macOS befindet sich die Datei normalerweise unter:

~/Library/Application Support/Claude/claude_desktop_config.json

Claude Desktop verwendet claude_desktop_config.json für Desktop MCP-Server. Claude Code verwendet separate Konfigurationsdateien wie ~/.claude.json oder Projekt .mcp.json.

2. Den Calypso-MCP-Server hinzufügen

Fügen Sie Folgendes in claude_desktop_config.json ein:

{
  "mcpServers": {
    "Calypso Multimodal RAG": {
      "command": "npx",
      "args": [
        "-y",
        "@calypsohq/multimodal-rag-mcp-server"
      ],
      "env": {
        "CALYPSO_API_KEY": "sk-your-calypso-api-key",
        "CALYPSO_API_BASE_URL": "https://api.calypso.so/v1"
      }
    }
  }
}

Ersetzen Sie:

  • sk-your-calypso-api-key

mit Ihrem echten Calypso-API-Schlüssel.

3. Claude Desktop vollständig neu starten

Beenden Sie Claude Desktop vollständig und öffnen Sie es dann erneut.

Schließen Sie nicht einfach das Fenster. Auf macOS:

Cmd + Q

Nach dem Neustart sollte der MCP in Claude mit folgenden verfügbaren Tools erscheinen:

  • calypso-rag-agent

  • calypso-list-buckets

  • calypso-upload-file

  • calypso-upload-files-batch

Optional: Claude-Artefakte auf Ihrem Mac speichern

Calypso stellt gehostete multimodale RAG-Tools bereit. Es schreibt keine zworganizationgenerierten Berichte, Zusammenfassungen, CSV-, JSON-Dateien oder Websuchartefakte direkt auf Ihren lokalen Computer.

Damit Claude Desktop generierte Dateien lokal speichern kann, fügen Sie den Standard-Filesystem-MCP-Server zusätzlich zu Calypso und beschränken Sie ihn auf einen bestimmten sicheren Ordner.

Erstellen Sie den Ordner zuerst:

mkdir -p ~/Claude

Fügen Sie dazu beide Server zu claude_desktop_config.json hinzu:

{
  "mcpServers": {
    "Calypso Multimodal RAG": {
      "command": "npx",
      "args": [
        "-y",
        "@calypsohq/multimodal-rag-mcp-server"
      ],
      "env": {
        "CALYPSO_API_KEY": "sk-your-calypso-api-key",
        "CALYPSO_API_BASE_URL": "https://api.calypso.so/v1"
      }
    },
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/yourname/Claude"
      ]
    }
  }
}

Nachdem Sie die Konfiguration geändert haben, beenden Sie Claude Desktop vollständig und öffnen Sie es erneut.

Beispiel-Prompt:

Use Calypso for the grounded RAG answer, then save the final report as /Users/yourname/Claude/report.md using the filesystem tool.

Aus Sicherheitsgrunden gewähren Sie Filesystem-Zugriff nur auf einen bestimmten Ordner wie ~/Claude, nicht auf Ihr gesamtes Home-Verzeichnis.

Anliegen

Verantwortlichsschlüssel

Quellenbasierte RAG-Antworten

Calypso MCP

Dateien in Calypso hochladen

Calypso MCP

.md, .pdf, .json, .csv usw. auf Ihren Mac schreiben

filesystem MCP

Websuch-Artefakte von Claude

Claude plus filesystem MCP-Prompt

Smithery

Der Server ist über Smithery verfügbar und startet über denselben von Desktop-Clients verwendeten npx-Paketpfad.

Smithery-Benutzerkonfiguration:

  • calypsoApiKey (erforderlich)

  • calypsoApiBaseUrl (optional, Standard: https://api.calypso.so/v1)

Der Smithery-Startpfad entspricht:

npx -y @calypsohq/multimodal-rag-mcp-server --api-key sk-... --api-base-url https://api.calypso.so/v1

Verwenden Sie calypsoApiBaseUrl nur, wenn Sie eine selbst gehostete, Calypso-kompatible Bereitstellung ansprechen. Der Cloud-Standardwert muss nicht geändert werden.

Fehlerbehebung

  • Fehlender API-Schlüssel: --api-key oder CALYPSO_API_KEY angeben

  • Falscher API-Host: sicherstellen, dass --api-base-url / CALYPSO_API_BASE_URL auf /v1 endet

  • Self-hosted-Bereitstellung: Die Basis-URL nur überschreiben, wenn Sie nicht https://api.calypso.so/v1 verwenden

  • Smithery-Startkonflikt: Verwenden Sie den gepackten Pfad npx -y @calypsohq/multimodal-rag-mcp-server statt node dist/index.js aus einem frischen Klon auszuführen

  • FormData is not defined oder Headers is not defined: Aktualisieren Sie auf das neueste Paket. Der MCP-Server bootstrappt fehlende Web-Fetch-API-Globals, bevor Upload-Tools ausgeführt werden.

  • ENOENT für /mnt/user-data/uploads/...: Dieser Pfad gehört zu einer gehosteten Agenten- oder Anhang-Sandbox, nicht unbedingt zum MCP-Server. Wiederholen Sie den Vorgang mit contentBase64 statt filePath.

  • Lokales Speichern von Artefakten: Calypso-Antworten können mit dem Dateisystem-MCP-Server von Claude Desktop verwendet werden, aber Claude muss explizit aufgefordert werden, die endgültige Ausgabe in einem erlaubten lokalen Pfad zu speichern.

Auswahl von filePath vs. contentBase64

Verwenden Sie filePath für lokale MCP-Installationen, einschließlich Claude-Desktop- und Cursor-Konfigurationen, die dieses Paket mit einem lokalen Befehl starten, wie zum Beispiel:

npx -y @calypsohq/multimodal-rag-mcp-server

In diesem Setup läuft der MCP-Serverprozess auf Ihrem Rechner und kann Pfade lesen, die für dasselbe Benutzerkonto verfügbar sind. Übergeben Sie den lokalen Pfad direkt; der Server liest die Rohbytes und lädt sie über die Calypso-Upload-Session-URL hoch. Sie müssen lokale Dateien nicht base64-kodieren.

Verwenden Sie contentBase64 für gehostete oder entfernte MCP-Clients, einschließlich Smithery-gehosteter Server, Browser-/Cloud-Laufzeiten, generierter In-Memory-Inhalte und Agentencontainer. In diesen Umgebungen ist ein Pfad auf Ihrem Mac oder Ihrer Workstation für den MCP-Serverprozess nicht lesbar.

Wenn ein Pfad mit /mnt/user-data/uploads, /mnt/data, /mnt/attachments oder einem anderen gehosteten Sandbox-Präfix beginnt, senden Sie ihn nicht als filePath, es sei denn, dieser MCP-Server läuft in derselben Sandbox. Verwenden Sie stattdessen contentBase64 oder eine andere Inline-Byte-Quelle.

Verfügbare Tools

calypso-rag-agent

Direkter Zugriff auf den Calypso-RAG-Agenten.

Hinweise:

  • Es leitet nicht automatisch an andere Personas oder Agenten weiter.

  • Es erkennt beim Start automatisch die verfügbaren calypso-rag-agent-Varianten des API-Schlüssels.

  • Verwenden Sie das optionale model-Argument, um eine benannte Variante wie calypso-rag-agent:pricing auszuwählen.

  • Jede Modellvariante führt ihre eigene MCP-Konversationskette, sodass ein Wechsel der Varianten nicht den falschen Thread fortsetzt.

  • Es verwendet POST /v1/responses statt POST /v1/chat/completions.

  • Erste Turns erstellen eine benannte Konversation, und Folgeturns verketten mit previous_response_id.

  • Optionale fileIds werden für retrieval-bezogene Fragen unterstützt. Neue Uploads sollten die dauerhaften Wissens-Upload-Tools verwenden und auf die Indizierung warten, bevor sie fragen.

  • Verwenden Sie /new als Prompt, um die MCP-Konversation zurückzusetzen.

calypso-list-buckets

Listet Buckets für das Team auf, das mit dem konfigurierten Calypso-API-Schlüssel verbunden ist.

Hinweise:

  • Verwendet GET /v1/knowledge/buckets.

  • Akzeptiert kein team_id; Calypso leitet den Team-Bereich aus dem API-Schlüssel ab.

  • Gibt Bucket-IDs, Slugs, Namen, Status, Mitgliederanzahl, Quellenanzahl und Bucket-Store-Bereitschaft zurück.

  • Standardmäßig nur aktive Buckets. Übergeben Sie includeArchived: true, wenn Sie archivierte Buckets für Audits oder Bereinigungen benötigen.

  • Verwenden Sie dies vor calypso-upload-file oder calypso-upload-files-batch, wenn Sie einen Ziel-Bucket auswählen müssen.

  • calypso://rag-agent-models beantwortet, welche Buckets an jede RAG-Variante gebunden sind. calypso-list-buckets beantwortet, welche Buckets für das Team des API-Schlüssels existieren.

Beispiel:

{
  "includeArchived": false
}

calypso-get-file

Ruft Metadaten und Indizierungsstatus einer Wissensdatei anhand der Datei-ID ab.

Hinweise:

  • Verwendet GET /v1/knowledge/files/{file_id}.

  • Löst die undurchsichtigen fileIds aus calypso-list-buckets in Dateiname, MIME-Typ, Größe, Indizierungsstatus und Synchronisierungsstatus pro Bucket auf.

  • Übergeben Sie verify: true, um gegen den Anbieter zu prüfen (?verify=gemini) – langsamer, aber maßgeblich, wenn ein Status veraltet aussieht.

Beispiel:

{
  "fileId": "file_123",
  "verify": true
}

calypso-create-bucket

Erstellt einen leeren Bucket für den Workflow „Erstellen und dann füllen“.

Hinweise:

  • Verwendet POST /v1/knowledge/buckets (erfordert ein Backend mit diesem Endpunkt und die Fähigkeit knowledge:bucket:create auf dem API-Schlüssel).

  • Der Server normalisiert den Slug; Kollisionen geben einen typisierten bucket_slug_exists-Fehler zurück.

  • idempotencyKey-Wiederholungen geben den vorhandenen Bucket zurück, anstatt einen Fehler zu erzeugen.

  • Uploads können Buckets weiterhin implizit über bucketSlugs + createMissingBuckets erstellen; dieses Tool dient zum Erstellen des Ziels zuerst.

Beispiel:

{
  "name": "Product docs",
  "slug": "product-docs",
  "idempotencyKey": "create-product-docs-1"
}

calypso-create-agent

Erstellt eine RAG-Agentenvariante, die an einen oder mehrere Buckets gebunden ist.

Hinweise:

  • Verwendet POST /v1/rag-agent/agents (erfordert ein Backend mit diesem Endpunkt und die Fähigkeit rag:agent:create auf dem API-Schlüssel).

  • Die Erfolgsantwort beginnt mit model – übergeben Sie sie direkt an calypso-rag-agent.

  • Bucket-Bindungen werden serverseitig validiert: unbekannte oder archivierte Buckets geben bucket_not_found zurück; Agenten-ID-Kollisionen geben agent_id_exists zurück; das Agentenlimit des Plans gibt agent_limit_reached zurück.

  • Das Erstellen eines Agenten aktualisiert den Modellkatalog und sendet MCP-tools/list_changed- und resources/list_changed-Benachrichtigungen, sodass die neue Variante ohne erneutes Verbinden verwendbar ist.

Beispiel:

{
  "agentId": "support",
  "name": "Support agent",
  "bucketSlugs": ["product-docs"],
  "idempotencyKey": "create-support-agent-1"
}

calypso-upload-file

Lädt eine Datei in den dauerhaften, bucket-gestützten Wissensspeicher und die Indizierungspipeline hoch.

Hinweise:

  • Verwendet POST /v1/knowledge/files/upload-session, lädt Bytes direkt in den Speicher hoch und schließt dann mit POST /v1/knowledge/files/upload-session/{session_id}/finalize ab.

  • Uploads verwenden JSON-Session-Anfragen plus signierte binäre PUTs, keine Multipart-Formular-Uploads.

  • Gibt Datei- und Aufgabenmetadaten zurück, keine Chat-Anhang-file_id.

  • Erfordert ein Bucket-Ziel über bucketIds, bucketSlugs oder bucket.

  • Verwenden Sie filePath für lokale Claude-Desktop-/Cursor-MCP-Installationen, bei denen der Server den Pfad lesen kann. Verwenden Sie contentBase64 für gehostete oder entfernte MCP-Clients, die keine lokalen Pfade lesen können.

  • Wenn ein Agent einen Pfad wie /mnt/user-data/uploads/file.pdf sieht, sollte er diesen nicht als filePath senden; er sollte die Dateibytes als contentBase64 senden.

  • Unterstützt optionale title, tags, metadata und idempotencyKey.

  • Leiten Sie Uploads mit bucketIds oder bucketSlugs in vorhandene Buckets oder verwenden Sie bucket als Abkürzung für einen einzelnen Slug.

  • Übergeben Sie createMissingBuckets: true mit Bucket-Slugs, wenn Calypso fehlende Ziele während des Uploads erstellen soll.

  • Kann optional warten, bis die Indizierung einen bereiten Zustand erreicht, bevor es zurückkehrt.

Beispiel:

{
  "filename": "handbook.pdf",
  "mimeType": "application/pdf",
  "filePath": "/Users/me/Documents/handbook.pdf",
  "bucket": "support-handbook",
  "createMissingBuckets": true,
  "waitForIndexing": true
}

calypso-upload-files-batch

Lädt 1 bis 100 Dateien in einer Anfrage in den dauerhaften Wissensspeicher hoch.

Hinweise:

  • Verwendet POST /v1/knowledge/files:batch/upload-session, lädt jedes akzeptierte Element direkt in den Speicher hoch und schließt dann mit POST /v1/knowledge/files:batch/upload-session/{batch_id}/finalize ab.

  • Uploads verwenden JSON-Session-Anfragen plus signierte binäre PUTs, keine Multipart-Formular-Uploads.

  • Erfordert batchIdempotencyKey; Calypso verwendet es, um die dauerhafte Batch-ID für Wiederholungen abzuleiten.

  • Erfordert ein gemeinsames Bucket-Ziel über bucketIds, bucketSlugs oder bucket, es sei denn, jedes Element stellt sein eigenes Bucket-Ziel bereit.

  • Unterstützt gemeinsame bucketIds, bucketSlugs, bucket- und createMissingBuckets-Standardwerte sowie Überschreibungen pro Element.

  • Verwenden Sie pro Element filePath für lokale Claude-Desktop-/Cursor-MCP-Installationen, bei denen der Server jeden Pfad lesen kann. Verwenden Sie pro Element contentBase64 für gehostete oder entfernte MCP-Clients, die keine lokalen Pfade lesen können.

  • Generiert Firestore-sichere client_file_id-Werte, wenn clientFileId weggelassen wird.

  • accepted oder queued bedeutet, dass der Upload dauerhaft ist, nicht unbedingt abfragebereit. Verwenden Sie waitForBatchReady: true, um GET /v1/knowledge/batches/{batch_id}?include_items=true abzufragen.

  • Untersuchen Sie den Status pro Element, bucketSyncStatus und bucketSync, um indizierte Inhalte von bucket-bereitem Retrieval zu unterscheiden.

Beispiel:

{
  "batchIdempotencyKey": "kb-seed-2026-06-04",
  "bucket": "support-handbook",
  "createMissingBuckets": true,
  "items": [
    {
      "filename": "faq.txt",
      "mimeType": "text/plain",
      "filePath": "/Users/me/Documents/faq.txt"
    }
  ],
  "waitForBatchReady": true
}

Verfügbare Ressourcen

calypso://server-info

Schreibgeschützte Servermetadaten, einschließlich Paketversion, API-Basis-URL, Transport, Authentifizierungsmodell und verfügbare Fähigkeiten.

calypso://rag-agent-models

Schreibgeschützter Laufzeitkatalog der teambezogenen calypso-rag-agent-Modellvarianten, die aus dem konfigurierten API-Schlüssel erkannt wurden, einschließlich der aktiven buckets, bucket_ids und missing_bucket_ids jeder Variante. Wenn die Erkennung nicht verfügbar ist, fällt diese Ressource auf den Basis-calypso-rag-agent zurück.

calypso://buckets

Schreibgeschützte Laufzeitliste der Wissens-Buckets für das Team, das mit dem konfigurierten API-Schlüssel verbunden ist. Verwenden Sie sie, um Bucket-IDs/Slugs und Bucket-Store-Bereitschaft vor Uploads zu prüfen.

calypso://workflows

Ein kompakter Leitfaden zu den unterstützten RAG- und Datei-Upload-Workflows.

calypso://security

Operative Sicherheitshinweise zu API-Schlüsseln, lokalen Dateilesevorgängen, Uploads und Protokollierung.

Verfügbare Prompts

  • calypso-question: Entwurf einer fundierten Wissensdatenbank-Frage für calypso-rag-agent

  • calypso-ingestion: Vorbereitung eines dauerhaften Wissensspeicher-Uploads und einer Folgefrage

  • calypso-reset-conversation: Starten eines sauberen RAG-Threads mit /new

Häufige Workflows (Kopieren/Einfügen)

Wissensabruf

  • Ein Thema zusammenfassen:

    • Fassen Sie die Leitlinien der Wissensdatenbank für Kampagnengenehmigungen zusammen

  • Eine spezifische Antwort anfordern:

    • Was sagt unsere Dokumentation über Indizierungswiederholungen?

  • Zwei Konzepte vergleichen:

    • Vergleichen Sie Dateiindizierung mit Abrufausführung in der aktuellen Architektur

  • Einen neuen Thread starten:

    • /new

Mehrfach-Turn-Folgefrage

  • Eine vorherige Antwort verfeinern:

    • Konzentrieren Sie sich nur auf den Aufnahmepfad und ignorieren Sie den Abruf

  • Quellen oder Begründung anfordern:

    • Erklären Sie, welche dokumentierten Komponenten beteiligt sind und warum

Wissensspeicher-Dateiablauf

  • Buckets entdecken:

    • Rufen Sie calypso-list-buckets auf oder lesen Sie calypso://buckets, bevor Sie ein Ziel auswählen

  • Dauerhaftes Wissen hochladen:

    • Rufen Sie calypso-upload-file mit der Dateinutzlast und optionalen title, tags oder metadata auf

    • Bevorzugen Sie filePath für lokale Claude-Desktop-/Cursor-MCP-Installationen; verwenden Sie contentBase64 für gehostete oder entfernte MCP-Clients, die keine lokalen Pfade lesen können

  • Wissen in Buckets leiten:

    • Verwenden Sie bucket: "support-handbook" für ein Ziel, bucketSlugs für mehrere Slug-basierte Ziele oder bucketIds, wenn Sie bereits stabile Bucket-IDs haben

  • Bucket-Ziele bei Bedarf erstellen:

    • Fügen Sie createMissingBuckets: true hinzu, wenn Sie eine Slug-basierte Bucket-Zuweisung verwenden und das Ziel möglicherweise noch nicht existiert

  • Auf Indizierung warten:

    • Übergeben Sie waitForIndexing: true, wenn das Tool blockieren soll, bis die Wissensdatei indiziert ist

Wissensspeicher-Batch-Ablauf

  • Viele dauerhafte Dateien hochladen:

    • Rufen Sie calypso-upload-files-batch mit items, batchIdempotencyKey und filePath pro Element für lokale MCP-Installationen auf; verwenden Sie contentBase64 pro Element für gehostete oder entfernte MCP-Clients

  • Den Batch in Buckets leiten:

    • Setzen Sie gemeinsame bucket, bucketSlugs, bucketIds oder createMissingBuckets auf den Tool-Aufruf und überschreiben Sie pro Element nur bei Bedarf

  • Auf Abfragebereitschaft warten:

    • Verwenden Sie waitForBatchReady: true und prüfen Sie den zurückgegebenen Elementstatus sowie die Bucket-Synchronisierungsfelder, bevor Sie frische Inhalte abfragen

Tipps

  • Neu starten: Verwenden Sie /new, um die MCP-Konversation zurückzusetzen (neue conversation_id + geleerte Antwortkette).

Available Tools

4 tools
calypso-list-knowledge-bucketsA

[CALYPSO LIST KNOWLEDGE BUCKETS] Lists knowledge buckets for the team tied to the configured Calypso API key.

Use this before uploads when you need bucket ids, slugs, names, member counts, or bucket-store readiness. This complements RAG model discovery: model discovery shows which buckets are bound to each agent variant, while this tool lists all buckets for the API key team.

ParametersJSON Schema
NameRequiredDescriptionDefault
includeArchivedNoIf true, include archived buckets. Defaults to false.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the burden of disclosing behavior. It indicates a read-only listing operation and clarifies scope (team tied to the API key), but does not disclose potential rate limits, pagination, or default behavior nuances beyond the schema. It is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with the core action. The bracketed header repeats the tool name, adding slight redundancy, but every other sentence contributes meaningful usage context. It earns a high score for efficiency without unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter tool with no output schema, the description provides a complete picture of purpose, usage context, and relationship to other tools. It hints at return values by listing retrievable fields, but does not explicitly describe the response format (e.g., array of objects). This is a minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with the includeArchived parameter already described in the schema. The description does not add parameter-specific meaning beyond the schema, only mentions the types of data returned (bucket ids, slugs, etc.), which are not directly parameter semantics. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with a specific verb ('Lists'), resource ('knowledge buckets'), and scope ('for the team tied to the configured Calypso API key'). It also differentiates from sibling tools by explaining its use before uploads and how it complements model discovery.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when-to-use guidance: 'Use this before uploads when you need bucket ids, slugs, names, member counts, or bucket-store readiness.' It also contrasts with RAG model discovery. However, it lacks explicit when-not-to-use or alternative tool exclusions, so it falls short of a full 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calypso-rag-agentA

[CALYPSO RAG AGENT] Sends each prompt directly to the Calypso RAG agent using the full conversation context.

Use this when you want Calypso knowledge retrieval and grounded answers from the RAG backend. Typical requests:

  • "Summarize the key points from our onboarding documentation"

  • "What does the knowledge base say about campaign approval rules?"

  • "Compare the documented indexing flow with the retrieval flow"

  • "Answer using the uploaded file ids: ["file_123"]"

Responses API behavior:

  • First turns start a named Calypso conversation via /v1/responses.

  • Follow-up turns chain with previous_response_id so the backend owns conversation state.

  • When fileIds are provided, the MCP uses rag_policy retrieval semantics instead of inline attachment stuffing.

MCP session behavior:

  • This tool maintains a stable conversation id in the background for multi-turn retrieval context.

  • Use /new to start a fresh conversation and clear the current context window.

Quick commands (examples):

  • "Summarize the latest indexed knowledge about WhatsApp templates"

  • "Find the source of truth for campaign approval behavior"

  • "Start a new topic" (or use /new)

Available RAG models: calypso-rag-agent.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoOptional RAG model variant. Defaults to `calypso-rag-agent`. Available models: calypso-rag-agent.
promptYesYour request. Include context, constraints, and desired output.
fileIdsNoOptional uploaded agent-store `file_id` values to attach with `rag_policy` retrieval semantics.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully explains behavior: maintains conversation state, chains follow-up turns via previous_response_id, uses rag_policy for fileIds, and supports /new to reset context. This goes well beyond what the schema reveals.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is fairly long but organized into sections (Responses API, MCP session, quick commands). Every section adds value, though some repetition (model name listed twice) and length could be trimmed slightly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity and no output schema/annotations, the description covers conversation state, file handling, and usage examples. Missing return format details, but the overall context is sufficiently complete for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds meaning by explaining fileIds trigger rag_policy retrieval semantics, and clarifies model default. This enriches the parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool's verb and resource: 'Sends each prompt directly to the Calypso RAG agent using the full conversation context.' It clearly distinguishes this from sibling tools (which list/upload knowledge files) by focusing on retrieval and grounded answers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit usage context: 'Use this when you want Calypso knowledge retrieval and grounded answers from the RAG backend.' It provides typical request examples and quick commands. However, it does not explicitly mention when NOT to use it or name alternative tools for other actions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calypso-upload-knowledge-fileA

[CALYPSO UPLOAD KNOWLEDGE FILE] Uploads a file into the durable bucket-backed knowledge store and indexing pipeline.

Use this when you want a file indexed into the broader knowledge corpus instead of attached directly to a single RAG chat turn. This tool returns knowledge-file and task metadata. A bucket destination is required: pass bucketIds, bucketSlugs, or bucket. Choose exactly one file source. Use filePath when this MCP server runs locally and can read the path, including Claude Desktop or Cursor configs that launch this package with npx. Use contentBase64 for hosted or remote MCP clients, browser uploads, generated in-memory content, or remote sandbox files that this MCP process cannot read. Do not base64-encode local files just to use this tool.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoOptional tags for knowledge-store organization.
titleNoOptional human-readable title stored with the knowledge file.
bucketNoConvenience single bucket slug for this upload. Required unless bucketIds or bucketSlugs is provided.
filePathNoPreferred for local MCP installs, including Claude Desktop and Cursor configs that run this package with a local command such as npx. Absolute or relative path readable by the machine running this MCP server. The server reads raw bytes and uploads them through the Calypso upload-session URL; no user-side base64 conversion is needed.
filenameYesDisplay filename for the uploaded knowledge file.
metadataNoOptional metadata object serialized onto the upload request.
mimeTypeYesContent type for the uploaded knowledge file.
bucketIdsNoExisting knowledge bucket ids to assign this upload to. Required unless bucketSlugs or bucket is provided.
bucketSlugsNoKnowledge bucket slugs to assign this upload to. Required unless bucketIds or bucket is provided.
contentBase64NoInline file bytes as base64. Use when filePath is not possible, such as hosted or remote MCP servers, browser-provided files, generated content, or remote sandbox attachment paths that the MCP process cannot read.
idempotencyKeyNoOptional idempotency key for durable upload retries.
waitForIndexingNoIf true, wait until indexing reaches a terminal ready state before returning.
createMissingBucketsNoIf true, create missing bucket slugs before assignment.

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses the durable bucket-backed nature, the indexing pipeline, return metadata, the requirement to choose exactly one file source, and explains how filePath avoids base64 conversion. It also mentions idempotency for retries. Some aspects like error conditions or permission needs are not covered, but the description adds significant behavioral context beyond the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core purpose and then efficiently covers usage guidance, parameter selection, and constraints in a compact block. Every sentence adds value; no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite 13 parameters and no output schema, the description is complete: it states what the tool returns, when to use each source parameter, bucket requirements, and optional behaviors like waitForIndexing and createMissingBuckets. It addresses the complexity effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds substantial meaning: it explains the trade-offs between filePath and contentBase64, clarifies the bucket alternatives (bucketIds, bucketSlugs, bucket), and notes the idempotency key's purpose. This goes beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Uploads a file into the durable bucket-backed knowledge store and indexing pipeline', which is a specific verb+resource action. It also distinguishes from siblings by noting this is for the broader knowledge corpus rather than a single RAG chat turn, and indirectly from the batch upload tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit guidance is provided: 'Use this when you want a file indexed into the broader knowledge corpus instead of attached directly to a single RAG chat turn.' It also details when to use filePath vs contentBase64 with concrete examples (local vs hosted/remote), and implies batch tool for multiple files. No alternatives are excluded but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

calypso-upload-knowledge-files-batchA

[CALYPSO UPLOAD KNOWLEDGE FILES BATCH] Uploads 1 to 100 files into the durable knowledge store and indexing queue in one request.

Use this for bulk corpus ingestion. Shared bucket fields apply to every item unless an item provides its own bucket fields. The tool returns batch-level status and, when requested, polls until the batch reaches active, partially_active, partially_failed, failed, or timeout. A shared bucket destination is required unless every item provides its own bucket destination. Choose exactly one file source per item. Use filePath when this MCP server runs locally and can read each path, including Claude Desktop or Cursor configs that launch this package with npx. Use contentBase64 for hosted or remote MCP clients, browser uploads, generated in-memory content, or remote sandbox files that this MCP process cannot read. Do not base64-encode local files just to use this tool.

ParametersJSON Schema
NameRequiredDescriptionDefault
itemsYesKnowledge files to upload in this batch.
bucketNoConvenience single bucket slug applied to all items by default. Required unless every item has a bucket destination.
bucketIdsNoExisting bucket ids applied to all items by default. Required unless every item has a bucket destination.
bucketSlugsNoBucket slugs applied to all items by default. Required unless every item has a bucket destination.
waitForBatchReadyNoIf true, poll batch status with include_items=true until terminal or timeout.
batchIdempotencyKeyYesRequired idempotency key used to derive the durable batch id.
createMissingBucketsNoIf true, create missing shared bucket slugs before assignment.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses write side-effects (durable store, indexing queue), batch status return, optional polling with terminal states, and bucket field override rules. It does not mention all possible failure semantics or idempotency behavior in depth, but the core workflow is transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is longer than minimal but every sentence serves a purpose: purpose, usage, file-source selection, bucket rules, and status behavior. It is well-structured and front-loaded with the main action, then details, with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema or annotations, the description is remarkably complete: it covers the tool's operation, return behavior, polling, and preconditions (bucket destination). It could add more on error handling or what 'batch-level status' contains, but it covers the essentials for a batch upload tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds important contextual meaning: when to use filePath vs contentBase64, and that shared bucket fields are overridden by item-specific fields. This enriches parameter understanding beyond the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool uploads 1 to 100 files into the durable knowledge store and indexing queue in one request, with the explicit use case of bulk corpus ingestion. This distinguishes it from the sibling single-file upload tool by scope and batch behavior.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit usage guidance: use for bulk corpus ingestion. It also provides specific direction on choosing filePath for local MCP installs and contentBase64 for hosted/remote clients, plus a warning not to base64 local files. However, it does not explicitly reference the singular alternative tool (calypso-upload-knowledge-file), so it lacks full alternative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updatesv1.0.40
    • First observedcalypso-list-knowledge-buckets
    • First observedcalypso-rag-agent
    • First observedcalypso-upload-knowledge-file
    • First observedcalypso-upload-knowledge-files-batch

TDQS

A4.3/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: listing buckets, uploading a single file, uploading a batch of files, and querying the RAG agent. The two upload tools are well-separated by single vs. batch semantics, and the descriptions reinforce the boundaries.

Naming Consistency4/5

Most tools follow a consistent `calypso-<verb>-<object>` pattern (list-knowledge-buckets, upload-knowledge-file, upload-knowledge-files-batch). The `calypso-rag-agent` tool deviates as it names a service rather than an action, but the prefix and hyphenation maintain a readable, predictable style.

Tool Count5/5

Four tools is well-scoped for a focused multimodal RAG server. Each tool addresses a core need (bucket discovery, ingestion, bulk ingestion, and retrieval/chat), and none feel redundant or unnecessary.

Completeness4/5

The core workflow is covered: list buckets to find destinations, upload files (single or batch), and query via the RAG agent. Minor gaps exist (no explicit file deletion/update or bucket creation), but they are likely outside the intended scope and do not block the primary use case.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    F
    maintenance
    An MCP server that provides comprehensive multimodal Retrieval-Augmented Generation (RAG) capabilities for processing and querying document directories, supporting text, images, tables, and equations.
    37
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    RAGX MCP Server enables retrieval-augmented generation with document ingestion, hybrid search, and agentic answering using Claude, exposing tools for querying, searching, and managing documents.
    2
    MIT