OpenAI Tools

Um wrapper para as ferramentas integradas da OpenAI, permitindo funcionalidades como pesquisa na web e execução de código. Requer uma chave de API da OpenAI.

Documentação

openai-tool2mcp

Release Build status codecov Commit activity License

openai-tool2mcp é uma ponte leve e de código aberto que encapsula as poderosas ferramentas integradas da OpenAI como servidores Model Context Protocol (MCP). Ele permite que você use ferramentas OpenAI de alta qualidade, como busca na web e interpretador de código, com o Claude e outros modelos compatíveis com MCP.

  • 🔍 Use a robusta busca na web da OpenAI no Claude App
  • 💻 Acesse a funcionalidade de interpretador de código em qualquer LLM compatível com MCP
  • 🔄 Tradução perfeita de protocolo entre OpenAI e MCP
  • 🛠️ API simples para integração fácil
  • 🌐 Compatibilidade total com o MCP SDK

🔍 Demonstração de Integração da Busca OpenAI com o Claude App! 🚀

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

A OpenAI tentou manter suas ferramentas poderosas e otimizadas para LLM restritas à sua própria plataforma de agente, mas não conseguiu impedir o movimento imparável de código aberto do MCP!

O Dilema do Desenvolvedor

Desenvolvedores de IA atualmente enfrentam uma escolha desafiadora entre dois ecossistemas:

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 preenche essa lacuna permitindo que você use as ferramentas maduras e de alta qualidade da OpenAI dentro do ecossistema aberto do MCP.

🌟 Recursos

  • Configuração Fácil: Comece a usar com alguns comandos simples
  • Ferramentas OpenAI como Servidores MCP: Encapsule ferramentas integradas poderosas da OpenAI como servidores compatíveis com MCP
  • Integração Perfeita: Funciona com o Claude App e outros clientes compatíveis com MCP
  • Compatível com MCP SDK: Usa o MCP Python SDK oficial
  • Suporte a Ferramentas:
    • 🔍 Busca na Web
    • 💻 Interpretador de Código
    • 🌐 Navegador Web
    • 📁 Gerenciamento de Arquivos
  • Código Aberto: Licenciado sob MIT, personalizável e extensível

🚀 Instalação

# 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

Pré-requisitos

  • Python 3.10+
  • Chave de API da OpenAI com acesso à Assistant API
  • (Recomendado) Gerenciador de pacotes uv para compatibilidade com MCP

🛠️ Início Rápido

  1. Defina sua chave de API da OpenAI:
export OPENAI_API_KEY="your-api-key-here"
  1. Inicie o servidor MCP com as ferramentas 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. Use com o Claude for Desktop:

Configure o Claude for Desktop para usar o servidor editando o claude_desktop_config.json:

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

O arquivo de configuração está localizado em:

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

💻 Exemplos de Uso

Configuração Básica do 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")

Execute com uv conforme recomendado pelo MCP:

uv run server_script.py

Configuração Compatível com MCP para Claude Desktop

Crie um script independente:

# 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 o Claude Desktop para usar este script com uv:

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

📊 Como Funciona

A biblioteca serve como uma ponte entre a OpenAI Assistant API e o 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

🔄 Integração com MCP SDK

openai-tool2mcp agora é totalmente compatível com o MCP SDK. Você pode usá-lo com o aplicativo Claude for Desktop:

  1. Instalando o pacote com pip install openai-tool2mcp
  2. Configurando seu claude_desktop_config.json para incluir:
{
  "mcpServers": {
    "openai-tools": {
      "command": "openai-tool2mcp",
      "args": [
        "start",
        "--transport",
        "stdio",
        "--tools",
        "retrieval",
        "code_interpreter"
      ]
    }
  }
}

O arquivo de configuração está localizado em:

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

🤝 Contribuindo

Aceitamos contribuições da comunidade! Veja como você pode ajudar:

  1. Faça um fork do repositório
  2. Clone seu fork para sua máquina local
  3. Crie uma branch para sua funcionalidade ou correção de bug
  4. Faça suas alterações e faça commit delas
  5. Envie para seu fork e submeta um pull request

Certifique-se de seguir nossos padrões de codificação e adicionar testes para quaisquer novos recursos.

Configuração de Desenvolvimento

# 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

📄 Licença

Este projeto é licenciado sob a Licença MIT - consulte o arquivo LICENSE para detalhes.

🙏 Agradecimentos

  • A equipe da OpenAI por suas excelentes ferramentas e APIs
  • A comunidade MCP por desenvolver um padrão aberto para uso de ferramentas
  • Todos os contribuidores que ajudaram a melhorar este projeto

⚠️ Status do Projeto

Este projeto está em desenvolvimento ativo. Embora a funcionalidade principal funcione, espere atualizações e melhorias frequentes. Se você encontrar algum problema, envie-o em nosso rastreador de problemas.


openai-tool2mcp faz parte da iniciativa mais ampla MCPortal para conectar as ferramentas da OpenAI com o ecossistema MCP de código aberto.