Skip to main content
Glama
thadius83

OpenAI MCP Server

by thadius83

OpenAI MCP サーバー

鍛冶屋のバッジ

MCPプロトコルを使用して、Claudeから直接OpenAIモデルをクエリできます。このフォークは、メッセージ処理が改善されたo3-miniおよびgpt-4o-miniモデルのサポートを追加します。

クライン自動インストール

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

特徴

  • OpenAIのAPIとの直接統合

  • 複数のモデルのサポート:

    • o3-mini(デフォルト):簡潔な応答に最適化

    • gpt-4o-mini: より詳細な応答のための強化モデル

  • 設定可能なメッセージフォーマット

  • エラー処理とログ記録

  • MCPプロトコルによるシンプルなインターフェース

インストール

Smithery経由でインストール

Smithery経由で Claude Desktop 用の OpenAI MCP Server を自動的にインストールするには:

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

手動インストール

  1. リポジトリのクローンを作成します:

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

# Install dependencies
pip install -e .
  1. Claude デスクトップを構成する:

このサーバーを既存のMCP設定に追加します。注: 既存のMCPサーバーは設定にそのまま残し、このサーバーをそれらと一緒に追加するだけです。

位置:

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

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

  • Linux: デフォルトのMCP設定の場所については、ホームディレクトリ( ~/ )を確認してください。

{
  "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. OpenAI APIキーを取得する:

    • OpenAIのウェブサイトをご覧ください

    • アカウントを作成するかログインしてください

    • API設定に移動する

    • 新しいAPIキーを生成する

    • 上記のように設定ファイルにキーを追加します

  2. クロードを再起動:

    • 設定を更新した後、変更を有効にするためにClaudeを再起動します。

使用法

サーバーは、OpenAIモデルのクエリに使用できるツールask-openaiを1つ提供しています。Claudeでは、use_mcp_tool コマンドを使用して直接使用できます。

<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>

モデル比較

  1. o3-mini(デフォルト)

    • 最適な用途: 素早く簡潔な回答

    • スタイル: 直接的かつ効率的

    • 応答例:

      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-ミニ

    • 最適な用途: より包括的な説明

    • スタイル: 詳細かつ徹底的

    • 応答例:

      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.

応答フォーマット

ツールは標準化された形式で応答を返します。

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

トラブルシューティング

  1. サーバーが見つかりません:

    • 設定内のPYTHONPATHが正しいディレクトリを指していることを確認してください

    • Pythonとpipが正しくインストールされていることを確認する

    • エラーを確認するには、 python -m src.mcp_server_openai.server --openai-api-key your-key-here直接実行してみてください。

  2. 認証エラー:

    • OpenAI APIキーが有効であることを確認してください

    • キーがargs配列に正しく渡されていることを確認する

    • キーに余分なスペースや文字がないことを確認してください

  3. モデルエラー:

    • サポートされているモデル(o3-mini または gpt-4o-mini)を使用していることを確認してください

    • クエリが空でないことを確認してください

    • トークン制限を超えていないことを確認する

発達

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

# Run tests
pytest -v test_openai.py -s

オリジナルからの変更点

  • o3-miniおよびgpt-4o-miniモデルのサポートを追加しました

  • メッセージのフォーマットの改善

  • 互換性向上のため温度パラメータを削除しました

  • 詳細な使用例を含むドキュメントを更新しました

  • モデルの比較と応答例を追加しました

  • 強化されたインストール手順

  • トラブルシューティングガイドを追加しました

ライセンス

MITライセンス

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.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev1.0.0
    • First observedask-openai

TDQS

C2.9/5.0

Scored across 1 tool

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

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.
    13 npm
    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.
    11 npm
    -
  • -
    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
    -