sequential-thinking-mcp
by sharvilm1
README.md
# š§ Sequential Thinking MCP Server
[](https://modelcontextprotocol.io)
[](https://vercel.com)
[](https://www.typescriptlang.org)
[](LICENSE)
A **Remote MCP Server** implementation for dynamic and reflective problem-solving through structured thinking. Built with the official `@vercel/mcp-adapter` for seamless Vercel deployment with **Streamable HTTP** transport.
## ⨠Features
- š **Streamable HTTP Transport** - Modern, efficient transport (recommended by MCP spec March 2025)
- š **SSE Support** - Backward compatibility with Server-Sent Events
- š¦ **Vercel Native** - One-click deployment with `@vercel/mcp-adapter`
- š **Branching Logic** - Explore alternative thinking paths
- š **Revision Tracking** - Refine and improve previous thoughts
- š¾ **Session Management** - Persistent thinking across interactions
- š·ļø **Auto-Classification** - Automatic thought type detection
## š Quick Deploy
### Deploy to Vercel (Recommended)
[](https://vercel.com/new/clone?repository-url=https://github.com/sheikhcoders/sequential-thinking-mcp)
After deployment, your MCP server will be available at:
- **Streamable HTTP**: `https://your-app.vercel.app/mcp`
- **SSE**: `https://your-app.vercel.app/sse`
### Local Development
```bash
# Clone the repository
git clone https://github.com/sheikhcoders/sequential-thinking-mcp.git
cd sequential-thinking-mcp
# Install dependencies
npm install
# Build
npm run build
# Run stdio mode (for MCP clients)
npm start
# Run HTTP mode (for development)
npm run start:http
```
## š” Transport Modes
### Streamable HTTP (Recommended)
The latest MCP transport specification. Eliminates persistent connections for better scalability.
```
POST https://your-app.vercel.app/mcp
```
### Server-Sent Events (SSE)
Legacy transport for backward compatibility.
```
GET https://your-app.vercel.app/sse
```
### Standard IO (stdio)
For local MCP clients like Claude Desktop.
```bash
node dist/index.js
```
## š§ Configuration
### Claude Desktop
Add to `~/.claude/claude_desktop_config.json`:
```json
{
"mcpServers": {
"sequential-thinking": {
"url": "https://your-app.vercel.app/mcp"
}
}
}
```
### Cursor
Add to `.cursor/mcp.json`:
```json
{
"mcpServers": {
"sequential-thinking": {
"url": "https://your-app.vercel.app/mcp"
}
}
}
```
### Cline (Streamable HTTP)
Add to `cline_mcp_settings.json`:
```json
{
"mcpServers": {
"sequential-thinking": {
"command": "npx",
"args": ["mcp-remote", "https://your-app.vercel.app/mcp"],
"transportType": "Streamable HTTP"
}
}
}
```
### For stdio (Local)
```json
{
"mcpServers": {
"sequential-thinking": {
"command": "npx",
"args": ["sequential-thinking-mcp"]
}
}
}
```
## š ļø Available Tools
### `sequential_thinking`
The main tool for step-by-step problem solving with dynamic thought management.
**Parameters:**
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `thought` | string | ā
| Your current thinking step |
| `nextThoughtNeeded` | boolean | ā
| Whether another thought is needed |
| `thoughtNumber` | number | ā
| Current thought number (1-indexed) |
| `totalThoughts` | number | ā
| Estimated total thoughts needed |
| `isRevision` | boolean | ā | Whether this revises previous thinking |
| `revisesThought` | number | ā | Which thought number is being revised |
| `branchFromThought` | number | ā | Create branch from this thought |
| `branchId` | string | ā | Branch identifier |
| `sessionId` | string | ā | Session ID for persistence |
### `get_thinking_summary`
Get a comprehensive summary of a thinking session.
### `list_thinking_sessions`
List all available thinking sessions.
### `switch_thinking_branch`
Switch between different thinking branches.
### `complete_thinking_session`
Mark a session as completed with optional final conclusion.
## š Thought Types
Thoughts are automatically classified:
| Type | Detected When |
|------|---------------|
| `question` | Contains `?`, starts with what/how/why |
| `observation` | Contains "I notice", "I see", "observe" |
| `hypothesis` | Contains "perhaps", "maybe", "hypothesis" |
| `verification` | Contains "verify", "test", "check" |
| `insight` | Contains "insight", "realize", "aha" |
| `conclusion` | Contains "therefore", "in conclusion" |
| `refinement` | Contains "refine", "improve", "better" |
| `reflection` | Contains "reflect", "thinking about" |
| `analysis` | Default for analytical statements |
## šļø Project Structure
```
sequential-thinking-mcp/
āāā api/
ā āāā [transport]/
ā āāā route.ts # Vercel serverless handler
āāā src/
ā āāā index.ts # CLI entry point (stdio mode)
ā āāā server.ts # MCP stdio server
ā āāā http-transport.ts # Express HTTP server
ā āāā thinking-session.ts # Session management
ā āāā types.ts # TypeScript definitions
āāā package.json
āāā tsconfig.json
āāā vercel.json # Vercel configuration
āāā README.md
```
## š Production Considerations
### Session Persistence
For production with persistent sessions, integrate **Vercel KV** or **Upstash Redis**:
```typescript
import { kv } from '@vercel/kv';
// Store session
await kv.set(`session:${sessionId}`, session);
// Retrieve session
const session = await kv.get(`session:${sessionId}`);
```
### Authentication
Add OAuth or API key authentication for production:
```typescript
// In your handler
const authHeader = request.headers.get('Authorization');
if (!validateToken(authHeader)) {
return new Response('Unauthorized', { status: 401 });
}
```
## š API Reference
### Health Check
```bash
curl https://your-app.vercel.app/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc": "2.0", "method": "initialize", "id": 1}'
```
### Call Tool
```bash
curl https://your-app.vercel.app/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "sequential_thinking",
"arguments": {
"thought": "Let me analyze this problem step by step",
"nextThoughtNeeded": true,
"thoughtNumber": 1,
"totalThoughts": 5
}
},
"id": 1
}'
```
## š Resources
- [MCP Specification](https://modelcontextprotocol.io/specification)
- [Vercel MCP Adapter](https://www.npmjs.com/package/@vercel/mcp-adapter)
- [Deploy MCP Servers to Vercel](https://vercel.com/docs/mcp/deploy-mcp-servers-to-vercel)
- [Building Efficient MCP Servers](https://vercel.com/blog/building-efficient-mcp-servers)
## š License
MIT License - see [LICENSE](LICENSE) for details.
## š¤ Contributing
Contributions welcome! Please read our contributing guidelines and submit PRs.
---
**Built with ā¤ļø using the Model Context Protocol**
This server cannot be deployed
Maintenance
ActivitySlowing
ResponsivenessNo issues