Skip to main content
Glama
thadius83

OpenAI MCP Server

by thadius83

OpenAI MCP Server

Query OpenAI models directly from Claude using MCP protocol. This fork adds support for o3-mini and gpt-4o-mini models with improved message handling.

Cline Auto Install

Set up the MCP server from https://github.com/thadius83/mcp-server-openai. 
Use "github.com/thadius83/mcp-server-openai" as the server name in cline_mcp_settings.json.
Analyse the readme and instructions below. Do not create new files in the repo, utilise the findings from pyproject.toml, src/mcp_server_openai/server.py, src/mcp_server_openai/llm.py
Once installed, demonstrate the server's capabilities by using one of its tools.

Installation Steps:
# Clone the repository
git clone https://github.com/thadius83/mcp-server-openai
cd mcp-server-openai

# Install the package
pip install .`

MCP Settings Configuration: The cline_mcp_settings.json should be configured with:
Correct server name format: "github.com/thadius83/mcp-server-openai"
Python module path structure for the server
PYTHONPATH environment variable pointing to the project directory
OpenAI API key passed as a command line argument

Example configuration:
{
  "mcpServers": {
    "github.com/thadius83/mcp-server-openai": {
      "command": "python",
      "args": [
        "-m",
        "src.mcp_server_openai.server",
        "--openai-api-key",
        "your-openai-api-key"
      ],
      "env": {
        "PYTHONPATH": "/path/to/mcp-server-openai"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Requirements:
Python >= 3.10
OpenAI API key
Dependencies installed via pip (mcp>=0.9.1, openai>=1.0.0, click>=8.0.0, pytest-asyncio)

Available Tools:
Tool Name: ask-openai
Description: Ask OpenAI assistant models a direct question
Models Available:
o3-mini (default)
gpt-4o-mini
Input Schema:
{
  "query": "Your question here",
  "model": "o3-mini" // optional, defaults to o3-mini
}

Related MCP server: SwiftOpenAI MCP Server

Features

  • Direct integration with OpenAI's API

  • Support for multiple models:

    • o3-mini (default): Optimized for concise responses

    • gpt-4o-mini: Enhanced model for more detailed responses

  • Configurable message formatting

  • Error handling and logging

  • Simple interface through MCP protocol

Installation

Installing via Smithery

To install OpenAI MCP Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @thadius83/mcp-server-openai --client claude

Manual Installation

  1. Clone the Repository:

git clone https://github.com/thadius83/mcp-server-openai.git
cd mcp-server-openai

# Install dependencies
pip install -e .
  1. Configure Claude Desktop:

Add this server to your existing MCP settings configuration. Note: Keep any existing MCP servers in the configuration - just add this one alongside them.

Location:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%/Claude/claude_desktop_config.json

  • Linux: Check your home directory (~/) for the default MCP settings location

{
  "mcpServers": {
    // ... keep your existing MCP servers here ...
    
    "github.com/thadius83/mcp-server-openai": {
      "command": "python",
      "args": ["-m", "src.mcp_server_openai.server", "--openai-api-key", "your-key-here"],
      "env": {
        "PYTHONPATH": "/path/to/your/mcp-server-openai"
      }
    }
  }
}
  1. Get an OpenAI API Key:

    • Visit OpenAI's website

    • Create an account or log in

    • Navigate to API settings

    • Generate a new API key

    • Add the key to your configuration file as shown above

  2. Restart Claude:

    • After updating the configuration, restart Claude for the changes to take effect

Usage

The server provides a single tool ask-openai that can be used to query OpenAI models. You can use it directly in Claude with the use_mcp_tool command:

<use_mcp_tool>
<server_name>github.com/thadius83/mcp-server-openai</server_name>
<tool_name>ask-openai</tool_name>
<arguments>
{
  "query": "What are the key features of Python's asyncio library?",
  "model": "o3-mini"  // Optional, defaults to o3-mini
}
</arguments>
</use_mcp_tool>

Model Comparison

  1. o3-mini (default)

    • Best for: Quick, concise answers

    • Style: Direct and efficient

    • Example response:

      Python's asyncio provides non-blocking, collaborative multitasking. Key features:
      1. Event Loop – Schedules and runs asynchronous tasks
      2. Coroutines – Functions you can pause and resume
      3. Tasks – Run coroutines concurrently
      4. Futures – Represent future results
      5. Non-blocking I/O – Efficient handling of I/O operations
  2. gpt-4o-mini

    • Best for: More comprehensive explanations

    • Style: Detailed and thorough

    • Example response:

      Python's asyncio library provides a comprehensive framework for asynchronous programming.
      It includes an event loop for managing tasks, coroutines for writing non-blocking code,
      tasks for concurrent execution, futures for handling future results, and efficient I/O
      operations. The library also provides synchronization primitives and high-level APIs
      for network programming.

Response Format

The tool returns responses in a standardized format:

{
  "content": [
    {
      "type": "text",
      "text": "Response from the model..."
    }
  ]
}

Troubleshooting

  1. Server Not Found:

    • Verify the PYTHONPATH in your configuration points to the correct directory

    • Ensure Python and pip are properly installed

    • Try running python -m src.mcp_server_openai.server --openai-api-key your-key-here directly to check for errors

  2. Authentication Errors:

    • Check that your OpenAI API key is valid

    • Ensure the key is correctly passed in the args array

    • Verify there are no extra spaces or characters in the key

  3. Model Errors:

    • Confirm you're using supported models (o3-mini or gpt-4o-mini)

    • Check your query isn't empty

    • Ensure you're not exceeding token limits

Development

# Install development dependencies
pip install -e ".[dev]"

# Run tests
pytest -v test_openai.py -s

Changes from Original

  • Added support for o3-mini and gpt-4o-mini models

  • Improved message formatting

  • Removed temperature parameter for better compatibility

  • Updated documentation with detailed usage examples

  • Added model comparison and response examples

  • Enhanced installation instructions

  • Added troubleshooting guide

License

MIT License

Available Tools

1 tool
ask-openaiC

Ask my assistant models a direct question

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesAsk assistant
modelNoo3-mini

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It only states the action ('ask a direct question') without disclosing behavioral traits like response format, rate limits, authentication needs, or whether this is a read-only or mutative operation. This leaves significant gaps in understanding how the tool behaves.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It's appropriately sized for a simple tool, though it could be more front-loaded with clearer purpose. The brevity is good, but it borders on under-specification.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and 2 parameters with only 50% schema coverage, the description is incomplete. It doesn't explain return values, error handling, or key behavioral aspects. For a tool that likely interacts with AI models, more context is needed to understand its full scope and limitations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 50% (only 'query' has a description). The description adds no parameter semantics beyond what the schema provides. With 2 parameters and partial schema coverage, the baseline is 3 as the schema does some work, but the description doesn't compensate for the undocumented 'model' parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Ask my assistant models a direct question' states the action (ask) and target (assistant models), but is vague about what 'assistant models' refers to. It doesn't specify if this is for querying AI models, testing, or something else. Without sibling tools, differentiation isn't needed, but the purpose remains somewhat ambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool. The description doesn't mention context, prerequisites, or alternatives. With no sibling tools, this is less critical, but there's still no indication of appropriate use cases or constraints.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

C2.9/5.0
Disambiguation5/5

With only one tool, there is no possibility of confusion or overlap between tools. The single tool 'ask-openai' has a clear and distinct purpose, making disambiguation perfect.

Naming Consistency5/5

Since there is only one tool, naming consistency is inherently perfect. The tool name 'ask-openai' follows a verb_noun pattern, but with no other tools to compare, it cannot be inconsistent.

Tool Count2/5

A single tool for an 'OpenAI MCP Server' feels too minimal for the apparent scope, which likely involves interacting with OpenAI's models. This is borderline inadequate, as it may limit functionality and require agents to work around gaps, scoring low due to the mismatch.

Completeness2/5

The tool surface is severely incomplete for an OpenAI server. It only allows asking questions to assistant models, missing obvious operations like listing models, generating text, handling images, or managing conversations, which are core to OpenAI's API capabilities.

Maintenance

ActivityInactive
ResponsivenessSyncing

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

  • A
    license
    Not graded
    quality
    C
    maintenance
    A universal server that enables MCP-compatible clients (like Claude Desktop, Cursor, VS Code) to access OpenAI's APIs for chat completions, image generation, embeddings, and model listing through a standardized interface.
    15
    7
    MIT
  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables Claude and other MCP-compatible tools to communicate with OpenAI's GPT models (GPT-5, GPT-5-mini, o3) with conversation history and session management. Features advanced controls like reasoning effort settings, token tracking, and parallel conversation sessions for efficient AI workflows.
    10
  • -
    license
    C
    quality
    Not graded
    maintenance
    Enables interaction with OpenAI-compatible APIs (like Ollama) through MCP tools. Provides access to chat completions, model listings, and embeddings generation from local or remote OpenAI-style endpoints.
    3

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/thadius83/mcp-server-openai'

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