# OpenAI MCP connector

The OpenAI connector lets Claude, ChatGPT, Cursor, or any MCP client manage your OpenAI organization's users, projects, service accounts, API keys, and rate limits, with each person acting within their own access and every change logged.

Source: https://elaichi.ai/connectors/openai/

## Facts

| | |
| --- | --- |
| Application | OpenAI |
| Category | Conversational Intelligence |
| AI tools | 157 |
| Authentication | Connects with an API key |
| Needs your own OAuth app | No |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. 157 tools is past the 30-tool threshold, so clients use `search_tools` and `execute_tool` |

## What you can ask once OpenAI is connected

- Which OpenAI projects have no project users left?
- List OpenAI users added to Platform Core this month.
- Summarize archived OpenAI projects and who owned them.

## Connect OpenAI in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick OpenAI.
2. Optionally set Share with, then press Connect.
3. Paste an OpenAI API key. One person generates a token in OpenAI and pastes it once. Everyone else works through Share with, and never sees it.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which OpenAI tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect OpenAI to Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Connect OpenAI to ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Connect OpenAI to Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect OpenAI to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a OpenAI tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with OpenAI through Elaichi

### Add a new hire to the right OpenAI projects

IT. Ask for a new teammate to be added to the OpenAI organization and given membership in the projects their team uses, with the role you name. What used to be three admin screens becomes one request.

### Find and revoke stale project API keys

Security. List every API key across your OpenAI projects, spot the ones nobody recognizes or that belong to a service account that should have been retired, and revoke them on the spot.

### Keep OpenAI spend inside project rate limits

Finance. Review the rate limits set on each OpenAI project and tighten the ones for pilots or experiments so a runaway script cannot run up an unexpected bill.

### Set up a project for a new application

Engineering. Create an OpenAI project for a new product, add a service account for it, and add the engineers who will work on it, all from the chat window you are already in.

### Offboard a leaver from OpenAI in one ask

People. When someone leaves, remove them from every OpenAI project they were in and from the organization itself, then confirm nothing they created is still active.

### Answer who has access to which OpenAI project

Operations. Pull a plain list of OpenAI projects with their members, service accounts, and keys, and archive projects that have gone quiet, so the organization stays tidy and reviewable.

## Frequently asked questions

### How do I connect OpenAI to Claude?

Two steps. In Elaichi, choose OpenAI and paste an OpenAI admin API key when asked; there is no OAuth application to register and no client ID or secret to generate. Then in Claude open Customize, then Connectors, then Add, and paste https://api.elaichi.ai/mcp as the endpoint. Sign in with your Elaichi account and OpenAI is available in Claude.

### Does OpenAI work with ChatGPT and Cursor as well as Claude?

Yes. Once OpenAI is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client, and the Elaichi Agent. You connect OpenAI once and every client you use picks it up.

### What can an AI agent actually do with my OpenAI organization?

With OpenAI connected, an agent can list and update the people in your OpenAI organization, create, update, and archive projects, add or remove project members, create and delete service accounts, review and revoke project API keys, and adjust project rate limits. Because OpenAI exposes a large set of actions, short concrete asks such as "list API keys in the Marketing project" work better than long paragraphs.

### Does connecting OpenAI give the AI full control of the organization?

No. Every action in OpenAI runs inside the access of the person who signed in to Elaichi, so an agent can only see and change what that person's OpenAI role allows. Elaichi can narrow that further with restrictions, but it can never widen it beyond what OpenAI already grants.

### Can my team share one OpenAI connection?

Yes. One administrator connects OpenAI in Elaichi and shares the connection with a team, and nobody else ever handles the OpenAI API key. Each teammate still signs in to Elaichi as themselves, so the audit log names the person behind every change to a project, user, or key.

### Can I stop an agent from deleting users or revoking API keys in OpenAI?

Yes. Restrictions in Elaichi apply per action, so you can allow listing OpenAI projects and members while blocking the actions that delete users, revoke API keys, or archive projects. A blocked action is never shown to Claude, ChatGPT, or any other client, so no prompt, however worded, can reach it.

### What happens to an OpenAI connection when someone leaves?

Offboarding a person in Elaichi ends their access to OpenAI through every client at once. A shared OpenAI connection keeps working for everyone else on the team, because it does not depend on the leaver's login. If you ever want OpenAI gone entirely, disconnecting it once in Elaichi removes it from Claude, ChatGPT, Cursor, and every other client together.

## All 157 OpenAI tools

Every tool below is callable through https://api.elaichi.ai/mcp once OpenAI is connected, subject to the toolbox it is in and the restrictions on the caller.

- **List all OpenAI users** (List). List users in OpenAI organization. Returns id, name, email, role, and added_at for each user.
- **Get single OpenAI user by ID** (Get). Get a specific user in OpenAI by id. Returns id, name, email, role, and added_at in the response.
- **Delete a OpenAI user by ID** (Delete). Delete a user in OpenAI. Requires id. Returns object indicating deletion confirmation with object type, id, and deleted status.
- **Update a OpenAI user by ID** (Update). Update a user's role in OpenAI. Requires id. Returns id, name, email, role, and added_at for the updated user.
- **List all OpenAI projects** (List). List projects in OpenAI. Returns project id, name, created_at, archived_at, and status fields in the response.
- **Get single OpenAI project by ID** (Get). Get a specific project in OpenAI by id. Returns id, name, created_at, archived_at, status, and object fields.
- **Create a OpenAI project** (Create). Create a new project in OpenAI. Requires name. Returns id, object, name, created_at, archived_at, and status of the created project.
- **Update a OpenAI project by ID** (Update). Update project in OpenAI by id with a new name. Requires id. Returns the updated Project object with key details such as id, name, created date, and status.
- **OpenAI projects archive** (Archive). Archive a project in OpenAI by id. Returns the project object with fields id, object, name, created_at, archived_at, and status. Archived projects cannot be used or updated.
- **List all OpenAI project users** (List). List project users in OpenAI for a given project_id. Returns user fields including id for identification, name, email, role, and added_at timestamp in the response.
- **Get single OpenAI project user by ID** (Get). Get a specific project user in OpenAI. Requires project_id and id. Returns id, name, email, role, and added_at fields of the project user.
- **Create a OpenAI project user** (Create). Create a project user in OpenAI using project_id. Requires user_id and role in the request body. Returns object, id, email, role, and added_at fields in the response.
- **Update a OpenAI project user by ID** (Update). Update a specific project user's role in OpenAI. Requires project_id and id. Returns object, id, name, email, role, and added_at fields in the response.
- **Delete a OpenAI project user by ID** (Delete). Delete a user from a project in OpenAI. Requires project_id and id. Returns object type, id of the user, and confirmation that the user was deleted.
- **List all OpenAI me** (List). Use this endpoint to retrieve details about the currently authenticated user.
- **List all OpenAI project service accounts** (List). List project service accounts in OpenAI. Requires project_id. Returns id, name, role, and created_at for each service account.
- **Get single OpenAI project service account by ID** (Get). Get a service account in OpenAI. Requires project_id and id. Returns id, name, role, and created_at for the service account.
- **Create a OpenAI project service account** (Create). Create a new project service account in OpenAI. Requires project_id and name. Returns id, name, role, created_at, and an unredacted api_key object containing value, name, created_at, and id.
- **Delete a OpenAI project service account by ID** (Delete). Delete a service account in OpenAI from a specific project. Requires project_id and id. Returns object type, id, and deleted confirmation status.
- **List all OpenAI project API keys** (List). List project API keys in OpenAI. Requires project_id. Returns id, name, redacted_value, created_at, last_used_at, and owner details including user id, name, email, and role.
- **Get single OpenAI project API key by ID** (Get). Get a specific project API key in OpenAI by project_id and id. Returns id, name, redacted_value, created_at, last_used_at, and owner details including user id, name, email, role, and added_at.
- **Delete a OpenAI project API key by ID** (Delete). Delete a specific project API key in OpenAI. Requires project_id and id. Returns object confirming deletion with fields: id (key identifier), deleted (boolean status), and object (type of response).
- **List all OpenAI project rate limits** (List). List project rate limits in OpenAI. Requires project_id. Returns id, model, max_requests_per_1_minute, max_tokens_per_1_minute, and max_images_per_1_minute for each rate limit.
- **Update a OpenAI project rate limit by ID** (Update). Update a project rate limit in OpenAI. Requires project_id and id. Returns id, model, and rate limit values such as max_requests_per_1_minute, max_tokens_per_1_minute, and max_images_per_1_minute.
- **List all OpenAI audit logs** (List). List audit logs in OpenAI. Returns id, type, effective_at, and actor details including user id and email, along with event-specific fields such as project.archived or api_key.updated.
- **List all OpenAI completions** (List). Get completions usage details in OpenAI for the organization. Requires start_time. Returns time-bucketed data objects with start_time, end_time, input_tokens, output_tokens, input_cached_tokens, audio tokens, num_model_requests, and identifiers for project_id, user_id, api_key_id, model, and batch.
- **List all OpenAI embeddings** (List). Get embeddings usage details for the organization in OpenAI. Requires start_time. Returns time-bucketed usage objects including input_tokens, num_model_requests, project_id, user_id, api_key_id, and model.
- **List all OpenAI moderations** (List). Get moderations usage details in OpenAI for an organization within a specified time range using start_time. Returns time-bucketed usage with start_time, end_time, input_tokens, num_model_requests, project_id, user_id, api_key_id, and model.
- **List all OpenAI images** (List). Get images usage details in OpenAI for an organization. Requires start_time. Response includes start_time and end_time for each bucket, with results showing images count, num_model_requests, size, source, project_id, user_id, api_key_id, and model.
- **List all OpenAI audio speeches** (List). Get audio speeches usage details in OpenAI for an organization. Requires start_time. Returns buckets with start_time, end_time, and results including characters, num_model_requests, project_id, user_id, api_key_id, and model.
- **List all OpenAI audio transcriptions** (List). Get audio transcriptions usage details for an organization in OpenAI. Requires start_time. Returns start_time, end_time, and usage results including seconds, num_model_requests, project_id, user_id, api_key_id, and model.
- **List all OpenAI vector store** (List). Get vector stores usage details in OpenAI for an organization. Requires start_time. Returns buckets with start_time, end_time, and results including usage_bytes and project_id.
- **List all OpenAI code interpreter sessions** (List). Get code interpreter sessions usage in OpenAI for an organization. Requires start_time. Returns bucketed usage data with fields start_time, end_time, num_sessions, and project_id in results.
- **List all OpenAI costs** (List). Get costs for the organization in OpenAI. Requires start_time. Returns time bucketed costs with start_time, end_time, and results including amount (value, currency), line_item, and project_id.
- **Get single OpenAI certificate by ID** (Get). Get a certificate in OpenAI by id. Returns id, name, created_at, and certificate_details including valid_at, expires_at, and optional content.
- **Create a OpenAI certificate** (Create). Upload a certificate in OpenAI for an organization using content. Returns a certificate object with fields id, name, created_at, and certificate_details including valid_at and expires_at.
- **Update a OpenAI certificate by ID** (Update). Update a certificate in OpenAI using id. Only the name can be modified. Returns the updated certificate object with id, name, created_at, and certificate_details including valid_at and expires_at.
- **Delete a OpenAI certificate by ID** (Delete). Delete a certificate in OpenAI. Requires id. The certificate must be inactive for the organization and all projects. Returns object and id confirming deletion.
- **List all OpenAI organization certificates** (List). List organization certificates in OpenAI. Returns id, name, active status, created_at timestamp, and certificate_details including valid_at and expires_at for each certificate.
- **OpenAI organization certificates activate** (Activate). Activate organization-certificates in OpenAI. Requires certificate_ids. Returns a list of certificates with id, name, active status, created_at, and certificate_details including valid_at and expires_at.
- **OpenAI organization certificates deactivate** (Deactivate). Deactivate up to 10 organization certificates in OpenAI. Requires certificate_ids. Returns a list of certificates with id, name, active status, created_at, and certificate_details including valid_at and expires_at.
- **List all OpenAI project certificates** (List). List project certificates in OpenAI. Requires project_id. Returns id, name, active, created_at, and certificate_details (valid_at, expires_at) for each certificate.
- **OpenAI project certificates activate** (Activate). Activate certificates for a specific project in OpenAI. Requires project_id and certificate_ids. Returns certificate objects with id, name, active status, created_at, and certificate_details including valid_at and expires_at.
- **OpenAI project certificates deactivate** (Deactivate). Deactivate project-certificates in OpenAI for a given project_id. Deactivates up to 10 certificates atomically and idempotently. Returns certificate objects including id, name, active status, created_at, and certificate_details (valid_at, expires_at).
- **List all OpenAI invites** (List). List invites in OpenAI. Returns id, email, role, status, invited_at, expires_at, and accepted_at for each invite.
- **Get single OpenAI invite by ID** (Get). Get a specific invite in OpenAI using id. Returns id, email, role, status, invited_at, expires_at, and accepted_at fields.
- **Create a OpenAI invite** (Create). Create an invite in OpenAI for a user using email and role. Returns the invite object with fields including id, email, role, status, invited_at, expires_at, accepted_at, and projects.
- **Delete a OpenAI invite by ID** (Delete). Delete an invite in OpenAI by id. If the invite has already been accepted, it cannot be deleted. Returns object confirming deletion with fields: id and deleted.
- **List all OpenAI admin API keys** (List). List all organization and project API keys in OpenAI. Returns id, name, redacted_value, created_at, last_used_at, and owner details including type, id, name, created_at, and role.
- **Get single OpenAI admin API key by ID** (Get). Get an admin API key in OpenAI with id. Returns id, name, redacted_value, created_at, last_used_at, and owner details including type, id, name, created_at, and role.
- **Create a OpenAI admin API key** (Create). Create an admin API key in OpenAI. Requires name. Returns id, name, redacted_value, created_at, last_used_at, owner details, and value of the created key.
- **Delete a OpenAI admin API key by ID** (Delete). Delete a specific admin API key in OpenAI using id. Returns confirmation with id, object indicating deletion type, and deleted status.
- **Create a OpenAI response** (Create). Create a model response in OpenAI. Returns id, status, model, and output with assistant-generated content (type, text, annotations), along with usage details such as input_tokens, output_tokens, and total_tokens.
- **Get single OpenAI response by ID** (Get). Get a model response in OpenAI. Requires id. Returns fields including id, status, model, output messages (with role and content), usage details (input_tokens, output_tokens, total_tokens), and metadata.
- **Delete a OpenAI response by ID** (Delete). Delete a specific response in OpenAI by id. Returns id of the deleted response, object type, and confirmation that deleted is true.
- **OpenAI response cancel** (Cancel). Cancel a response in OpenAI using id. Only responses created with background=true can be cancelled. Returns a response object with fields like id, status, model, output, and usage.
- **OpenAI response input items** (Action). List input items for a specific response in OpenAI. Requires id. Returns id, type, role, and content fields with input text details.
- **Get single OpenAI conversation by ID** (Get). Get a conversation in OpenAI by id. Returns id, object type, created_at timestamp, and metadata fields in the response.
- **Create a OpenAI conversation** (Create). Create a conversation in OpenAI. Returns id, object type, created_at timestamp, and metadata for the new conversation.
- **Update a OpenAI conversation by ID** (Update). Update a conversation in OpenAI. Requires id. Returns the updated conversation with fields: id, object, created_at, and metadata.
- **Delete a OpenAI conversation by ID** (Delete). Delete a conversation in OpenAI using id. Returns id for the deleted conversation, object type as 'conversation.deleted', and deleted status.
- **List all OpenAI conversation items** (List). List conversation-items in OpenAI for a specific conversation using conversation_id. Returns fields including id (unique item identifier), type (item type), status (completion state), role (sender role), and content (message or data payload).
- **Get single OpenAI conversation item by ID** (Get). Get a specific conversation-item in OpenAI using conversation_id and id. Returns type, id, status, role, and content fields that describe the item state, ownership, and message content.
- **Create a OpenAI conversation item** (Create). Create items in a conversation in OpenAI. Requires conversation_id and items. Returns the created items with fields including id (unique identifier), type (item type), status (processing status), role (message role), and content (message body).
- **Delete a OpenAI conversation item by ID** (Delete). Delete a conversation-item in OpenAI. Requires conversation_id and id. Returns the updated conversation object including id, object, created_at, and metadata fields.
- **Create a OpenAI speech** (Create). Create speech in OpenAI by providing input, model, and voice. Returns audio file content or a stream of audio events.
- **Create a OpenAI transcription** (Create). Create a transcription in OpenAI from an audio file using a specified model. Requires file and model. Returns text with usage details including input_tokens, output_tokens, and total_tokens.
- **Create a OpenAI translation** (Create). Create translation of an audio file in OpenAI. Requires file and model. Returns text containing the translated English transcription of the audio.
- **Create a OpenAI image generation** (Create). Create an image in OpenAI using a prompt. Requires prompt. Returns created timestamp, data with image output (b64_json or url depending on model), and usage details including token counts.
- **Create a OpenAI image edit** (Create). Create an edited or extended image in OpenAI. Requires image and prompt. Returns data containing b64_json or url for the generated image, depending on model and output format.
- **List all OpenAI evals** (List). List evals in OpenAI. Returns id (unique identifier of eval), name, data_source_config (type, metadata, schema), testing_criteria (grading configuration), created_at (timestamp), and metadata (description).
- **Get single OpenAI eval by ID** (Get). Get an eval in OpenAI by id. Returns fields including id, data_source_config (schema used for evaluation), testing_criteria (evaluation checks), name, created_at, and metadata.
- **Create a OpenAI eval** (Create). Create a new eval in OpenAI. Requires data_source_config and testing_criteria. Returns eval id, data_source_config with schema, testing_criteria with graders, optional name, created_at timestamp, and metadata.
- **Update a OpenAI eval by ID** (Update). Update an eval in OpenAI. Requires id. Returns fields including id, data_source_config with schema, testing_criteria details, name, created_at, and metadata.
- **Delete a OpenAI eval by ID** (Delete). Delete an eval in OpenAI. Requires id. Returns object (eval.deleted), deleted (confirmation), and eval_id (identifier of deleted eval).
- **List all OpenAI eval runs** (List). List eval-runs for a specific evaluation in OpenAI. Requires eval_id. Returns runs with fields including id, eval_id, status, model, name, created_at, result_counts, per_model_usage, per_testing_criteria_results, and report_url.
- **Get single OpenAI eval run by ID** (Get). Get an eval run in OpenAI using eval_id and id. Returns id, eval_id, status, model, report_url, created_at, result_counts, and data_source details in the response.
- **Create a OpenAI eval run** (Create). Create a new eval run in OpenAI for a given evaluation using eval_id. Returns run id, status, model, name, created_at, report_url, result_counts, data_source details, and metadata.
- **Delete a OpenAI eval run by ID** (Delete). Delete an eval run in OpenAI. Requires eval_id and id. Returns object with deleted status, run_id, and object type.
- **OpenAI eval runs cancel** (Cancel). Cancel an ongoing eval run in OpenAI. Requires eval_id and id. Returns the updated eval run object with fields like id, eval_id, status (canceled), report_url, model, created_at, result_counts, data_source, and input_messages.
- **List all OpenAI eval run output items** (List). List eval run output items in OpenAI. Requires eval_id and run_id. Returns fields including id, status, datasource_item (with input and ground_truth), results (with score and pass/fail), and sample (with input, output, model, and usage details).
- **Get single OpenAI eval run output item by ID** (Get). Get a specific evaluation run output item in OpenAI. Requires eval_id, run_id, and id. Returns fields including id, status, datasource_item, results, sample (with input and output messages), usage, and model details.
- **List all OpenAI fine tuning jobs** (List). List fine-tuning jobs in OpenAI. Returns job id, model, created_at, fine_tuned_model, organization_id, result_files, status, validation_file, training_file, and metadata for each job.
- **Create a OpenAI fine tuning job** (Create). Create a fine-tuning job in OpenAI. Requires model and training_file. Response includes job id, status, and the name of the fine-tuned model once complete.
- **Get single OpenAI fine tuning job by ID** (Get). Get details of a specific fine-tuning job in OpenAI. Requires id. Returns fields including model, created_at, finished_at, fine_tuned_model, organization_id, status, training_file, hyperparameters, and trained_tokens.
- **OpenAI fine tuning jobs cancel** (Cancel). Cancel a fine-tuning job in OpenAI. Requires id. Returns the cancelled fine-tuning job object with fields: id, model, created_at, fine_tuned_model, organization_id, result_files, status, validation_file, and training_file.
- **OpenAI fine tuning jobs resume** (Resume). Resume a fine-tuning job in OpenAI. Requires id. Returns fine-tuning job object including id, model, created_at, fine_tuned_model, organization_id, result_files, status, validation_file, and training_file.
- **OpenAI fine tuning jobs pause** (Pause). Pause a fine-tuning job in OpenAI. Requires id. Returns the fine-tuning job object with fields including id, model, created_at, fine_tuned_model, organization_id, result_files, status, validation_file, and training_file.
- **List all OpenAI fine tuning events** (List). List fine-tuning events for a job in OpenAI. Requires fine_tuning_job_id. Returns event id, created_at timestamp, level, message, optional data, and type for each fine-tuning job event.
- **List all OpenAI fine tuning checkpoints** (List). List fine-tuning checkpoints for a specific fine-tuning job in OpenAI. Requires fine_tuning_job_id. Returns checkpoint id, created_at, fine_tuned_model_checkpoint, metrics, fine_tuning_job_id, and step_number.
- **List all OpenAI checkpoint permissions** (List). List checkpoint permissions in OpenAI for a fine-tuned model checkpoint. Requires id. Returns permission objects with fields id, created_at, and project_id.
- **Create a OpenAI checkpoint permission** (Create). Create checkpoint permissions in OpenAI. Requires id of fine_tuned_model_checkpoint. Returns a list of checkpoint.permission objects with fields id, created_at, and project_id.
- **Delete a OpenAI checkpoint permission by ID** (Delete). Delete a checkpoint permission in OpenAI. Requires fine_tuned_model_checkpoint and id. Returns id of the permission and deleted status.
- **List all OpenAI batches** (List). List batches in OpenAI. Returns batch objects including id, endpoint, status, input_file_id, output_file_id, error_file_id, lifecycle timestamps, request_counts, and metadata.
- **Get single OpenAI batch by ID** (Get). Get a specific batch in OpenAI by id. Returns fields such as endpoint, status, request_counts, input_file_id, output_file_id, timestamps, and metadata for monitoring and tracking batch operations.
- **Create a OpenAI batch** (Create). Create a batch in OpenAI using input_file_id, endpoint, and completion_window. Returns batch id, status, input_file_id, endpoint, completion_window, file references, timestamps, request_counts, and metadata.
- **OpenAI batches cancel** (Cancel). Cancel a batch in OpenAI using id. Returns a batch object with fields including id, status (shows cancelling or cancelled), input_file_id, output_file_id, timestamps for lifecycle events, request_counts, and metadata.
- **List all OpenAI files** (List). List files in OpenAI. Returns id, object, bytes, created_at, expires_at, filename, and purpose for each file.
- **Get single OpenAI file by ID** (Get). Get information about a specific file in OpenAI. Requires id. Returns id, object, bytes, created_at, expires_at, filename, and purpose fields in the response.
- **Create a OpenAI file** (Create). Upload a file in OpenAI. Requires file and purpose. Returns id, object, bytes, created_at, expires_at, filename, and purpose of the uploaded file.
- **Delete a OpenAI file by ID** (Delete). Delete a file in OpenAI. Requires id. Returns id of the file, object type, and deletion status.
- **Create a OpenAI upload** (Create). Create an upload in OpenAI. Requires bytes, filename, mime_type, and purpose. Returns an Upload object with id, bytes, filename, purpose, status, created_at, and expires_at.
- **OpenAI uploads add** (Add). Add a part to an upload in OpenAI. Requires id. The response returns id (the part identifier), object (type), created_at (timestamp), and upload_id (associated upload). Each part is limited to 64MB and total upload size to 8GB.
- **OpenAI uploads complete** (Complete). Complete an upload in OpenAI using id. Requires part_ids in request body. Returns the Upload object with status 'completed' and a nested File object containing id, filename, bytes, purpose, and created_at.
- **OpenAI uploads cancel** (Cancel). Cancel an upload in OpenAI. Requires id. Returns the Upload object with id, object, bytes, created_at, filename, purpose, status, and expires_at fields. Once cancelled, no parts can be added.
- **List all OpenAI models** (List). List models in OpenAI. Returns model objects including id (unique identifier), created (timestamp), and owned_by (organization or user that owns the model).
- **Get single OpenAI model by ID** (Get). Get a specific model in OpenAI using id. Returns fields id (model identifier), object (resource type), created (timestamp), and owned_by (model owner).
- **Delete a OpenAI model by ID** (Delete). Delete a fine-tuned model in OpenAI. Requires id. Returns id of the deleted model, object type, and deletion status.
- **List all OpenAI vector stores** (List). List vector stores in OpenAI. Returns id, name, created_at, bytes, and file_counts for each vector store.
- **Get single OpenAI vector store by ID** (Get). Get a vector store in OpenAI by id. Returns id, object type, and created_at timestamp in the response.
- **Create a OpenAI vector store** (Create). Create a vector store in OpenAI. Returns id, object, created_at, name, bytes, and file_counts indicating processing status of associated files.
- **Update a OpenAI vector store by ID** (Update). Update a vector store in OpenAI by id. Returns fields including id, name, created_at, bytes, and file_counts (in_progress, completed, failed, cancelled, total).
- **Delete a OpenAI vector store by ID** (Delete). Delete a vector store in OpenAI. Requires id. Returns id of the deleted vector store, object type indicating deletion, and deleted status.
- **List all OpenAI vector store search** (List). Search a vector store in OpenAI using vector_store_id and query. Returns results with file_id, filename, score, attributes, and content chunks.
- **List all OpenAI vector store files** (List). List vector store files in OpenAI by vector_store_id. Returns id, object, created_at, and vector_store_id for each file.
- **Get single OpenAI vector store file by ID** (Get). Get a vector store file in OpenAI using vector_store_id and id. Returns id, object, created_at, vector_store_id, status, and last_error fields.
- **Create a OpenAI vector store file** (Create). Create a vector store file in OpenAI using vector_store_id and file_id. Returns fields including id (file identifier), object (resource type), created_at (timestamp), usage_bytes (storage size), vector_store_id (associated store), status (processing state), and last_error (error details if any).
- **Delete a OpenAI vector store file by ID** (Delete). Delete a specific vector store file in OpenAI using vector_store_id and id. This removes the file from the vector store but does not delete the underlying file. Returns id, object type, and deletion status in the response.
- **List all OpenAI vector store file content** (List). Get parsed content of a specific vector store file in OpenAI. Requires vector_store_id and id. Returns file_id, filename, attributes, and content array with parsed data.
- **Create a OpenAI vector store file batch** (Create). Create a vector store file batch in OpenAI. Requires vector_store_id and file_ids. Returns id, object, created_at, vector_store_id, status, and file_counts to track processing state and counts of files in different statuses.
- **List all OpenAI vector store file batches** (List). List vector store files in a batch in OpenAI. Requires vector_store_id and batch_id. Returns file id, created_at timestamp, and vector_store_id for each file.
- **Get single OpenAI vector store file batch by ID** (Get). Get a specific vector store file batch in OpenAI using vector_store_id and id. Returns id, created_at, vector_store_id, status, and file_counts with counts of in_progress, completed, failed, cancelled, and total files.
- **OpenAI vector store file batches cancel** (Cancel). Cancel a vector store file batch in OpenAI. Requires vector_store_id and id. Returns the modified file batch object with fields: id, object, created_at, vector_store_id, status, and file_counts for tracking batch progress.
- **List all OpenAI containers** (List). List containers in OpenAI. Returns id, object type, created_at, status, expires_after, last_active_at, and name fields for each container.
- **Get single OpenAI container by ID** (Get). Get a specific container in OpenAI by id. Requires id. Returns container id, object type, created_at timestamp, status, expiration settings, last_active_at timestamp, and name.
- **Create a OpenAI container** (Create). Create a container in OpenAI. Requires name. Returns container id for identification, status for current state, created_at timestamp, last_active_at for activity tracking, and name.
- **Delete a OpenAI container by ID** (Delete). Delete a container in OpenAI by id. Returns id to confirm which container was deleted, object indicating the resource type, and deleted flag showing successful deletion.
- **List all OpenAI container files** (List). List container files in OpenAI. Requires container_id. Returns id, created_at, bytes, container_id, path, and source for each file.
- **Get single OpenAI container file by ID** (Get). Get a specific container file in OpenAI using container_id and id. Returns id, object, created_at, bytes, container_id, path, and source for the file.
- **Delete a OpenAI container file by ID** (Delete). Delete a container file in OpenAI. Requires container_id and id. Returns id of the deleted file, object type as container.file.deleted, and deleted status confirming removal.
- **List all OpenAI container file content** (List). Get container file content in OpenAI using container_id and id. Returns the binary content of the file.
- **List all OpenAI chat completions** (List). List stored Chat Completions in OpenAI. Returns id, model, created timestamp, request_id, usage details, seed, top_p, temperature, penalties, system_fingerprint, service_tier, metadata, and choices with assistant message content.
- **Get single OpenAI chat completion by ID** (Get). Get a stored chat completion in OpenAI using id. Only completions created with store=true can be retrieved. Returns fields including id, model, created, usage (tokens), and choices with assistant message content and finish_reason.
- **Create a OpenAI chat completion** (Create). Create a chat completion in OpenAI. Requires model and messages. Returns id, model, choices with assistant message content and refusal, finish_reason, and usage with prompt_tokens, completion_tokens, and total_tokens.
- **Update a OpenAI chat completion by ID** (Update). Update a stored chat completion in OpenAI by id. Requires id and metadata. Returns the chat completion with updated metadata, including fields such as id, model, created, usage, metadata, and choices with assistant message content.
- **Delete a OpenAI chat completion by ID** (Delete). Delete a stored chat completion in OpenAI using id. Only completions created with store=true can be deleted. Returns object, id, and deleted fields confirming deletion status.
- **List all OpenAI assistants** (List). List assistants in OpenAI. Returns assistant objects with fields including id, created_at, name, model, instructions, tools, metadata, top_p, temperature, and response_format.
- **Get single OpenAI assistant by ID** (Get). Get assistant in OpenAI using id. Returns fields including id, name, model, instructions, tools, metadata, top_p, temperature, and response_format.
- **Create a OpenAI assistant** (Create). Create an assistant in OpenAI with a required model. Returns id, name, description, model, instructions, tools, metadata, top_p, temperature, response_format, and created_at in the response.
- **Update a OpenAI assistant by ID** (Update). Update an assistant in OpenAI using id. Returns assistant fields including id, name, description, model, instructions, tools, tool_resources, metadata, top_p, temperature, and response_format.
- **Delete a OpenAI assistant by ID** (Delete). Delete an assistant in OpenAI. Requires id. Returns id, object indicating 'assistant.deleted', and deleted status to confirm successful removal.
- **Get single OpenAI thread by ID** (Get). Get a specific thread in OpenAI by id. Returns id, object type, created_at timestamp, metadata, and tool_resources for the thread.
- **Create a OpenAI thread** (Create). Create a thread in OpenAI. Returns id for thread identification, object type as 'thread', created_at timestamp, and optional metadata and tool_resources when provided.
- **Update a OpenAI thread by ID** (Update). Update a thread in OpenAI by id. Only metadata can be modified. Returns the thread id, object type, created_at timestamp, metadata, and tool_resources.
- **Delete a OpenAI thread by ID** (Delete). Delete a thread in OpenAI by id. Returns id, object, and deleted status in the response.
- **List all OpenAI messages** (List). List messages in OpenAI for a given thread. Requires thread_id. Returns id, created_at, role, thread_id, content, attachments, and metadata for each message.
- **Get single OpenAI message by ID** (Get). Get a specific message in OpenAI. Requires thread_id and id. Returns fields including id, object, created_at, thread_id, role, content, attachments, and metadata.
- **Create a OpenAI message** (Create). Create a message in OpenAI for a specific thread using thread_id. Requires role and content. Returns id, role, content with text and annotations, attachments, metadata, and thread_id in the response.
- **Update a OpenAI message by ID** (Update). Update a specific message in OpenAI using thread_id and id. Returns message fields including id, object, created_at, thread_id, role, content, file_ids, and metadata.
- **Delete a OpenAI message by ID** (Delete). Delete a specific message in OpenAI. Requires thread_id and id. Response returns id for the deleted message, object type as thread.message.deleted, and deleted status.
- **List all OpenAI runs** (List). List runs in OpenAI for a given thread_id. Returns run objects with fields including id, status, model, created_at, assistant_id, usage (prompt_tokens, completion_tokens, total_tokens), and tool details.
- **Get single OpenAI run by ID** (Get). Get a specific run in OpenAI. Requires thread_id and id. Returns fields including id, status, assistant_id, thread_id, created_at, completed_at, model, tools, and usage token details.
- **Create a OpenAI run** (Create). Create a run in OpenAI using thread_id and assistant_id. Returns id, status, assistant_id, thread_id, model, created_at, completed_at, tools, usage, temperature, top_p, and truncation_strategy in the response.
- **Update a OpenAI run by ID** (Update). Modify a run in OpenAI. Requires thread_id and id. Returns the updated run object including status, assistant_id, thread_id, created_at, completed_at, model, tools, tool_resources, metadata, and usage fields.
- **OpenAI runs cancel** (Cancel). Cancel a run in OpenAI that is in_progress. Requires thread_id and id. Returns the modified run with fields such as status (updated to cancelling), assistant_id, thread_id, timestamps (created_at, started_at, expires_at), model, instructions, tools, and tool_resources.
- **List all OpenAI run steps** (List). List run steps in OpenAI for a given thread_id and run_id. Returns step id, type, status, timestamps, step_details, and usage fields in the response.
- **Get single OpenAI run step by ID** (Get). Get a specific run step in OpenAI. Requires thread_id, run_id, and id. Returns fields including id, created_at, run_id, assistant_id, thread_id, type, status, step_details with message_id, and usage with tokens.
