Skip to main content
Glama
README.md
# gpt5mcp

MCP server for OpenAI GPT-5 API integration with Claude Code. Provides `gpt5_agent` and `gpt5_codex` tools.

## Setup

### Option A: npm install (recommended)

```bash
npm install -g gpt5mcp

# Basic (gpt5_agent only)
claude mcp add gpt5mcp -e OPENAI_API_KEY=sk-... -- gpt5mcp

# Full (with gpt5_codex support)
claude mcp add gpt5mcp \
  -e OPENAI_API_KEY=sk-... \
  -e CODEX_BIN=$(which codex) \
  -- gpt5mcp
```

### Option B: From source

```bash
git clone https://github.com/cristip73/gpt5mcp.git
cd gpt5mcp
npm install
npm run build

claude mcp add gpt5mcp \
  -e OPENAI_API_KEY=sk-... \
  -e CODEX_BIN=$(which codex) \
  -- node /absolute/path/to/gpt5mcp/build/index.js
```

### Option C: Manual config

Create/edit `~/.claude/.mcp.json`:
```json
{
  "mcpServers": {
    "gpt5mcp": {
      "command": "gpt5mcp",
      "env": {
        "OPENAI_API_KEY": "sk-...",
        "CODEX_BIN": "/path/from/which/codex"
      }
    }
  }
}
```

### Codex CLI Setup (for `gpt5_codex` tool)

The `gpt5_codex` tool requires OpenAI's Codex CLI. Skip this if you only need `gpt5_agent`.

```bash
# Install Codex CLI
npm install -g @openai/codex

# Find the path
which codex
# Example output: /usr/local/bin/codex

# Use this path for CODEX_BIN
```

### Verify

Restart Claude Code and check:
```bash
claude mcp list
```

You should see `gpt5mcp` with tools `gpt5_agent` and `gpt5_codex`.

### Environment Variables

| Variable | Required | Description |
|----------|----------|-------------|
| `OPENAI_API_KEY` | Yes | OpenAI API key with GPT-5 access |
| `CODEX_BIN` | No | Path to Codex CLI binary (for `gpt5_codex` tool) |

## Active Tools

### GPT-5 Agent (`gpt5_agent`)

Autonomous agent with SSE streaming that solves complex multi-step tasks. Supports tool orchestration, web search, code interpreter, and file operations.

**Key Parameters:**
| Parameter | Default | Description |
|-----------|---------|-------------|
| `task` | required | Task description |
| `model` | `gpt-5.2` | Model: `gpt-5.2`, `gpt-5.1`, `gpt-5`, `gpt-5-mini`, `gpt-5-nano` |
| `reasoning_effort` | `medium` | `none`, `minimal`, `low`, `medium`, `high` |
| `verbosity` | `medium` | `low`, `medium`, `high` |
| `max_iterations` | 10 | Max agent loops (1-20) |
| `enable_web_search` | true | Enable web search |
| `enable_code_interpreter` | false | Enable code execution |
| `enable_file_operations` | false | Enable file read/write |
| `save_to_file` | true | Save output to `gpt5_docs/` |
| `previous_response_id` | - | Continue previous conversation |

**Examples:**
```json
{
  "task": "Research the latest AI developments in 2026",
  "reasoning_effort": "high",
  "enable_web_search": true
}
```

```json
{
  "task": "Analyze this Python code for performance issues",
  "file_path": "/path/to/code.py",
  "enable_code_interpreter": true
}
```

### GPT-5 Codex (`gpt5_codex`)

Deep code analysis via Codex CLI. Spawns `codex` binary for autonomous code editing.

**Key Parameters:**
| Parameter | Default | Description |
|-----------|---------|-------------|
| `prompt` | required | Task for Codex |
| `model` | `gpt-5.2-codex` | Model: `gpt-5.2-codex`, `gpt-5.1-codex`, `o3`, `o4-mini` |
| `reasoning` | `medium` | `low`, `medium`, `high`, `extra_high` |
| `edit_mode` | `auto_edit` | `research`, `auto_edit`, `full_auto`, `dangerous` |
| `file_path` | - | Single file input (100KB max) |
| `files` | - | Multiple files (200KB total) |
| `output_format` | `standard` | `standard` (with metadata) or `clean` |

**Edit Modes:**
- `research` - Read-only analysis, no file changes
- `auto_edit` - Prompts before each edit
- `full_auto` - Auto-applies safe edits
- `dangerous` - No restrictions (use with caution)

**Example:**
```json
{
  "prompt": "Refactor this module to use async/await",
  "file_path": "/path/to/module.ts",
  "reasoning": "high",
  "edit_mode": "auto_edit"
}
```

## Inactive Tools

Disabled by default for performance. Enable in `src/tools/index.ts`:

| Tool | Description |
|------|-------------|
| `web_search` | Web search via OpenAI Responses API |
| `file_operations` | File read/write/delete |
| `code_interpreter` | Execute Python/JavaScript |
| `image_generation` | DALL-E 3 / GPT-Image-1 |
| `function_definition` | Define custom reusable functions |

**To enable:**
```typescript
// src/tools/index.ts
const ACTIVE_TOOLS = {
  gpt5_agent: true,
  gpt5_codex: true,
  image_generation: true,  // ← set to true
  // ...
};
```
Then: `npm run build` and restart Claude Code.

## Architecture

```
src/
├── index.ts              # MCP server entry point
├── utils.ts              # GPT-5 API utilities
├── types/
│   ├── responses.ts      # API response types
│   └── tools.ts          # Tool interface definitions
└── tools/
    ├── index.ts          # Tool registration & activation
    ├── registry.ts       # Tool registry (singleton)
    ├── base.ts           # Base tool class
    └── built-in/
        ├── gpt5-agent.ts     # ✅ Active
        ├── gpt5-codex.ts     # ✅ Active
        ├── web-search.ts
        ├── file-operations.ts
        ├── code-interpreter.ts
        ├── image-generation.ts
        └── function-definition.ts
```

## Streaming Implementation

GPT-5 Agent uses SSE (Server-Sent Events) to prevent MCP timeout:
- Activity timeout: 120 seconds without data
- Request timeout: up to 15 minutes for complex tasks
- Activated when `reasoning_effort` is not `none` or `minimal`

## Troubleshooting

**Server not found:**
```bash
claude mcp remove gpt5mcp
claude mcp add gpt5mcp -e OPENAI_API_KEY=sk-... -- gpt5mcp
```

**Socket hang up errors:**
- Ensure `.mcp.json` points to `build/index.js` (not `dist/`)
- SSE streaming handles long-running requests

**Codex not working:**
```bash
# 1. Install Codex CLI
npm install -g @openai/codex

# 2. Find path
which codex

# 3. Re-add MCP with correct path
claude mcp remove gpt5mcp
claude mcp add gpt5mcp -e OPENAI_API_KEY=sk-... -e CODEX_BIN=$(which codex) -- gpt5mcp
```

## Credits

Originally inspired by [AllAboutAI-YT](https://github.com/AllAboutAI-YT). Significantly rewritten with SSE streaming, Codex CLI integration, and improved tool architecture.

---

**Built with MCP • Powered by OpenAI GPT-5**