ChatGPT Responses
About
Bridges Claude Desktop with ChatGPT API, enabling direct access to standard ChatGPT interactions and web search-enabled queries with conversation continuity through response IDs.
Details
- Author
- billster45
- Repository
- billster45/mcp-chatgpt-responses
- GitHub stars
- 4
- Downloads
- 700
- Categories
- Communication, Other, AI, Productivity, Developer Tools, Design, Community, Search, Infrastructure, API
- Tags
- #web, #integration
Jump to
- Call the ChatGPT API with customisable parameters
- Aks Claude and ChatGPT to talk to each other in a long running discussion!
- Configure model versions, temperature, and other parameters
- Use web search to get up-to-date information from the internet
- Uses OpenAI's Responses API for automatic conversation state management
- Use your own OpenAI API key
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
ChatGPT ResponsesCommand (node, npx, python, etc.)uvArguments-
Argument 1
--directory -
Argument 2
\path\to\mcp-chatgpt-responses -
Argument 3
run -
Argument 4
chatgpt_server.py
Environment-
MAX_TOKENS
1000 -
DEFAULT_MODEL
gpt-4o -
OPENAI_API_KEY
your-api-key-here -
DEFAULT_TEMPERATURE
0.7
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
1. Clone this repository:
git clone https://github.com/billster45/mcp-chatgpt-responses.git
cd mcp-chatgpt-responses
2. Set up a virtual environment and install dependencies using uv:
uv venv
.venv\\Scripts\\activate
uv pip install -r requirements.txt
To install ChatGPT Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @billster45/mcp-chatgpt-responses --client claude
Tell Claude to ask ChatGPT a question!
Use the ask_chatgpt tool to answer: What is the best way to learn Python?
Tell Claude to have a conversation with ChatGPT:
Use the ask_chatgpt tool to have a two way conversation between you and ChatGPT about the topic that is most important to you.
Note how in a turn taking conversation the response id allows ChatGPT to store the history of the conversation so its a genuine conversation and not just as series of API calls. This is called conversation state.
ask_chatgpt
Send a prompt to ChatGPT and get a response. Parameters: prompt (string), model (string), temperature (float), max_output_tokens (int), response_id (string)
ask_chatgpt_with_web_search
Send a prompt to ChatGPT with web search enabled to get up-to-date information. Parameters: prompt (string), model (string), temperature (float), max_output_tokens (int), response_id (string)
The MCP server provides the following tools:
1. ask_chatgpt(prompt, model, temperature, max_output_tokens, response_id) - Send a prompt to ChatGPT and get a response
2. ask_chatgpt_with_web_search(prompt, model, temperature, max_output_tokens, response_id) - Send a prompt to ChatGPT with web search enabled to get up-to-date information
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"chatgpt responses": {
"env": {
"MAX_TOKENS": "1000",
"DEFAULT_MODEL": "gpt-4o",
"OPENAI_API_KEY": "your-api-key-here",
"DEFAULT_TEMPERATURE": "0.7"
},
"args": [
"--directory",
"\\path\\to\\mcp-chatgpt-responses",
"run",
"chatgpt_server.py"
],
"command": "uv"
}
}
}
Linux
{
"env": {
"MAX_TOKENS": "1000",
"DEFAULT_MODEL": "gpt-4o",
"OPENAI_API_KEY": "your-api-key-here",
"DEFAULT_TEMPERATURE": "0.7"
},
"args": [
"--directory",
"\\path\\to\\mcp-chatgpt-responses",
"run",
"chatgpt_server.py"
],
"command": "uv"
}
Macos
{
"env": {
"MAX_TOKENS": "1000",
"DEFAULT_MODEL": "gpt-4o",
"OPENAI_API_KEY": "your-api-key-here",
"DEFAULT_TEMPERATURE": "0.7"
},
"args": [
"--directory",
"\\path\\to\\mcp-chatgpt-responses",
"run",
"chatgpt_server.py"
],
"command": "uv"
}
Windows
{
"env": {
"MAX_TOKENS": "1000",
"DEFAULT_MODEL": "gpt-4o",
"OPENAI_API_KEY": "your-api-key-here",
"DEFAULT_TEMPERATURE": "0.7"
},
"args": [
"--directory",
"\\path\\to\\mcp-chatgpt-responses",
"run",
"chatgpt_server.py"
],
"command": "uv"
}
MCP ChatGPT Server
This MCP server allows you to access OpenAI's ChatGPT API directly from Claude Desktop.
📝 Read about why I built this project: I Built an AI That Talks to Other AIs: Demystifying the MCP Hype
Features
- Call the ChatGPT API with customisable parameters
- Aks Claude and ChatGPT to talk to each other in a long running discussion!
- Configure model versions, temperature, and other parameters
- Use web search to get up-to-date information from the internet
- Uses OpenAI's Responses API for automatic conversation state management
- Use your own OpenAI API key
Setup Instructions
Installing via Smithery
To install ChatGPT Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @billster45/mcp-chatgpt-responses --client claude
Prerequisites
- Python 3.10 or higher
- Claude Desktop application
- OpenAI API key
- uv for Python package management
Installation
1. Clone this repository:
git clone https://github.com/billster45/mcp-chatgpt-responses.git
cd mcp-chatgpt-responses
2. Set up a virtual environment and install dependencies using uv:
uv venv
.venv\\Scripts\\activate
uv pip install -r requirements.txt
Using with Claude Desktop
1. Configure Claude Desktop to use this MCP server by following the instructions at:
MCP Quickstart Guide
2. Add the following configuration to your Claude Desktop config file (adjust paths as needed):
{
"mcpServers": {
"chatgpt": {
"command": "uv",
"args": [
"--directory",
"\\path\\to\\mcp-chatgpt-responses",
"run",
"chatgpt_server.py"
],
"env": {
"OPENAI_API_KEY": "your-api-key-here",
"DEFAULT_MODEL": "gpt-4o",
"DEFAULT_TEMPERATURE": "0.7",
"MAX_TOKENS": "1000"
}
}
}
}
3. Restart Claude Desktop.
4. You can now use the ChatGPT API through Claude by asking questions that mention ChatGPT or that Claude might not be able to answer.
Available Tools
The MCP server provides the following tools:
1. ask_chatgpt(prompt, model, temperature, max_output_tokens, response_id) - Send a prompt to ChatGPT and get a response
2. ask_chatgpt_with_web_search(prompt, model, temperature, max_output_tokens, response_id) - Send a prompt to ChatGPT with web search enabled to get up-to-date information
Example Usage
Basic ChatGPT usage:
Tell Claude to ask ChatGPT a question!
Use the ask_chatgpt tool to answer: What is the best way to learn Python?
Tell Claude to have a conversation with ChatGPT:
Use the ask_chatgpt tool to have a two way conversation between you and ChatGPT about the topic that is most important to you.
Note how in a turn taking conversation the response id allows ChatGPT to store the history of the conversation so its a genuine conversation and not just as series of API calls. This is called conversation state.
With web search:
For questions that may benefit from up-to-date information:
Use the ask_chatgpt_with_web_search tool to answer: What are the latest developments in quantum computing?
Now try web search in agentic way to plan your perfect day out based on the weather!
Use the ask_chatgpt_with_web_search tool to find the weather tomorrow in New York, then based on that weather and what it returns, keep using the tool to build up a great day out for someone who loves food and parks
How It Works
This tool utilizes OpenAI's Responses API, which automatically maintains conversation state on OpenAI's servers. This approach:
1. Simplifies code by letting OpenAI handle the conversation history
2. Provides more reliable context tracking
3. Improves the user experience by maintaining context across messages
4. Allows access to the latest information from the web with the web search tool
License
MIT License
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.






