Skip to main content
Glama
snilld-ai
by snilld-ai
README.md6.01 kB
# MCP Server for OpenAI This project provides a server compliant with the Machine-to-Machine Communications Protocol (MCP) that acts as a bridge to various OpenAI API functionalities. It allows MCP clients to interact with OpenAI's Chat Completion and Assistants APIs through a standardized set of tools. ## Features The server exposes several tools to interact with the OpenAI API: * **Chat Completion:** Ask a direct question to a specified model (`gpt-4`, `gpt-3.5-turbo`). * **Assistant Management:** Create, list, retrieve, update, and delete assistants. * **File Management:** Upload, list, and delete files associated with assistants. * **Tool Management:** Enable or disable tools for assistants, such as `file_search`. ## Installation To install the necessary dependencies, navigate to the project root and run: ```bash pip install . ``` This will install all the packages defined in `pyproject.toml`, including `mcp`, `openai`, and `click`. ## Usage To start the server, you need to provide your OpenAI API key. You can do this by setting an environment variable or by passing it as a command-line argument. **Using an environment variable:** ```bash export OPENAI_API_KEY='your-api-key-here' mcp-server-openai ``` **Using a command-line argument:** ```bash mcp-server-openai --openai-api-key 'your-api-key-here' ``` The server will start and listen for MCP messages over stdio. **Usage in Cursor** To configure this server in an MCP client like Cursor, use the following configuration. Replace `"LOCAL PATH"` with the absolute path to this project's directory and `"OPENAI API KEY"` with your actual key. ```json { "mcpServers": { "openai-server": { "command": "mcp-server-openai", "args": [], "env": { "PYTHONPATH": "LOCAL PATH", "OPENAI_API_KEY": "OPENAI API KEY" } } } } ``` ## Available Tools Here is a detailed list of the tools exposed by the server: | Tool | Description | Parameters | | ---------------------- | ----------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `ask-openai` | Ask a direct question. | `query` (string), `model` (enum: `gpt-4.1`, `gpt-4.1-mini`, `gpt-4o`, etc.), `temperature` (number), `max_tokens` (integer) | | `list-assistants` | List all available assistants. | None | | `retrieve-assistant` | Retrieve an assistant by its ID. | `assistant_id` (string) | | `create-assistant` | Create a new assistant. | `name` (string), `instructions` (string), `model` (string), `temperature` (number), `file_ids` (array of strings), `enable_file_search` (boolean) | | `update-assistant` | Update an existing assistant. | `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` | Delete an assistant by its ID. | `assistant_id` (string) | | `upload-file` | Upload a file for use with assistants. | `file_path` (string) | | `list-files` | List all files available for assistants. | None | | `delete-file` | Delete a file by its ID. | `file_id` (string) | ## Model Pricing Below is an estimated pricing table for some of the models available through this server. Prices are per 1 million tokens. Please verify the latest prices on the [official OpenAI pricing page](https://openai.com/pricing/), as they can change. | Model | Input Price / 1M tokens | Output Price / 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 | ## Development To contribute to this project, clone the repository and install it in editable mode: ```bash git clone https://github.com/snilld-ai/openai-assistant-mcp cd openai-assistant-mcp pip install -e . ``` ## Testing The project includes a basic test file to verify the connection to the OpenAI API. To run the tests, use `pytest`: ```bash pytest ``` Make sure you have your `OPENAI_API_KEY` environment variable set. ## License This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/snilld-ai/openai-assistant-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server