Skip to main content
Glama
ssm82

syntx-ai-mcp

by ssm82

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
whoamiA

Return an identity check for the current syntx.ai user: { authenticated, user } where user is a sanitised public profile (id, user_id, name, username, email, avatar, auth_services). Internal identifiers such as chatwoot_hmac / ym_client_id are intentionally stripped. This tool NEVER errors on missing/invalid tokens — it returns { authenticated: false } instead. Use it to verify authentication status. Real failures (network/API errors) still raise an MCP error so you can tell "not logged in" from "API unreachable".

set-tokenA

Set or replace the syntx.ai bearer token used by the server at runtime. Call this before any authenticated operation if SYNTX_TOKEN was not configured. The token is held in memory only — it is not persisted to disk and is lost when the process restarts. stdio only: this tool is rejected over the HTTP transport to prevent a remote client from hijacking the process-shared bearer (H4). Configure the token via the SYNTX_TOKEN env variable when running with --transport http.

get-profileA

Return the current user profile (sanitised public fields: id, user_id, name, username, email, avatar, auth_services). Internal identifiers such as chatwoot_hmac / ym_client_id are stripped before returning. Requires authentication — raises a clear error when no token is set. For a non-erroring identity check, use whoami which returns { authenticated, user }.

get-balanceA

Return the current token balance for the authenticated user.

list-ai-servicesA

List all syntx.ai AI services (e.g. ChatGPT, Midjourney, Sora) with their scope and status.

list-modelsA

List AI models with upload constraints, supported media types, and features. Filters (all optional, combined with AND): scope (text|image|video|audio|upscale), ai_name (exact match, e.g. "chatgpt"), active_only (default true), search (case-insensitive substring against value/label).

get-model-infoB

Return detailed information about a specific AI model (pricing/cost params, limits).

list-chatsC

List the user chats, optionally filtered by scope or a search query.

create-chatA

Create a new syntx.ai chat session and return its UUID. A title is required by the API.

get-messagesB

Return the message history of a chat (by UUID or numeric id).

send-messageA

Send a message (prompt) with optional uploaded-file attachments to an existing chat and return immediately. The assistant response is generated asynchronously — poll with wait-for-response or use ask / stream-message for a single blocking call.

wait-for-responseA

Block until the latest assistant message in a chat finishes generating, then return its text and media URLs. Resolves when every message_object[i].completed === true — including image / video / audio / file-only replies. Respects the server poll interval/timeout. Use after send-message.

askA

One-shot helper: create a chat, send a prompt, wait for the completed assistant reply, and return it. Ideal for stateless Q&A. The created chat UUID is included in the response for follow-ups. Set mode: "stream" to opt into real-time token delivery (default behaviour is controlled by SYNTX_STREAM_MODE).

stream-messageA

One-shot streaming chat: opens a WSS connection, sends the prompt, and streams the assistant reply in real time. Intermediate progress is reported via notifications/progress (when the client supplies a progressToken); the final tool result contains the complete text. Falls back to REST polling on transport failure unless mode: "stream" is passed explicitly.

delete-chatA

Permanently delete a chat. Mirrors syntx.chats.delete. Issues DELETE /api/v1/chats/{chat_id}. This action is destructive and cannot be undone.

get-inprogressA

Return the in-progress generations for a chat. Mirrors syntx.chats.getInProgress. Hits GET /api/v1/chats/{chat_id}/inprogress. An empty array means nothing is currently generating; otherwise each entry describes an active assistant object (model, object_type, created_at, task_id). Used internally by wait-for-response to gate on prior requests.

get-favorite-messagesA

Return the favorite (bookmarked) messages for a chat. Mirrors syntx.chats.getFavoriteMessages. Hits GET /api/v1/chats/favorite/{chat_id}/messages. This is the only way to read starred messages through MCP — get-messages does not include them.

generate-imageA

Generate one or more images on syntx.ai using a design service (e.g. sora-images, flux). Requires a target chat UUID; the result includes generation metadata returned by the API.

list-uploaded-filesB

List files previously uploaded to the syntx.ai account.

upload-filesA

Upload one or more files to the syntx.ai account. Each file entry accepts either path (server-side file path, e.g. "C:\photo.jpg") OR content_base64 (inline base64, with optional data:<mime>;base64, prefix). For base64 entries, filename is required; mime_type is auto-guessed from extension if omitted. Max 10 files per call, 100 MB each. Returns { files: [{ url, filename, size, mime_type }] }.

delete-fileA

Permanently delete an uploaded file. Accepts either file_id (the historical behaviour) or url (the uploaded R2 URL, mirroring the SPA's file-storage.remove). Exactly one of the two must be provided.

transcribeA

Transcribe an audio file to text via syntx.ai (POST /api/v1/audio/transcribe). Provide a single file either as path (server filesystem; stdio transport only) or as content_base64 with filename. IMPORTANT: when the server runs over the HTTP transport, path is rejected (arbitrary server-side file reads by remote clients) — use content_base64 instead. Limit 50 MB; accepted formats: mp3, wav, mpeg. Returns { text }.

generate-audioA

Generate audio (TTS, voice change, music) via syntx.ai. Mirrors syntx.audio.generate and the SPA ai-audio.sendMessage flow. Posts to POST /api/v1/audio/generate?ai_name={ai_name}. Requires a target chat UUID (use create-chat first). The result includes generation metadata returned by the API; follow up with wait-for-response or get-messages to read the completed audio URL once the model finishes.

generate-videoA

Generate a video via syntx.ai. Mirrors syntx.video.generate and the SPA ai-video.sendMessage flow. Posts to POST /api/v1/video/generate?ai_name={ai_name}. Requires a target chat UUID (use create-chat first). Generation is long-running — poll the resulting chat with wait-for-response or get-messages to read the completed video URL once the model finishes.

list-projectsA

List projects (a.k.a. folders) for a given scope. Mirrors syntx.folders.listTextFolders / listImageFolders / listVideoFolders / listAudioFolders. Hits GET /api/v1/folders/{scope}/list. Returns an array of Folder items.

create-projectA

Create a syntx.ai project (a.k.a. folder) and optionally seed it with existing chats. Returns the created project as JSON (uuid, title, scope, color, chats). Mirrors syntx.folders.create.

add-chats-to-projectA

Add one or more existing chats to an existing project. Mirrors syntx.folders.addChats. Sends a bare JSON array of chat UUIDs to POST /api/v1/folders/{folder_uuid}/add.

delete-projectA

Permanently delete a syntx.ai project (a.k.a. folder). Mirrors syntx.folders.delete. Issues DELETE /api/v1/folders/{folder_uuid}/delete. This action is destructive and cannot be undone.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/ssm82/syntx-ai-mcp'

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