OpenAI Tool Bridge
STDIOBridge wrapping OpenAI's built-in tools as MCP servers for Claude compatibility.
Bridge wrapping OpenAI's built-in tools as MCP servers for Claude compatibility.
openai-tool2mcp is a lightweight, open-source bridge that wraps OpenAI's powerful built-in tools as Model Context Protocol (MCP) servers. It enables you to use high-quality OpenAI tools like web search and code interpreter with Claude and other MCP-compatible models.
https://github.com/user-attachments/assets/f1f10e2c-b995-4e03-8b28-61eeb2b2bfe9
OpenAI tried to keep their powerful, LLM-optimized tools locked within their own agent platform, but they couldn't stop the unstoppable open-source movement of MCP!
AI developers currently face a challenging choice between two ecosystems:
graph TD subgraph "Developer's Dilemma" style Developer fill:#ff9e64,stroke:#fff,stroke-width:2px Developer((Developer)) end subgraph "OpenAI's Ecosystem" style OpenAITools fill:#bb9af7,stroke:#fff,stroke-width:2px style Tracing fill:#bb9af7,stroke:#fff,stroke-width:2px style Evaluation fill:#bb9af7,stroke:#fff,stroke-width:2px style VendorLock fill:#f7768e,stroke:#fff,stroke-width:2px,stroke-dasharray: 5 5 OpenAITools["Built-in Tools<br/>(Web Search, Code Interpreter)"] Tracing["Advanced Tracing<br/>(Visual Debugging)"] Evaluation["Evaluation Dashboards<br/>(Performance Metrics)"] VendorLock["Vendor Lock-in<br/>⚠️ Closed Source ⚠️"] OpenAITools --> Tracing Tracing --> Evaluation OpenAITools -.-> VendorLock Tracing -.-> VendorLock Evaluation -.-> VendorLock end subgraph "MCP Ecosystem" style MCPStandard fill:#7dcfff,stroke:#fff,stroke-width:2px style MCPTools fill:#7dcfff,stroke:#fff,stroke-width:2px style OpenStandard fill:#9ece6a,stroke:#fff,stroke-width:2px style LimitedTools fill:#f7768e,stroke:#fff,stroke-width:2px,stroke-dasharray: 5 5 MCPStandard["Model Context Protocol<br/>(Open Standard)"] MCPTools["MCP-compatible Tools"] OpenStandard["Open Ecosystem<br/>✅ Interoperability ✅"] LimitedTools["Limited Tool Quality<br/>⚠️ Less Mature (e.g., web search, computer use) ⚠️"] MCPStandard --> MCPTools MCPStandard --> OpenStandard MCPTools -.-> LimitedTools end Developer -->|"Wants powerful tools<br/>& visualizations"| OpenAITools Developer -->|"Wants open standards<br/>& interoperability"| MCPStandard classDef highlight fill:#ff9e64,stroke:#fff,stroke-width:4px; class Developer highlight
openai-tool2mcp bridges this gap by letting you use OpenAI's mature, high-quality tools within the open MCP ecosystem.
# Install from PyPI pip install openai-tool2mcp # Or install the latest development version pip install git+https://github.com/alohays/openai-tool2mcp.git # Recommended: Install uv for better MCP compatibility pip install uv
export OPENAI_API_KEY="your-api-key-here"
# Recommended: Use uv for MCP compatibility (recommended by MCP documentation) uv run openai_tool2mcp/server_entry.py --transport stdio # Or use the traditional method with the CLI openai-tool2mcp start --transport stdio
Configure your Claude for Desktop to use the server by editing the claude_desktop_config.json:
{ "mcpServers": { "openai-tools": { "command": "uv", "args": [ "--directory", "/absolute/path/to/your/openai-tool2mcp", "run", "openai_tool2mcp/server_entry.py" ] } } }
The config file is located at:
~/Library/Application Support/Claude/claude_desktop_config.json
%AppData%\Claude\claude_desktop_config.json
# server_script.py from openai_tool2mcp import MCPServer, ServerConfig, OpenAIBuiltInTools # Configure with OpenAI web search config = ServerConfig( openai_api_key="your-api-key", tools=[OpenAIBuiltInTools.WEB_SEARCH.value] ) # Create and start server with STDIO transport (for MCP compatibility) server = MCPServer(config) server.start(transport="stdio")
Run it with uv
as recommended by MCP:
uv run server_script.py
Create a standalone script:
# openai_tools_server.py import os from dotenv import load_dotenv from openai_tool2mcp import MCPServer, ServerConfig, OpenAIBuiltInTools # Load environment variables load_dotenv() # Create a server with multiple tools config = ServerConfig( openai_api_key=os.environ.get("OPENAI_API_KEY"), tools=[ OpenAIBuiltInTools.WEB_SEARCH.value, OpenAIBuiltInTools.CODE_INTERPRETER.value ] ) # Create and start the server with stdio transport for MCP compatibility server = MCPServer(config) server.start(transport="stdio")
Configure Claude Desktop to use this script with uv
:
{ "mcpServers": { "openai-tools": { "command": "uv", "args": [ "--directory", "/absolute/path/to/your/project/folder", "run", "openai_tools_server.py" ] } } }
The library serves as a bridge between the OpenAI Assistant API and the MCP protocol:
sequenceDiagram participant Claude as "Claude App" participant MCP as "MCP Client" participant Server as "openai-tool2mcp Server" participant OpenAI as "OpenAI API" Claude->>MCP: User query requiring tools MCP->>Server: MCP request Server->>OpenAI: Convert to OpenAI format OpenAI->>Server: Tool response Server->>MCP: Convert to MCP format MCP->>Claude: Display result
openai-tool2mcp
is now fully compatible with the MCP SDK. You can use it with the Claude for Desktop app by:
pip install openai-tool2mcp
claude_desktop_config.json
to include:{ "mcpServers": { "openai-tools": { "command": "openai-tool2mcp", "args": [ "start", "--transport", "stdio", "--tools", "retrieval", "code_interpreter" ] } } }
The config file is located at:
~/Library/Application Support/Claude/claude_desktop_config.json
%AppData%\Claude\claude_desktop_config.json
We welcome contributions from the community! Here's how you can help:
Please make sure to follow our coding standards and add tests for any new features.
# Clone the repository git clone https://github.com/alohays/openai-tool2mcp.git cd openai-tool2mcp # Install in development mode make install # Run tests make test # Run linting make lint
This project is licensed under the MIT License - see the LICENSE file for details.
This project is in active development. While the core functionality works, expect frequent updates and improvements. If you encounter any issues, please submit them on our issue tracker.
openai-tool2mcp is part of the broader MCPortal initiative to bridge OpenAI's tools with the open-source MCP ecosystem.