UNPKG

@nekobato/chatgpt-websearch-mcp

Version:

A local MCP stdio server that provides access to the OpenAI (ChatGPT) API with web search capabilities for Claude Code and other MCP clients.

96 lines (71 loc) 2.82 kB
# ChatGPT WebSearch MCP A local MCP stdio server that provides access to the OpenAI (ChatGPT) API for Claude Code and other MCP clients. Supports models with web search capabilities. --- ## Usage ### Claude Code ```sh $ claude mcp add chatgpt-websearch \ -s user \ # If you omit this line, it will be installed in the project scope -e OPENAI_API_KEY=your-api-key \ -- npx @nekobato/chatgpt-websearch-mcp ``` ### Or configure in settings ```jsonc { "mcpServers": { "chatgpt-websearch": { "command": "npx", "args": ["@nekobato/chatgpt-websearch-mcp"], "env": { "OPENAI_API_KEY": "your-api-key", ... }, }, }, } ``` ### Environment Variables The following environment variables can be used to set default values: - `OPENAI_API_KEY` (required): Your OpenAI API key - `OPENAI_DEFAULT_MODEL` (optional): Default model to use (default: gpt-5) - `REASONING_EFFORT` (optional): Default reasoning effort level for reasoning models (minimal|low|medium|high) - `SEARCH_CONTEXT_SIZE` (optional): Default verbosity level (low|medium|high) - `OPENAI_MAX_RETRIES` (optional): Default maximum retry attempts (default: 3) - `OPENAI_API_TIMEOUT` (optional): Default API timeout in milliseconds. If not set, auto-adjusts based on effort level: - `minimal/low`: 60000 (1 minute) - `medium`: 120000 (2 minutes) - `high`: 300000 (5 minutes) ## API ### MCP Tools - `ask_chatgpt`: Send a prompt to ChatGPT and receive a response - `prompt` (required): The prompt to send - `model` (optional): The model to use (default: from OPENAI_DEFAULT_MODEL env var or gpt-5) - `system` (optional): System prompt to set context and behavior - `temperature` (optional): Temperature for response generation (0-2, default: 0.7) - Not available for reasoning models - `effort` (optional): Reasoning effort level (minimal|low|medium|high, default: from REASONING_EFFORT env var) - For reasoning models only - `verbosity` (optional): Output verbosity (low|medium|high, default: from SEARCH_CONTEXT_SIZE env var) - For reasoning models only - `maxTokens` (optional): Maximum output tokens - `maxRetries` (optional): Maximum API retry attempts (default: from OPENAI_MAX_RETRIES env var or 3) - `timeoutMs` (optional): Request timeout in milliseconds. Auto-adjusts based on effort level (high=300s, medium=120s, low/minimal=60s) - `useStreaming` (optional): Force streaming mode to prevent timeouts. Auto-enabled for medium/high effort reasoning models ## Development ### Requirements - Node.js 22+ - An OpenAI API key in `OPENAI_API_KEY` ### Commands ```bash # Install dependencies pnpm install # Run in development mode pnpm dev # Build for production pnpm build # Run tests pnpm test # Lint code pnpm lint # Format code pnpm format ``` ## License MIT License