OpenAI
Uma ponte para as APIs de Chat Completion e Assistants da OpenAI.
Documentação
Servidor MCP para OpenAI
Este projeto fornece um servidor compatível com o Protocolo de Comunicação Máquina a Máquina (MCP) que atua como uma ponte para várias funcionalidades da API da OpenAI. Ele permite que clientes MCP interajam com as APIs de Conclusão de Chat e Assistentes da OpenAI por meio de um conjunto padronizado de ferramentas.
Recursos
O servidor expõe várias ferramentas para interagir com a API da OpenAI:
- Conclusão de Chat: Faça uma pergunta direta a um modelo especificado (
gpt-4,gpt-3.5-turbo). - Gerenciamento de Assistentes: Crie, liste, recupere, atualize e exclua assistentes.
- Gerenciamento de Arquivos: Envie, liste e exclua arquivos associados aos assistentes.
- Gerenciamento de Ferramentas: Ative ou desative ferramentas para assistentes, como
file_search.
Instalação
Para instalar as dependências necessárias, navegue até a raiz do projeto e execute:
pip install .
Isso instalará todos os pacotes definidos em pyproject.toml, incluindo mcp, openai e click.
Uso
Para iniciar o servidor, você precisa fornecer sua chave de API da OpenAI. Você pode fazer isso definindo uma variável de ambiente ou passando-a como um argumento de linha de comando.
Usando uma variável de ambiente:
export OPENAI_API_KEY='your-api-key-here'
mcp-server-openai
Usando um argumento de linha de comando:
mcp-server-openai --openai-api-key 'your-api-key-here'
O servidor iniciará e escutará mensagens MCP via stdio.
Uso no Cursor
Para configurar este servidor em um cliente MCP como o Cursor, use a seguinte configuração. Substitua "LOCAL PATH" pelo caminho absoluto para o diretório deste projeto e "OPENAI API KEY" pela sua chave real.
{
"mcpServers": {
"openai-server": {
"command": "mcp-server-openai",
"args": [],
"env": {
"PYTHONPATH": "LOCAL PATH",
"OPENAI_API_KEY": "OPENAI API KEY"
}
}
}
}
Ferramentas Disponíveis
Aqui está uma lista detalhada das ferramentas expostas pelo servidor:
| Ferramenta | Descrição | Parâmetros |
|---|---|---|
ask-openai | Faça uma pergunta direta. | query (string), model (enum: gpt-4.1, gpt-4.1-mini, gpt-4o, etc.), temperature (number), max_tokens (integer) |
list-assistants | Liste todos os assistentes disponíveis. | Nenhum |
retrieve-assistant | Recupere um assistente pelo seu ID. | assistant_id (string) |
create-assistant | Crie um novo assistente. | name (string), instructions (string), model (string), temperature (number), file_ids (array of strings), enable_file_search (boolean) |
update-assistant | Atualize um assistente existente. | assistant_id (string), name (string, optional), instructions (string, optional), model (string, optional), temperature (number, optional), file_ids (array of strings, optional), enable_file_search (boolean, optional) |
delete-assistant | Exclua um assistente pelo seu ID. | assistant_id (string) |
upload-file | Envie um arquivo para uso com assistentes. | file_path (string) |
list-files | Liste todos os arquivos disponíveis para assistentes. | Nenhum |
delete-file | Exclua um arquivo pelo seu ID. | file_id (string) |
Preços dos Modelos
Abaixo está uma tabela de preços estimada para alguns dos modelos disponíveis através deste servidor. Os preços são por 1 milhão de tokens. Verifique os preços mais recentes na página oficial de preços da OpenAI, pois eles podem mudar.
| Modelo | Preço de Entrada / 1M tokens | Preço de Saída / 1M tokens |
|---|---|---|
gpt-4o | $5.00 | $15.00 |
gpt-4o-mini | $0.15 | $0.60 |
gpt-4-turbo | $10.00 | $30.00 |
gpt-3.5-turbo | $0.50 | $1.50 |
Desenvolvimento
Para contribuir com este projeto, clone o repositório e instale-o em modo editável:
git clone https://github.com/snilld-ai/openai-assistant-mcp
cd openai-assistant-mcp
pip install -e .
Testes
O projeto inclui um arquivo de teste básico para verificar a conexão com a API da OpenAI. Para executar os testes, use pytest:
pytest
Certifique-se de ter sua variável de ambiente OPENAI_API_KEY definida.
Licença
Este projeto está licenciado sob a Licença MIT. Consulte o arquivo LICENSE para obter detalhes.