OpenAI Universal Model MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OPENAI_API_KEY | Yes | OpenAI Platform project API key with the required model permissions and billing configured. | |
| OPENAI_ARTIFACT_DIR | No | Directory where generated artifact files are written. Example value: artifacts. | |
| OPENAI_TIMEOUT_SECONDS | No | Timeout in seconds for OpenAI API requests. Example value: 180. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| openai_health_checkA | Check local configuration and connectivity to the OpenAI Platform API. |
| openai_list_modelsB | List model IDs visible to this API key. Filter shutdown models unless explicitly requested. |
| openai_get_modelC | Retrieve one model record from GET /v1/models/{model_id}. |
| openai_inspect_modelB | Inspect live API visibility plus locally documented capabilities and compatible endpoints. |
| openai_recommend_modelB | Recommend an available model for a supported task using the live model list and curated priorities. |
| openai_upload_fileB | Upload a local file to OpenAI Files for Responses input. Requires explicit confirm_upload=true. |
| openai_create_responseC | Call the Responses API for text, reasoning, image input, tools, or structured output. |
| openai_create_chat_completionC | Call Chat Completions for models or audio workflows that require that API surface. |
| openai_generate_imageC | Generate images with GPT Image 2.x; supports 2.6 complexity and GIF frame controls. |
| openai_edit_imageC | Edit one local image with a GPT Image model. An optional alpha mask may be supplied. |
| openai_transcribe_audioC | Transcribe a local audio/video file using the Audio Transcriptions API. |
| openai_generate_speechC | Generate speech audio and save it locally. Supply a model supported by the current speech endpoint. |
| openai_create_embeddingsB | Create text embeddings. Vector values are omitted by default to keep MCP responses compact. |
| openai_moderate_contentC | Classify text or supported image inputs with the Moderations API. |
| openai_create_realtime_client_secretC | Create a short-lived Realtime client secret. The main API key is never returned. |
| openai_create_realtime_translation_secretC | Create a short-lived client secret for the Realtime Translation API. |
| openai_create_live_sessionC | Create a GPT-Live WebRTC session from an SDP offer and return the SDP answer. |
| openai_safe_api_requestC | Advanced JSON REST call restricted to approved model and inference endpoints; no destructive methods. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| choose_openai_model | Create a model-selection prompt that requires live discovery and endpoint validation. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| openai_model_capabilities_resource | Read the local capability registry snapshot and its official source links. |
TDQS
Scored across 18 tools
Most tools map to clearly distinct resources/actions (image generate vs edit, transcribe vs speech, moderation vs embeddings). There is mild overlap between openai_inspect_model, openai_get_model, openai_list_models, and openai_recommend_model, and between openai_create_response, openai_create_chat_completion, and openai_safe_api_request, but descriptions do enough to separate them. The three realtime secret/session tools are close cousins but still distinguishable by intent.
All names share the openai_ prefix and overwhelmingly follow verb_noun (create_response, generate_image, transcribe_audio, list_models). A few deviate in form—openai_health_check and openai_safe_api_request read as noun/adjective phrases rather than verb_noun—but the pattern remains predictable overall.
18 tools is on the heavier side, but the server spans models, files, responses, chat, images, audio, embeddings, moderation, and realtime, so each tool covers a genuinely different API surface. Only the model-introspection group (inspect/get/list/recommend) feels slightly padded.
Core inference surfaces are well covered, but file handling is a dead end: openai_upload_file has no list, retrieve, or delete counterpart. Broader OpenAI lifecycle areas such as batches, fine-tuning, and vector stores/assistants are absent, so agents hitting those needs will fall back to safe_api_request or fail.