Integrations
Enables environment-based configuration of API keys and server settings through .env file management
Supports development mode with automatic server reloading when code changes are detected
Provides access to OpenAI models (GPT) and DALL-E image generation through a unified API, supporting chat completions, legacy completions, and tool calling
Model Context Protocol (MCP)-Server
Eine einfache Serverimplementierung für das Model Context Protocol, die eine einheitliche API für mehrere KI-Modellanbieter bereitstellt.
Merkmale
- Einheitliche API für mehrere KI-Anbieter (Anthropic, OpenAI)
- Unterstützung für Chat-Vervollständigungen und Legacy-Vervollständigungen
- Unterstützung für Tool-Aufrufe
- Kontext-/Systemnachrichtenverarbeitung
- Umgebungsbasierte Konfiguration
- MongoDB-Datenbank für Persistenz und Statusverwaltung
- Tool-Ausführungsverlauf und -Analyse
Installation
Das Setup-Skript führt Sie durch die Konfiguration der erforderlichen API-Schlüssel:
ANTHROPIC_API_KEY
– Für Claude-ModelleOPENAI_API_KEY
– Für GPT-Modelle und DALL-E-BildgenerierungSTABILITY_API_KEY
- Für die Erzeugung stabiler DiffusionsbilderGOOGLE_CSE_API_KEY
undGOOGLE_CSE_ID
– Für die WebsuchfunktionBING_SEARCH_API_KEY
– Für die Fallback-Websuche
Sie können die .env
Datei auch manuell bearbeiten, wenn Sie möchten.
MongoDB-Setup
Der MCP-Server verwendet MongoDB zur Datenpersistenz. Sie haben mehrere Möglichkeiten, MongoDB einzurichten:
Option 1: Automatisierte Einrichtung (empfohlen)
Führen Sie das MongoDB-Setup-Skript aus, das Sie durch den Vorgang führt:
Dieses Skript wird:
- Überprüfen Sie, ob Docker verfügbar ist
- Starten Sie MongoDB mit Docker Compose (falls verfügbar).
- Konfigurieren Sie die Verbindung in Ihrer .env-Datei
- Überprüfen der MongoDB-Verbindung
Option 2: Manuelles Docker-Setup
Der einfachste Weg, mit MongoDB zu beginnen, ist die Verwendung der enthaltenen Docker Compose-Konfiguration:
MongoDB wird unter mongodb://mcpuser:mcppassword@localhost:27017/mcp-server
verfügbar sein.
Mongo Express (Webadministrator) ist unter http://localhost:8081 verfügbar.
Option 3: Lokale MongoDB-Installation
Wenn Sie MongoDB lieber lokal installieren möchten:
- Installieren Sie MongoDB von https://www.mongodb.com/try/download/community
- Starten Sie den MongoDB-Dienst
- Aktualisieren Sie Ihre
.env
Datei mit:Copy
Option 4: MongoDB Atlas (Cloud)
Für den Produktionseinsatz wird MongoDB Atlas empfohlen:
- Erstellen Sie ein Konto unter https://www.mongodb.com/cloud/atlas
- Erstellen eines neuen Clusters
- Richten Sie einen Datenbankbenutzer ein und setzen Sie Ihre IP-Adresse auf die Whitelist
- Rufen Sie Ihre Verbindungszeichenfolge ab und aktualisieren Sie Ihre
.env
Datei:Copy
Datenbankmigration
So migrieren Sie vorhandene Daten zu MongoDB:
Dieses Skript wird:
- Migrieren von Tooldefinitionen zu MongoDB
- Migrieren Sie Konfigurationen (wie API-Schlüssel) zu MongoDB
- Importieren Sie alle Sicherungsdaten, falls verfügbar
Verwendung
Starten Sie den Server
Der Server wird unter http://localhost:3000 (oder dem Port, den Sie in .env angegeben haben) ausgeführt.
Startoptionen
- Standardstart (
npm start
):- Überprüft, ob API-Schlüssel konfiguriert sind
- Fordert zur Einrichtung auf, wenn keine Schlüssel gefunden werden
- Empfohlen für Erstbenutzer
- Entwicklungsmodus (
npm run dev
):- Verwendet Nodemon zum automatischen Neuladen bei Codeänderungen
- Führt weiterhin Umgebungsprüfungen durch
- Am besten für die Entwicklung
- Schnellstart (
npm run quick-start
):- Umgeht alle Umgebungsprüfungen
- Startet den Server sofort
- Nützlich, wenn Sie wissen, dass Ihre Konfiguration korrekt ist
- PM2-Produktionsmodus (
npm run pm2:start:prod
):- Führt den Server mit dem PM2-Prozessmanager aus
- Automatischer Neustart bei Serverabsturz
- Optimiert für Produktionsumgebungen
- Umgeht Umgebungsprüfungen
Verwenden des PM2 Process Managers
Der Server kann mit PM2, einem Produktionsprozessmanager für Node.js-Anwendungen, betrieben werden. PM2 bietet Funktionen wie:
- Prozessmanagement (Neustart bei Absturz)
- Protokollverwaltung
- Leistungsüberwachung
- Lastenausgleich (für mehrere Instanzen)
PM2-Befehle
Die PM2-Konfiguration ist in ecosystem.config.js
gespeichert. Sie können diese Datei bearbeiten, um Folgendes zu ändern:
- Prozessname
- Umgebungsvariablen
- Speichergrenzen
- Bereitstellungskonfiguration
- Anzahl der Instanzen (für Lastenausgleich)
API-Endpunkte
POST /mcp/:provider
Stellen Sie Anfragen an KI-Modelle über eine einheitliche API.
URL-Parameter:
provider
: Der zu verwendende KI-Anbieter (anthropic
oderopenai
)
Anforderungstext:
ODER (Legacy-Format):
Antwort: Gibt die Rohantwort von der API des Anbieters zurück.
GET /tools/available
Erhalten Sie eine umfassende Liste aller verfügbaren Tools mit detaillierten Informationen.
Abfrageparameter:
format
– Antwortformat:json
(Standard),yaml
,table
oderhtml
category
– Werkzeuge nach Kategorie filtern (optional)enabled
– Filtern nach aktiviertem Status:true
(Standard) oderfalse
search
– Suche nach Werkzeugen nach Name, Beschreibung oder Tagsprovider
– Tools nach Anbieter filtern (z. B.openai
,google
)limit
– Maximale Anzahl der zurückzugebenden Tools (für die Seitennummerierung)offset
– Offset für die Seitennummerierung (Standard: 0)
Antwort (JSON-Format):
GET /health
Integritätsprüfungsendpunkt, der den Status 200 zurückgibt, wenn der Server läuft.
Datenmanagement
Datenbanksicherungen
Sie können Datenbanksicherungen erstellen und verwalten:
Testen der Datenbankverbindung
So überprüfen Sie Ihr MongoDB-Setup:
Beispielkunden
Befehlszeilenclient
Ein Testclient ist in src/client.js
enthalten. So führen Sie ihn aus:
Webclient
Bei laufendem Server steht unter http://localhost:3000 eine einfache Weboberfläche zur Verfügung. Damit können Sie die API direkt im Browser testen.
Verfügbare Tools
Der MCP-Server bietet einen Endpunkt zur Tool-Erkennung, der es Benutzern und KI-Agenten ermöglicht, alle verfügbaren Tools programmgesteuert aufzulisten:
Tools-Erkennung
GET /tools/available
– Listet alle verfügbaren Tools mit detaillierten Informationen auf.
- Unterstützt mehrere Formate: JSON, YAML, HTML und ASCII-Tabellen
- Bietet Filterung nach Kategorie, Anbieter und Suchbegriffen
- Enthält detaillierte Metadaten und Anwendungsbeispiele für jedes Tool
Anwendungsbeispiel:
Websuchtools
Der Server enthält integrierte Websuch- und -abruftools:
- Websuche (
/tools/web/search
)- Durchsuchen Sie das Web nach Informationen zu einer bestimmten Abfrage
- Parameter:
query
(erforderlich),limit
(optional) - Erfordert:
GOOGLE_CSE_API_KEY
undGOOGLE_CSE_ID
Umgebungsvariablen - Fällt auf
BING_SEARCH_API_KEY
zurück, wenn die Google-Suche fehlschlägt
- Webinhalt (
/tools/web/content
)- Abrufen und Extrahieren von Inhalten von einer bestimmten URL
- Parameter:
url
(erforderlich),useCache
(optional)
- Web-Batch (
/tools/web/batch
)- Inhalte von mehreren URLs parallel abrufen
- Parameter:
urls
(erforderliches Array),useCache
(optional)
Werkzeuge zur Bildgenerierung
Der Server enthält außerdem Tools zur Bildgenerierung, -bearbeitung und -variation:
- Bild generieren (
/tools/image/generate
)- Generieren Sie ein Bild basierend auf einer Textaufforderung
- Parameter:
prompt
(erforderlich): Detaillierte Beschreibung des Bildesprovider
(optional):openai
oderstability
(Standard istopenai
)options
(optional): Anbieterspezifische Optionen
- Bild bearbeiten (
/tools/image/edit
)- Bearbeiten eines vorhandenen Bilds mit einer Textaufforderung
- Parameter:
imagePath
(erforderlich): Pfad zum zu bearbeitenden Bildprompt
(erforderlich): Beschreibung der vorzunehmenden ÄnderungmaskPath
(optional): Pfad zu einem Maskenbild
- Bildvariante erstellen (
/tools/image/variation
)- Erstellen Sie eine Variation eines vorhandenen Bildes
- Parameter:
imagePath
(erforderlich): Pfad zum Bild, von dem Variationen erstellt werden sollen
Hinweis: Um diese Tools zu verwenden, müssen Sie API-Schlüssel in Ihrer
.env
Datei festlegen:
- Für OpenAI-Bilder:
OPENAI_API_KEY
- Für Stabilitäts-KI-Bilder:
STABILITY_API_KEY
- Für die Websuche:
GOOGLE_CSE_API_KEY
undGOOGLE_CSE_ID
Tool-Integration mit KI-Modellen
Der MCP-Server übernimmt automatisch den Tool-Aufruf und die Ausführung mit KI-Modellen. Wenn ein Modell ein Tool verwendet, führt der Server Folgendes aus:
- Führt das angeforderte Tool mit den angegebenen Parametern aus
- Gibt die Antwort des Tools an das Modell zurück
- Das Modell kann dann die Antwort des Tools in seine endgültige Antwort integrieren
Tool Discovery für KI-Modelle
KI-Modelle können den Endpunkt /tools/available
nutzen, um herauszufinden, welche Tools verfügbar sind und wie sie verwendet werden können. Dies ist besonders nützlich für:
- Dynamische Toolerkennung während der Laufzeit
- Selbstdokumentation für KI-Agenten
- KI-Systeme in die Lage versetzen, sich an vorhandene Kapazitäten anzupassen
Beispielhafte Systemaufforderung für KI-Modelle:
Beispiel für die Verwendung des Tools
Beispielcode zur Demonstration der Toolverwendung finden Sie im Verzeichnis /examples
.
Hinzufügen neuer Anbieter oder Tools
Hinzufügen neuer KI-Anbieter
So fügen Sie neue KI-Anbieter hinzu:
- Fügen Sie das SDK des Anbieters zum Projekt hinzu
- Erstellen Sie eine neue Handlerfunktion in
server.js
- Fügen Sie einen neuen Fall im Hauptroutenhandler hinzu
Neue Tools hinzufügen
So fügen Sie dem Server neue Tools hinzu:
- Erstellen Sie eine neue Tool-Implementierung im Verzeichnis
/src/tools
- Fügen Sie die Tooldefinition zu
tool-definitions.js
hinzu - Aktualisieren Sie die Tool-Ausführungsfunktionen in
server.js
- Fügen Sie neue API-Endpunkte für die direkte Tool-Nutzung hinzu (falls erforderlich)
Lizenz
ISC
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Ein einheitlicher API-Server, der die Interaktion mit mehreren KI-Modellanbietern wie Anthropic und OpenAI über eine konsistente Schnittstelle ermöglicht und Chat-Vervollständigungen, Tool-Aufrufe und Kontextverarbeitung unterstützt.
Related MCP Servers
- -securityAlicense-qualityThis server facilitates the invocation of AI models from providers like Anthropic, OpenAI, and Groq, enabling users to manage and configure large language model interactions seamlessly.Last updated -4PythonMIT License
- -security-license-qualityAn open standard server implementation that enables AI assistants to directly access APIs and services through Model Context Protocol, built using Cloudflare Workers for scalability.Last updated -TypeScript
- -securityFlicense-qualityA modern AI service proxy that enables interaction with multiple AI providers (Anthropic Claude, OpenAI) through a unified API, deployed globally using Cloudflare Workers.Last updated -13TypeScript
- AsecurityFlicenseAqualityA Model Context Protocol server that enables AI assistants to interact with the Omi API for retrieving and creating conversations and memories for users.Last updated -4TypeScript