OpenAI Tools

Un envoltorio para las herramientas integradas de OpenAI, que permite funcionalidades como búsqueda web y ejecución de código. Requiere una clave de API de OpenAI.

Documentación

openai-tool2mcp

Release Build status codecov Commit activity License

openai-tool2mcp es un puente ligero y de código abierto que envuelve las potentes herramientas integradas de OpenAI como servidores del Protocolo de Contexto de Modelos (MCP). Te permite usar herramientas OpenAI de alta calidad, como la búsqueda web y el intérprete de código, con Claude y otros modelos compatibles con MCP.

  • 🔍 Usa la robusta búsqueda web de OpenAI en la aplicación Claude
  • 💻 Accede a la funcionalidad del intérprete de código en cualquier LLM compatible con MCP
  • 🔄 Traducción de protocolo sin interrupciones entre OpenAI y MCP
  • 🛠️ API simple para una integración fácil
  • 🌐 Compatibilidad total con el SDK de MCP

🔍 ¡Demo de integración de búsqueda de OpenAI con la aplicación Claude! 🚀

https://github.com/user-attachments/assets/f1f10e2c-b995-4e03-8b28-61eeb2b2bfe9

¡OpenAI intentó mantener sus potentes herramientas optimizadas para LLM encerradas dentro de su propia plataforma de agentes, pero no pudieron detener el imparable movimiento de código abierto de MCP!

El dilema del desarrollador

Los desarrolladores de IA actualmente enfrentan una elección desafiante entre dos ecosistemas:

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 cierra esta brecha permitiéndote usar las herramientas maduras y de alta calidad de OpenAI dentro del ecosistema MCP abierto.

🌟 Características

  • Configuración fácil: Ponte en marcha con unos pocos comandos simples
  • Herramientas de OpenAI como servidores MCP: Envuelve las potentes herramientas integradas de OpenAI como servidores compatibles con MCP
  • Integración sin interrupciones: Funciona con la aplicación Claude y otros clientes compatibles con MCP
  • Compatible con el SDK de MCP: Usa el SDK oficial de MCP para Python
  • Soporte de herramientas:
    • 🔍 Búsqueda web
    • 💻 Intérprete de código
    • 🌐 Navegador web
    • 📁 Gestión de archivos
  • Código abierto: Licencia MIT, modificable y extensible

🚀 Instalación

# 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

Requisitos previos

  • Python 3.10+
  • Clave API de OpenAI con acceso a la API de Asistente
  • (Recomendado) Gestor de paquetes uv para compatibilidad con MCP

🛠️ Inicio rápido

  1. Configura tu clave API de OpenAI:
export OPENAI_API_KEY="your-api-key-here"
  1. Inicia el servidor MCP con las herramientas de OpenAI:
# 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
  1. Úsalo con Claude para escritorio:

Configura tu Claude para escritorio para usar el servidor editando el archivo claude_desktop_config.json:

{
  "mcpServers": {
    "openai-tools": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/your/openai-tool2mcp",
        "run",
        "openai_tool2mcp/server_entry.py"
      ]
    }
  }
}

El archivo de configuración se encuentra en:

  • MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %AppData%\Claude\claude_desktop_config.json

💻 Ejemplos de uso

Configuración básica del servidor

# 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")

Ejecútalo con uv como recomienda MCP:

uv run server_script.py

Configuración compatible con MCP para Claude Desktop

Crea un script independiente:

# 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")

Configura Claude Desktop para usar este script con uv:

{
  "mcpServers": {
    "openai-tools": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/your/project/folder",
        "run",
        "openai_tools_server.py"
      ]
    }
  }
}

📊 Cómo funciona

La biblioteca sirve como puente entre la API de Asistente de OpenAI y el protocolo MCP:

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

🔄 Integración con el SDK de MCP

openai-tool2mcp ahora es totalmente compatible con el SDK de MCP. Puedes usarlo con la aplicación Claude para escritorio:

  1. Instalando el paquete con pip install openai-tool2mcp
  2. Configurando tu claude_desktop_config.json para incluir:
{
  "mcpServers": {
    "openai-tools": {
      "command": "openai-tool2mcp",
      "args": [
        "start",
        "--transport",
        "stdio",
        "--tools",
        "retrieval",
        "code_interpreter"
      ]
    }
  }
}

El archivo de configuración se encuentra en:

  • MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %AppData%\Claude\claude_desktop_config.json

🤝 Contribuciones

¡Damos la bienvenida a las contribuciones de la comunidad! Así es como puedes ayudar:

  1. Haz un fork del repositorio
  2. Clona tu fork en tu máquina local
  3. Crea una rama para tu función o corrección de errores
  4. Haz tus cambios y confírmalos
  5. Haz push a tu fork y envía una solicitud de extracción

Asegúrate de seguir nuestros estándares de codificación y añade pruebas para cualquier nueva función.

Configuración de desarrollo

# 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

📄 Licencia

Este proyecto está licenciado bajo la Licencia MIT; consulta el archivo LICENSE para más detalles.

🙏 Agradecimientos

  • Al equipo de OpenAI por sus excelentes herramientas y API
  • A la comunidad MCP por desarrollar un estándar abierto para el uso de herramientas
  • A todos los contribuyentes que han ayudado a mejorar este proyecto

⚠️ Estado del proyecto

Este proyecto está en desarrollo activo. Aunque la funcionalidad principal funciona, espera actualizaciones y mejoras frecuentes. Si encuentras algún problema, envíalo a nuestro rastreador de problemas.


openai-tool2mcp es parte de la iniciativa más amplia MCPortal para conectar las herramientas de OpenAI con el ecosistema MCP de código abierto.