Sequential Thinking README

The full upstream README, mirrored for reference. Install config, tool schemas, adoption signals and our own overview live on the Sequential Thinking listing page.

Sequential Thinking MCP Server

An MCP server implementation that provides a tool for dynamic and reflective problem-solving through a structured thinking process.

Published on npm as @modelcontextprotocol/server-sequential-thinking.

Features

  • Break down complex problems into manageable steps
  • Revise and refine thoughts as understanding deepens
  • Branch into alternative paths of reasoning
  • Adjust the total number of thoughts dynamically
  • Generate and verify solution hypotheses
  • Serves both protocol eras on stdio: 2026-07-28 clients (server/discover, no handshake) and 2025-era clients (initialize). The thought history lasts as long as the client's connection, on either era

Tool

sequentialthinking

Facilitates a detailed, step-by-step thinking process for problem-solving and analysis.

Inputs:

  • thought (string): The current thinking step
  • nextThoughtNeeded (boolean): Whether another thought step is needed
  • thoughtNumber (integer): Current thought number
  • totalThoughts (integer): Estimated total thoughts needed
  • isRevision (boolean, optional): Whether this revises previous thinking
  • revisesThought (integer, optional): Which thought is being reconsidered
  • branchFromThought (integer, optional): Branching point thought number
  • branchId (string, optional): Branch identifier
  • needsMoreThoughts (boolean, optional): If more thoughts are needed

Usage

The Sequential Thinking tool is designed for:

  • Breaking down complex problems into steps
  • Planning and design with room for revision
  • Analysis that might need course correction
  • Problems where the full scope might not be clear initially
  • Tasks that need to maintain context over multiple steps
  • Situations where irrelevant information needs to be filtered out

In practice, you do not call sequentialthinking directly by hand unless your client exposes raw tool calls. Instead, connect the server to an MCP-aware host and ask the model to think through a problem step by step. The host can then decide to call the tool one or more times while it works.

What it looks like in use

Example prompts that typically benefit from this tool:

  • Plan a database migration from PostgreSQL 14 to 16, list risks, and revise the plan if downtime exceeds 5 minutes.
  • Debug why this deployment only fails in production and show your reasoning step by step.
  • Compare three architecture options for a file sync engine and branch if one assumption turns out to be wrong.

How to tell it is working

If your host or inspector shows tool activity, you should see repeated calls to sequentialthinking with fields such as:

  • thought
  • thoughtNumber
  • totalThoughts
  • nextThoughtNeeded

When the reasoning changes course, you may also see revision or branching fields like isRevision, revisesThought, branchFromThought, or branchId.

Quick manual verification

After installing the server in your MCP host:

  1. Restart or reload the host so it reconnects to the server.
  2. Confirm the sequentialthinking tool appears in the host's MCP tool list or inspector.
  3. Ask the host to solve a non-trivial problem in a step-by-step way.
  4. Verify that the host invokes the tool multiple times instead of returning a one-shot answer.

Requirements

Node.js 24 or later, when the server runs through npx or from source.

Configuration

Usage with Claude Desktop

Add this to your claude_desktop_config.json:

npx

config.json
{
  "mcpServers": {
    "sequential-thinking": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-sequential-thinking"
      ]
    }
  }
}

On Windows, use cmd /c to launch npx:

config.json
{
  "mcpServers": {
    "sequential-thinking": {
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "@modelcontextprotocol/server-sequential-thinking"
      ]
    }
  }
}

docker

config.json
{
  "mcpServers": {
    "sequentialthinking": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "mcp/sequentialthinking"
      ]
    }
  }
}

To disable logging of thought information set env var: DISABLE_THOUGHT_LOGGING to true.

Each thought is logged to stderr as a box, one row per line of the thought. The box is at most 100 characters wide, with longer lines (and a long branch ID in the header) wrapped, and draws at most 1000 rows of thought text; past that it ends with a row saying how many lines it left out. Only the log is shortened: the server keeps the whole thought in its history, and the tool result is unchanged.

To bound memory use, the server retains at most MAX_THOUGHT_HISTORY thoughts per connection (a positive integer; default 1000). Past the cap the oldest thought is dropped, from its branch too, so thoughtHistoryLength in the result stops at the cap and a branch whose thoughts have all been dropped is no longer listed in branches.

Usage with VS Code

For quick installation, click one of the installation buttons below...

Install with NPX in VS Code Install with NPX in VS Code Insiders

Install with Docker in VS Code Install with Docker in VS Code Insiders

For manual installation, you can configure the MCP server using one of these methods:

Method 1: User Configuration (Recommended) Add the configuration to your user-level MCP configuration file. Open the Command Palette (Ctrl + Shift + P) and run MCP: Open User Configuration. This will open your user mcp.json file where you can add the server configuration.

Method 2: Workspace Configuration Alternatively, you can add the configuration to a file called .vscode/mcp.json in your workspace. This will allow you to share the configuration with others.

For more details about MCP configuration in VS Code, see the official VS Code MCP documentation.

For NPX installation:

config.json
{
  "servers": {
    "sequential-thinking": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-sequential-thinking"
      ]
    }
  }
}

On Windows, use:

config.json
{
  "servers": {
    "sequential-thinking": {
      "command": "cmd",
      "args": [
        "/c",
        "npx",
        "-y",
        "@modelcontextprotocol/server-sequential-thinking"
      ]
    }
  }
}

For Docker installation:

config.json
{
  "servers": {
    "sequential-thinking": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "mcp/sequentialthinking"
      ]
    }
  }
}

Usage with Codex CLI

Run the following:

npx

bash
codex mcp add sequential-thinking npx -y @modelcontextprotocol/server-sequential-thinking

Building

Docker:

Terminal
docker build -t mcp/sequentialthinking -f src/sequentialthinking/Dockerfile .

License

This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.