Skip to main content
Glama
johnqh

ShapeShyft API MCP Server

by johnqh

ShapeShyft API MCP Server

MCP-Server (Model Context Protocol), der die ShapeShyft-API beschreibt und steuert – die Plattform für strukturierte LLM-Ausgaben, auf der jeder konfigurierte Endpunkt zu einer REST-URL wird, die schema-konformes JSON zurückgibt.

Es bietet einem KI-Assistenten vier Dinge:

  • 61 Tools, die jede ShapeShyft-API-Route abdecken – Entitäten, LLM-Provider-Schlüssel, Projekte, Endpunkte, Analysen, Rate Limits, Speicher, Benutzer und KI-Aufrufe.

  • 6 Dokumentationsressourcen, die die API selbst beschreiben (Überblick, Routen, Datenmodell, Beispiele, Fehler, Provider) – lesbar ohne Anmeldedaten und ohne Netzwerkaufruf.

  • 3 Prompt-Vorlagen für häufige Arbeitsabläufe: Endpunkt einrichten, einen debuggen, eine Entität prüfen.

  • Der /shapeshyft-endpoint-Skill – ein geführter Arbeitsablauf zum Erstellen, Aufrufen, Debuggen und Prüfen von Endpunkten, geliefert als Claude-Code-Plugin.

Paket: @sudobility/shapeshyft_api_mcp (BUSL-1.1)

Installation

bun install

Related MCP server: Swagger MCP Server

Konfiguration

Einen Schlüssel erhalten

Erstellen Sie einmalig einen persönlichen API-Schlüssel unter shapeshyft.ai → Dashboard → Einstellungen → Persönliche API-Schlüssel → benennen Sie ihn → Schlüssel erstellen. Er beginnt mit shyft_ und läuft nicht ab. Übergeben Sie ihn dem Server und lassen Sie ihn ihn sich merken:

set_credentials({ apiKey: "shyft_...", persist: true })
// or, for an unattended agent that should act as the workspace:
set_credentials({ entityApiKey: "shyftent_...", persist: true })

Das schreibt ~/.shapeshyft/config.json (Modus 0600), sodass spätere Sitzungen authentifiziert starten, ohne dass etwas weiteres konfiguriert werden muss.

Auflösung der Anmeldedaten

Höchste Priorität zuerst:

  1. Ein explizites Tool-Argument (z. B. apiKey bei invoke_endpoint)

  2. Umgebungsvariablen

  3. ~/.shapeshyft/config.json

Variable

Erforderlich

Beschreibung

SHAPESHYFT_API_URL

Nein

Basis-URL der API. Standard https://api.shapeshyft.ai; für lokale Entwicklung http://localhost:3000 verwenden

SHAPESHYFT_API_KEY

Für Admin-Tools

Persönlicher API-Schlüssel (shyft_...) – bevorzugt, läuft nie ab

SHAPESHYFT_AUTH_TOKEN

Nur zum Erstellen/Anzeigen von Schlüsseln

Firebase-ID-Token des angemeldeten Benutzers

SHAPESHYFT_PROJECT_API_KEY

Für KI-Tools

Projekt-API-Schlüssel (sk_live_...)

SHAPESHYFT_ENTITY_SLUG

Nein

Standard-Entitäts-Slug, sodass Tools entitySlug weglassen können

SHAPESHYFT_ORG_PATH

Nein

Standard-Organisationspfad in KI-URLs (Standard ist der Entitäts-Slug)

SHAPESHYFT_CONFIG_PATH

Nein

Überschreibt den Speicherort der Konfigurationsdatei

Der Server startet ohne jegliche Anmeldedaten – die Dokumentationsressourcen, der Provider-Katalog und die Health-Checks sind öffentlich. Tools, die eine Anmeldedaten benötigen, geben einen klaren Fehler zurück, der erklärt, wie man sie erhält.

Zwei Schlüsseltypen, verschiedene Aufgaben. shyft_... ist ein persönlicher Schlüssel, der Sie gegenüber den Admin-Routen authentifiziert. sk_live_... ist ein Projektschlüssel, der Aufrufern erlaubt, die KI-Endpunkte eines Projekts aufzurufen. Das Erstellen und Anzeigen persönlicher Schlüssel ist das Einzige, was ein persönlicher Schlüssel nicht kann – dafür ist ein Firebase-ID-Token erforderlich, sodass ein geleakter Schlüssel keine weiteren erstellen kann.

Option A: Als Claude-Code-Plugin installieren (empfohlen)

Dadurch werden die MCP-Tools, die Dokumentationsressourcen und die /shapeshyft-endpoint-Skill in jedem Projekt verfügbar.

# Register this repo as a marketplace, then install the plugin from it
claude plugin marketplace add /path/to/shapeshyft_api_mcp
claude plugin install shapeshyft@shapeshyft

Überprüfen Sie mit claude plugin details shapeshyft@shapeshyft, das die Skill und den MCP-Server auflistet.

Das Plugin wird als Kopie unter ~/.claude/plugins/cache/shapeshyft/ installiert. Änderungen in diesem Repository werden daher erst wirksam, wenn Sie sowohl den Marketplace als auch das Plugin aktualisieren:

claude plugin marketplace update shapeshyft
claude plugin update shapeshyft@shapeshyft

Die Kopie enthält node_modules. Führen Sie daher vor der Installation oder Aktualisierung bun install aus – der Server läuft direkt aus src/index.ts.

Das Plugin wird definiert durch:

  • .claude-plugin/plugin.json – Plugin-Metadaten

  • .claude-plugin/marketplace.json – Marketplace-Eintrag

  • .mcp.json – MCP-Server-Deklaration (liest SHAPESHYFT_* aus Ihrer Umgebung)

  • skills/shapeshyft-endpoint/ – die /shapeshyft-endpoint-Skill

Option B: Den MCP-Server manuell hinzufügen

Fügen Sie zu .claude/settings.json (oder .mcp.json) hinzu:

{
  "mcpServers": {
    "shapeshyft-api": {
      "command": "bun",
      "args": ["run", "/path/to/shapeshyft_api_mcp/src/index.ts"]
    }
  }
}

In der Konfiguration sind keine Anmeldedaten erforderlich: Führen Sie einmalig set_credentials({ apiKey, persist: true }) aus, und der Schlüssel liegt in ~/.shapeshyft/config.json statt in einer Einstellungsdatei, die möglicherweise eingecheckt wird. Umgebungsvariablen funktionieren weiterhin und haben Vorrang.

Tools

Dokumentation und Health

Tool

Zweck

describe_shapeshyft_api

Liest die gebündelten API-Dokumente (overview, routes, data-model, examples, errors, providers)

get_configuration

Zeigt die effektive API-URL, Standardwerte und welche Anmeldedaten vorhanden sind (geschwärzt)

set_credentials

Setzt API-Schlüssel, Token, Projekt-Schlüssel, URL oder Standardwerte – mit persist zum Speichern

clear_stored_credentials

Entfernt gespeicherte Geheimnisse aus der Konfigurationsdatei, behält Einstellungen

check_api_health

GET /health oder /health/ready für den Datenbank-Check

get_api_info

GET / – Name, Version, Status

Identität und persönliche API-Schlüssel

Tool

Zweck

get_current_user

GET /users/me – wem die aktuelle Anmeldedaten gehören und wie sie authentifiziert wurde

list_api_keys, get_api_key

Schlüssel-Metadaten (niemals das Geheimnis)

create_api_key, reveal_api_key

Schlüssel erstellen oder erneut lesen – Firebase-Token erforderlich

update_api_key

Umbenennen oder is_active: false, um einen Schlüssel reversibel zu pausieren

delete_api_key

Dauerhafte Widerrufung

Provider (öffentlich)

list_providers, get_provider, list_provider_models

Modelleinträge enthalten Fähigkeiten (Bild-/Audio-/Videoeingabe, Medienausgabe, Websuche) und Preise in Cent – prüfen Sie sie, bevor Sie ein model auf einem Endpunkt festlegen.

KI-Aufruf (Projekt-API-Schlüssel)

Tool

Zweck

invoke_endpoint

Endpunkt ausführen → { output, usage, generated_media? }

preview_endpoint_prompt

Prompt ohne LLM-Aufruf erstellen – kostenlos, ideal zum Debuggen

Entitäten, Mitglieder, Einladungen (Firebase-Authentifizierung)

list_entities, get_entity, create_entity, update_entity, delete_entity, list_entity_members, update_member_role, remove_entity_member, list_entity_invitations, invite_member, renew_invitation, cancel_invitation, list_my_invitations, accept_invitation, decline_invitation

LLM-Provider-Schlüssel

list_llm_keys, get_llm_key, create_llm_key, update_llm_key, delete_llm_key

Projekte

list_projects, get_project, create_project, update_project, delete_project, get_project_api_key, refresh_project_api_key

Endpunkte

list_endpoints, get_endpoint, create_endpoint, update_endpoint, delete_endpoint

Analysen, Rate Limits, Speicher, Benutzer

get_analytics · get_rate_limits, get_rate_limit_history · get_storage_config, set_storage_config, update_storage_config, delete_storage_config · get_user_info, get_user_subscription, get_user_settings, update_user_settings

Ressourcen

URI

Inhalt

shapeshyft://api/overview

Architektur, Objekthierarchie, Authentifizierungsschemata, Aufruflebenszyklus, Grenzen

shapeshyft://api/routes

Jede Route mit Methode, Authentifizierung, Parametern und Antwort

shapeshyft://api/data-model

Objektformen, Rate-Limit-Stufen, Datenbanktabellen

shapeshyft://api/examples

End-to-End-Einrichtung, curl/TypeScript/Python, Schema-Muster, multimodal

shapeshyft://api/errors

Fehlerhülle, Statuscodes, Fehlerbehebung

shapeshyft://api/providers

Providerliste, Modellauswahl, multimodale Pipeline, Transkription

Prompts

setup_structured_endpoint · debug_endpoint · audit_entity

Beispielsitzung

describe_shapeshyft_api({ section: "examples" })
list_entities()                                  -> entitySlug "acme"
create_llm_key({ key_name: "Prod Anthropic", provider: "anthropic", api_key: "sk-ant-..." })
create_project({ project_name: "support-tools", display_name: "Support Tools" })
create_endpoint({ projectId, endpoint_name: "classify-ticket", llm_key_id,
                  model: "claude-sonnet-4-6-20260217",
                  instructions: "Classify the ticket and judge sentiment.",
                  output_schema: { type: "object", properties: {
                    category:  { type: "string", enum: ["billing", "bug", "feature", "other"] },
                    sentiment: { type: "string", enum: ["positive", "neutral", "negative"] }
                  }, required: ["category", "sentiment"] } })
get_project_api_key({ projectId })
invoke_endpoint({ projectName: "support-tools", endpointName: "classify-ticket",
                  input: { text: "You billed me twice this month." } })
  -> { output: { category: "billing", sentiment: "negative" },
       usage: { tokens_input: 312, tokens_output: 18, latency_ms: 940,
                estimated_cost_cents: 0.11 } }

Der /shapeshyft-endpoint-Skill

Mit dem Plugin installiert, leitet die Skill eine Anfrage in einen von vier Abläufen und prüft Anmeldedaten, bevor sie etwas anfasst:

Ablauf

Abdeckung

A – Erstellen

Aufgabe → Ausgabeschema → Provider-Schlüssel → Modell → Projekt → Endpunkt → verifizierter Aufruf

B – Aufrufen

Namen auflösen, Eingabe durch einen Endpunkt ausführen, Ausgabe plus Kosten und Latenz melden

C – Debuggen

401/404/405/429 einer Ursache zuordnen; Schema-Konformitäts- und Qualitätsprobleme beheben

D – Prüfen

Schlüssel, Projekte und Endpunkte inventarisieren; Ausgaben, Fehler und Kontingentreserven überprüfen

Verwendung:

/shapeshyft-endpoint

Oder beschreiben Sie einfach, was Sie möchten:

„Machen Sie aus diesem Klassifizierungs-Prompt eine API" „Mein Endpunkt gibt immer wieder die falsche Kategorie zurück" „Was kosten meine ShapeShyft-Endpunkte in diesem Monat?"

Gebündelte Referenzen:

  • skills/shapeshyft-endpoint/references/creating-endpoints.mdcreate_endpoint-Feldreferenz und sechs ausgearbeitete Rezepte, die jeweils eine Eingabe-Payload mit ihren Schemas und der Antwort kombinieren

  • skills/shapeshyft-endpoint/references/schema-design.md – Ausgabeschemas, die Modelle tatsächlich erfüllen

  • skills/shapeshyft-endpoint/references/model-selection.md – Auswahl eines Providers und Modells anhand von Fähigkeiten und Preisen

Entwicklung

bun run dev        # Run the server over stdio
bun run build      # Bundle to dist/index.js
bun run typecheck  # TypeScript check
bun run verify     # typecheck + build
bun run start      # Run the production bundle

Validieren Sie das Plugin und die Skill nach der Bearbeitung:

claude plugin validate .        # marketplace + plugin manifests
claude plugin validate skills   # skill frontmatter and structure

Projektstruktur

src/
├── index.ts            # Entry: env config, registration, stdio transport
├── client.ts           # HTTP client: auth-mode routing, envelope unwrapping
├── prompts.ts          # Prompt templates
├── resources/          # Embedded API documentation (resources + describe_shapeshyft_api)
└── tools/              # One module per route family

skills/
└── shapeshyft-endpoint/
    ├── SKILL.md                        # The /shapeshyft-endpoint skill
    └── references/
        ├── creating-endpoints.md       # create_endpoint recipes with payload examples
        ├── schema-design.md            # Output schema design guide
        └── model-selection.md          # Provider and model selection guide

.claude-plugin/         # plugin.json + marketplace.json
.mcp.json               # MCP server declaration used by the plugin

Architektur

AI assistant (Claude Code / Claude Desktop)
    ↕ stdio (MCP protocol)
ShapeShyft API MCP server (this project)
    ↕ HTTP / REST
ShapeShyft API (Hono on Bun, PostgreSQL)
    ↕
10 LLM providers (OpenAI, Anthropic, Gemini, Groq, Mistral, xAI, DeepSeek,
                  Perplexity, Cohere, LM Studio)

Der Server ist ein schlanker HTTP-Client. Jedes Tool ist einer REST-Route zugeordnet, und der richtige Authorization-Header wird aus der Routenfamilie gewählt: ein Firebase-ID-Token für Admin-Routen, der Projekt-API-Schlüssel für /api/v1/ai/*, nichts für öffentliche Routen. Antworten werden aus der { success, data, timestamp }-Hülle entpackt; Fehler werden als MCP-Tool-Fehler zurückgegeben, die den HTTP-Status und alle Provider-details enthalten.

Verwandte Projekte

  • shapeshyft_api – das Hono-Backend, das dieser Server umschließt

  • shapeshyft_types – gemeinsame TypeScript-Typdefinitionen

  • shapeshyft_client – API-Client-Hooks für Web-/Native-Apps

  • shapeshyft_lib – Business-Logik-Stores

  • shapeshyft_app – React-Web-Frontend

Lizenz

BUSL-1.1

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

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/johnqh/shapeshyft_api_mcp'

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