sgcAI Feature Matrix — LLM Chat, MCP, Embeddings, Speech | eSeGeCe

sgcAI Feature Matrix

Everything sgcAI does, mapped across the 15 components on the SGC AI palette page. Chat with seven model providers through one component, host or consume a Model Context Protocol server, index your own data as vectors, and drive the whole thing by voice. Every license ships full source code. Click a component for its own page with properties, events and examples.

sgcAI is self-contained. Everything in the tables below ships in one package, together with the sgcWebSockets Core runtime the components are built on. There is no base license to buy.

sgcAI is a Windows product. The AI package is compiled under MSWINDOWS only, so 13 of the 15 palette components are registered for Win32 and Win64 and do not build for macOS, Linux, iOS or Android.

The two Model Context Protocol components, TsgcWSAPIServer_MCP and TsgcWSAPIClient_MCP, are the exception. They carry no platform restriction and run wherever the sgc HTTP stack runs. See Platforms & languages below.

Chat & agents

7 providers, 4 components

Model Context Protocol

Client and server

Embeddings & vectors

RAG over your own data

Text to speech

System, Google, Amazon

Audio capture

MCI and Wave

Platforms & languages

Windows Win32 and Win64, MCP pair cross-platform

Fifteen Palette Components

All of them register on a single palette page named SGC AI.

ComponentClassFamilyDescription
AI ChatTsgcAIChatChatOne chat client for OpenAI, Anthropic, Gemini, DeepSeek, Ollama, Grok and Mistral.
OpenAI ChatBotTsgcAIOpenAIChatBotChatVoice chatbot: record, transcribe with Whisper, answer, speak the reply.
OpenAI TranslatorTsgcAIOpenAITranslatorChatSpeech in, speech out translation to English.
OpenAI AssistantTsgcAIOpenAIAssistantChatAssistants API: threads, runs, File Search, Code Interpreter, function calling.
MCP ServerTsgcWSAPIServer_MCPMCPPublish tools, prompts and resources over HTTP or HTTP Streamable.
MCP ClientTsgcWSAPIClient_MCPMCPConsume any MCP server over HTTP, HTTP Streamable or stdio.
OpenAI EmbeddingsTsgcAIOpenAIEmbeddingsVectorsGenerate embeddings from text or a file and query the nearest match.
Vector Database (File)TsgcAIDatabaseVectorFileVectorsLocal file-backed vector store, no server and no account.
Vector Database (Pinecone)TsgcAIDatabaseVectorPineconeVectorsManaged vector index through the Pinecone REST API.
Text to Speech (System)TsgcTextToSpeechSystemSpeechSpeaks through the engine installed on the machine, no key required.
Text to Speech (Google)TsgcTextToSpeechGoogleSpeechGoogle Cloud Text-to-Speech with service account authentication.
Text to Speech (Amazon)TsgcTextToSpeechAmazonSpeechAmazon Polly with signed AWS requests and SSML support.
Audio Recorder (MCI)TsgcAudioRecorderMCIAudioMicrophone capture to a WAV file with silence detection.
Audio Recorder (Wave)TsgcAudioRecorderWaveAudioStreaming microphone capture with full control of the sample format.
Audio Player (MCI)TsgcAudioPlayerMCIAudioPlayback with a genuine end-of-playback notification.

Large Language Models

Seven providers reached through one Provider property, plus three OpenAI components for voice and agent scenarios.

CapabilityComponentNotes
OpenAITsgcAIChatProvider := aicpOpenAI. GPT models through the Chat Completions API.
AnthropicTsgcAIChatProvider := aicpAnthropic. Claude models through the Messages API.
Google GeminiTsgcAIChatProvider := aicpGemini.
DeepSeekTsgcAIChatProvider := aicpDeepSeek. deepseek-chat and deepseek-reasoner.
Ollama (local models)TsgcAIChatProvider := aicpOllama. ChatOptions.BaseUrl points at your own host, nothing leaves the machine.
xAI GrokTsgcAIChatProvider := aicpGrok.
MistralTsgcAIChatProvider := aicpMistral.
Blocking callTsgcAIChatChat(aMessage) returns the assistant text.
StreamingTsgcAIChatChatStream plus OnChatStream, which carries a Cancel flag to abort mid-generation.
AsynchronousTsgcAIChatChatAsync returns a future on Delphi 2010 and later.
System promptTsgcAIChatSystemMessage for every turn, or ChatWithSystem for a single turn.
Bounded historyTsgcAIChatMaxHistoryMessages caps the replayed context. ClearHistory and GetHistory manage the transcript.
Sampling controlsTsgcAIChatMaxTokens, Temperature and TopP. Leave the last two unset and the provider default applies.
Speech to textTsgcAIOpenAIChatBot, TsgcAIOpenAITranslatorWhisper transcription and translation, with an event to review the text before use.
Retrieval augmented answersTsgcAIOpenAIChatBotLink an Embeddings component and the retrieved context is added before the model is called.
Assistants, threads and runsTsgcAIOpenAIAssistantCreateAssistant, CreateThread, CreateMessageText, CreateRun, CreateRunAndWait.
File Search and Code InterpreterTsgcAIOpenAIAssistantAssistantOptions.Tools, with UploadVectorStoreFile to add your own documents.
Function callingTsgcAIOpenAIAssistantTools.Functions plus the OnFunctionCall event.

MCP Client & Server

Both ends of the protocol that AI clients use to reach tools, prompts and resources.

CapabilityClientServerNotes
HTTP JSON-RPC transportaimcptrHttpTransportOptions.HttpOne request, one response, connection closes.
HTTP Streamable transportaimcptrHttpStreamableTransportOptions.HttpStreamableKeep-alive plus an SSE stream, which is what carries notifications and server-initiated requests.
stdio transportaimcptrStdioseparate stdio hostThe client spawns a local subprocess. Server-side stdio is provided by a dedicated host class rather than the palette component.
HandshakeInitializeOnMCPInitializeCapability negotiation and session id assignment.
SessionsSession, HeartBeatOnMCPSessionNew, OnMCPSessionEnd, SessionTimeoutIdle sessions expire on the server, the client can keep one alive with periodic pings.
ToolsListTools, RequestToolTools, OnMCPRequestToolList and call. The server raises an event where your code does the work.
PromptsListPrompts, RequestPromptPrompts, OnMCPRequestPromptSame pattern as tools.
ResourcesListResources, RequestResource, ListResourceTemplatesResources, ResourceTemplates, OnMCPRequestResourceLists accept a cursor for paging.
Resource subscriptionsSubscribeResource, UnsubscribeResourceSendNotificationResourcesUpdatedFollow a resource and be told when it changes.
List-changed notificationsreceivedSendNotificationToolsListChanged and the prompt and resource equivalentsRequires the streamable transport.
RootsOnMCPListRootsRequestRootsListThe server asks the client which filesystem roots it may use.
SamplingOnMCPSamplingCreateMessageRequestSamplingCreateMessageThe server asks the client's model for a completion.
ElicitationOnMCPElicitationCreateRequestElicitationCreateThe server asks the user for input through the client.
CompletionCompletehandledArgument value completion for tools and prompts.
LoggingSetLoggingLevelSendLogMessageStructured log messages at a client-controlled level.
AuthenticationAPI key, custom header, OAuth 2.0API key, custom header, OAuth 2.0MCPOptions.AuthenticationOptions on both sides.
Built-in authorization serverDynamic client registration, consent page, PKCE and refresh tokens, following RFC 8414 and RFC 9728.
Origin validationHttpStreamable.ValidateOriginPins a session to the Origin header it was created with.

Retrieval Augmented Generation

Turn your own documents into vectors, store them locally or in a managed index, and retrieve context for every question.

CapabilityFile storePineconeNotes
Generate embeddingsTsgcAIOpenAIEmbeddings.CreateEmbeddings and CreateEmbeddingsFromFile.
ChunkingEmbeddingsOptions.ChunkSize, default 4096 characters.
Embedding modelEmbeddingsOptions.Model, default text-embedding-3-small.
Batch upsertwrite on closesingle REST upsertBeginAddData, AddData, EndAddData on both stores.
Nearest neighbour queryQueryDataQueryDataReturns the stored source text behind the closest vector.
Retrieve context for a promptGetEmbedding(aInput, aParams) embeds the query and returns the best match.
Progress and cancelOnCreateEmbeddingsStart, OnCreateEmbeddingsProgress with a continue flag, OnCreateEmbeddingsStop.
Per-chunk hooksOnBeforeCreateEmbedding can veto a request, OnAfterCreateEmbedding reports request and response.
Works offlineThe file store needs no network on query. Generating embeddings still calls the provider.
Shared across machinesA Pinecone index can be written by one application and read by another.
ConfigurationVectorFileOptions.InputFilename, VectorFilenamePineconeOptions, PineconeIndexOptionsTwo files, or an API key plus index and project id.
Id controlOnBeginAddDataOnBeginAddDataSet the first id and the id label so several ingests can share a store.

Three Interchangeable Voices

All three share one interface, so the chatbot, translator and assistant accept any of them.

CapabilitySystemGoogleAmazon
Speak a stringTextToSpeechTextToSpeechTextToSpeech
Needs credentialsnoservice account JSONAWS access key and secret
Needs a networknoyesyes
Cost per characternoneprovider pricingprovider pricing
Voice selectionmachine speech settingsLanguage, VoiceId, GenderEngine, VoiceId
Output formatdirect playbackAudioEncoding, FileNameOutputFormat, FileName
SSMLTextType
Audio player requirednoyes, AudioPlayeryes, AudioPlayer
Authentication handlingsigned JWT with a cached access tokenAWS Signature Version 4
Start and stop events

Microphone In, Speaker Out

Two recorders with different trade-offs, and the player that closes the voice loop.

CapabilityRecorder (MCI)Recorder (Wave)Player (MCI)
Windows API usedMCIwaveInMCI
OutputWAV filelive streamplays a file
Sample format controlfixed, 16 bit mono 22050 HzSampleRate, Channels, BitsPerSample
Silence detectionMCIOptions.LevelMin, StopAfterWaveOptions.LevelMin, StopAfter, WaitForAudio
Manual or automaticRecorderOptions.Mode: camoManual or camoAutoStart and StopPlay
Concurrent instances✓, unique MCI alias per component
End of playback notification✓, real MCI notification, not a timer
Used by the voice componentsdefault recorderstreaming scenariosoutput of the cloud speech components

Where sgcAI Runs

What is supported, stated precisely.

AreaDetail
Operating systemWindows only. SGC_AI is defined under MSWINDOWS alone, and it gates the whole SGC AI palette registration. There is no macOS, Linux, iOS or Android build of the AI components, with the single exception of the MCP pair below.
DelphiDelphi 7 through RAD Studio 13 Florence, VCL and FireMonkey, targeting Win32 and Win64.
C++ BuilderC++ Builder 10.1 Berlin through C++ Builder 13, through the generated headers, targeting Win32 and Win64.
AI palette components13 of the 15 components are declared [ComponentPlatforms(pidWin32 or pidWin64)]. The chat, agent, embeddings, vector, speech and audio components are Win32 and Win64 only.
MCP componentsThe exception. TsgcWSAPIServer_MCP and TsgcWSAPIClient_MCP are declared [ComponentPlatforms(0)], so they carry no platform restriction and run wherever the sgc HTTP stack runs, including Windows, macOS, Linux, iOS and Android.
Bundled runtimeThe sgcWebSockets Core runtime is included, so the HTTP client stack, the JSON layer and the HTTP server behind the MCP server API need no separate license.
TLSOpenSSL or SChannel for every provider call, following the sgcWebSockets configuration.
Source codeFull Object Pascal source in every paid tier.
RedistributionBinaries you build are royalty free, with no per-seat or per-server runtime fee.
Best value: All-AccessEvery eSeGeCe product, Premium Support included, from €1,059/year.
See All-Access pricing

Build with sgcAI

Download the free trial and put a language model, an MCP server or a vector search behind your own forms.