Skip to main content
Glama
fmangot

Sequential Thinking MVP Server

by fmangot

Sequential Thinking MVP Server

A production-ready Model Context Protocol (MCP) server that enables AI assistants to perform structured, step-by-step reasoning through sequential thinking. This server facilitates breaking down complex problems into manageable steps, revising thoughts as understanding deepens, and exploring alternative reasoning paths.

✨ Latest Updates (v1.0.0)

All critical security and architectural issues have been fixed!

  • Multi-User Support: Fixed shared state bug - each user now has isolated sessions

  • Modern MCP Protocol: Upgraded to Streamable HTTP transport (MCP 2025-03-26 spec)

  • Cloudflare Workers: Fully functional with Durable Objects for persistent state

  • Comprehensive Validation: All inputs validated with proper error handling

  • Security Hardened: Cryptographically secure session IDs, configurable CORS, rate limiting

  • Memory Management: Automatic session cleanup with TTL to prevent memory leaks

  • Production Ready: Proper error handling, graceful shutdown, health checks

See CODE_REVIEW.md for details on all fixes.

Features

  • Sequential Thinking: Step-by-step problem-solving with numbered thoughts

  • Thought Revision: Ability to revise and refine previous reasoning steps

  • Branching Paths: Explore multiple alternative reasoning approaches

  • Multi-User Session Management: Isolated sessions for concurrent users

  • Input Validation: Comprehensive validation with helpful error messages

  • Rate Limiting: DoS protection (100 requests per 15 minutes per IP)

  • Security: Secure session IDs, configurable CORS, proper authentication headers

  • Multiple Deployment Options:

    • Stdio (for Claude Desktop and local MCP clients)

    • HTTP Server with Streamable HTTP (for remote access)

    • Cloudflare Workers with Durable Objects (for serverless deployment)

Installation

npm install
npm run build

Usage

Option 1: Stdio Mode (Claude Desktop)

Use with Claude Desktop or any MCP-compatible client:

npm start

Or use directly with npx:

npx sequential-thinking-mvp-server

Claude Desktop Configuration

Add to your Claude Desktop config file (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "sequential-thinking": {
      "command": "node",
      "args": ["/path/to/sequential-thinking-mvp-server/dist/index.js"]
    }
  }
}

Option 2: HTTP Server Mode

Start the HTTP server for remote access:

npm run start:http

By default, the server runs on port 3000. Set a custom port:

PORT=8080 npm run start:http

Configuration

Environment Variables:

  • PORT: HTTP server port (default: 3000)

  • NODE_ENV: Environment (development/production)

  • ALLOWED_ORIGINS: Comma-separated list of allowed CORS origins (default: all in dev, none in prod)

Example:

PORT=8080 NODE_ENV=production ALLOWED_ORIGINS=https://example.com npm run start:http

Endpoints

  • GET / or /info - Server information

  • GET /health - Health check with session stats

  • POST /mcp - MCP Streamable HTTP endpoint

Session Management

Send a session ID to maintain state across requests:

Via Header:

curl -X POST http://localhost:3000/mcp \
  -H "Content-Type: application/json" \
  -H "x-session-id: your-session-id" \
  -d '{"jsonrpc":"2.0","method":"tools/call","params":{...},"id":1}'

Via Query Parameter:

curl -X POST "http://localhost:3000/mcp?sessionId=your-session-id" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"tools/call","params":{...},"id":1}'

Features

  • Multi-user support: Each session ID gets isolated state

  • Rate limiting: 100 requests per 15 minutes per IP

  • CORS: Configurable via ALLOWED_ORIGINS environment variable

  • Automatic cleanup: Sessions expire after 1 hour of inactivity

  • Health monitoring: /health endpoint shows active sessions and uptime

Option 3: Cloudflare Workers

Deploy to Cloudflare Workers with Durable Objects for serverless, globally distributed deployment with persistent state:

# Development
npm run dev:workers

# Production deployment
npm run deploy:workers

Cloudflare Workers Features

  • Persistent State: Uses Durable Objects for reliable data persistence

  • Global Distribution: Deployed to Cloudflare's edge network

  • Auto-scaling: Handles traffic spikes automatically

  • Zero Maintenance: Fully managed infrastructure

REST API Endpoints

  • GET / or /info - Server information

  • GET /health - Health check

  • POST /think - Add a thought to the sequence

  • GET /sequence - Get current thought sequence

  • POST /reset - Reset session

Example:

curl -X POST https://your-worker.workers.dev/think \
  -H "Content-Type: application/json" \
  -d '{
    "thought": "Analyze the problem requirements",
    "thoughtNumber": 1,
    "totalThoughts": 5,
    "nextThoughtNeeded": true
  }'

Durable Objects Configuration

The server uses Cloudflare Durable Objects to persist state across requests. Each Durable Object instance maintains its own session data, which survives worker restarts and is replicated for reliability.

See wrangler.toml for configuration details.

Tools

1. sequential_thinking

The core tool for step-by-step reasoning.

Required Parameters:

  • thought (string): The current reasoning step

  • nextThoughtNeeded (boolean): Whether more steps are needed

  • thoughtNumber (number): Sequential number of this thought

  • totalThoughts (number): Estimated total thoughts needed

Optional Parameters:

  • isRevision (boolean): Marks this as a revision of a previous thought

  • revisesThought (number): The thought number being revised

  • branchFromThought (number): Starting point for alternative reasoning

  • branchId (string): Identifier for alternative reasoning branch

  • needsMoreThoughts (boolean): Signal to expand total thought count

Example:

{
  "thought": "First, I need to understand the problem requirements",
  "nextThoughtNeeded": true,
  "thoughtNumber": 1,
  "totalThoughts": 5
}

2. get_thought_sequence

Retrieves the complete sequence of thoughts.

Optional Parameters:

  • sessionId (string): Specific session ID (defaults to current)

3. get_thought_branch

Retrieves a specific branch of alternative reasoning.

Required Parameters:

  • branchId (string): The branch identifier

Optional Parameters:

  • sessionId (string): Specific session ID (defaults to current)

4. reset_thinking_session

Starts a new thinking session, clearing the current sequence.

5. get_session_summary

Gets a summary of the current thinking session.

Optional Parameters:

  • sessionId (string): Specific session ID (defaults to current)

Use Cases

Example 1: Basic Sequential Reasoning

User: How would I design a scalable chat application?

AI uses sequential_thinking:
Thought 1: "First, identify the core requirements: real-time messaging, user presence, message history"
Thought 2: "Consider the architecture: need WebSocket connections for real-time, database for persistence"
Thought 3: "Evaluate scalability: load balancing, message queuing, database sharding"
Thought 4: "Design the tech stack: Node.js + Socket.io, Redis for pub/sub, PostgreSQL for storage"
Thought 5: "Plan for growth: horizontal scaling, CDN for assets, monitoring and metrics"

Example 2: Thought Revision

Thought 1: "Use MySQL for the database"
Thought 2: "Implement real-time features with polling"
Thought 3 (revision of 2): "Actually, WebSockets would be more efficient than polling for real-time updates"
Thought 4 (revision of 1): "PostgreSQL would be better than MySQL for JSON support and advanced features"

Example 3: Alternative Reasoning Branches

Main path:
Thought 1: "Consider a monolithic architecture"
Thought 2: "This would be simpler to deploy and maintain"

Branch "microservices":
Thought 1: "Alternatively, use microservices architecture"
Thought 2: "This provides better scalability and team independence"
Thought 3: "Trade-off: increased complexity in deployment and monitoring"

API Examples (Cloudflare Workers / HTTP)

Add a thought

curl -X POST https://your-worker.workers.dev/think \
  -H "Content-Type: application/json" \
  -d '{
    "thought": "First, analyze the requirements",
    "nextThoughtNeeded": true,
    "thoughtNumber": 1,
    "totalThoughts": 5
  }'

Get thought sequence

curl https://your-worker.workers.dev/sequence

Reset session

curl -X POST https://your-worker.workers.dev/reset

Architecture

src/
├── types.ts          # TypeScript type definitions
├── lib.ts            # Core sequential thinking logic
├── index.ts          # Stdio MCP server (Claude Desktop)
├── server-http.ts    # HTTP server with SSE transport
└── worker.ts         # Cloudflare Workers implementation

Development

Watch mode for development:

npm run dev

Build the project:

npm run build

Benefits of Sequential Thinking

  1. Transparency: See the AI's reasoning process step-by-step

  2. Quality: Encourages thorough analysis and consideration

  3. Revision: Allows the AI to reconsider and improve earlier steps

  4. Exploration: Supports exploring multiple solution paths

  5. Accountability: Clear audit trail of the reasoning process

License

MIT

Contributing

Contributions are welcome! Please feel free to submit issues or pull requests.

Available Tools

5 tools
get_session_summaryC

Gets a summary of the current or specified thinking session

ParametersJSON Schema
NameRequiredDescriptionDefault
sessionIdNoOptional session ID (defaults to current session)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states it 'Gets a summary' but doesn't disclose behavioral traits such as what the summary contains, whether it's read-only, if it requires permissions, or how it handles errors. This leaves significant gaps for a tool with no annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's function. It is front-loaded with the core purpose and includes the key detail about default behavior, with no wasted words or unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the summary contains, its format, or how it relates to sibling tools. For a retrieval tool in a thinking session context, more detail is needed to guide effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the parameter 'sessionId' documented as optional and defaulting to the current session. The description adds minimal value beyond this, as it only reiterates the default behavior without providing additional context like format examples or edge cases.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Gets') and resource ('summary of the current or specified thinking session'), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like get_thought_branch or get_thought_sequence, which might also retrieve thinking-related data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like get_thought_branch or get_thought_sequence. It mentions the default behavior (current session) but doesn't explain scenarios where this summary is preferred over other retrieval tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_thought_branchC

Retrieves a specific branch of alternative reasoning paths

ParametersJSON Schema
NameRequiredDescriptionDefault
branchIdYesThe identifier of the branch to retrieve
sessionIdNoOptional session ID (defaults to current session)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool retrieves data, implying a read-only operation, but doesn't clarify if it's safe, requires authentication, has rate limits, or what happens on errors. This leaves significant gaps for a tool with potential complexity in handling reasoning paths.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without any fluff. It's appropriately sized and front-loaded, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of handling 'alternative reasoning paths' and the lack of annotations and output schema, the description is incomplete. It doesn't explain what a 'branch' entails, the return format, or how it relates to sibling tools, leaving the agent with insufficient context for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with clear documentation for 'branchId' and 'sessionId'. The description adds no additional parameter semantics beyond what the schema provides, such as format examples or constraints. However, the baseline is 3 since the schema adequately covers the parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('Retrieves') and resource ('a specific branch of alternative reasoning paths'), making it immediately understandable. However, it doesn't differentiate from sibling tools like 'get_thought_sequence' or 'get_session_summary', which might have overlapping retrieval functions, so it doesn't achieve full distinction.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'get_thought_sequence' or 'get_session_summary', nor does it specify prerequisites or exclusions, leaving the agent to infer usage from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_thought_sequenceC

Retrieves the complete sequence of thoughts for the current or specified session

ParametersJSON Schema
NameRequiredDescriptionDefault
sessionIdNoOptional session ID to retrieve (defaults to current session)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool retrieves data, implying a read-only operation, but doesn't cover aspects like authentication needs, rate limits, error handling, or what 'complete sequence' entails (e.g., format, pagination). This leaves significant gaps for a tool with potential complexity.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence that efficiently conveys the core functionality without unnecessary words. It is front-loaded with the main action and resource, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete for a retrieval tool. It doesn't explain what the output looks like (e.g., structure of the thought sequence), potential side effects, or how it interacts with sibling tools, leaving the agent with insufficient context for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the parameter 'sessionId' well-documented in the schema. The description adds minimal value beyond this, only implying the parameter's optional nature ('current or specified session'), which is already covered in the schema's description. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('retrieves') and resource ('complete sequence of thoughts'), making it understandable. However, it doesn't explicitly differentiate from sibling tools like 'get_session_summary' or 'get_thought_branch', which likely retrieve related but different data, preventing a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools or contexts where this retrieval is preferred over others, leaving the agent with no explicit usage instructions beyond the basic purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

reset_thinking_sessionB

Starts a new thinking session, clearing the current thought sequence

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool clears the current thought sequence, which implies a destructive action, but doesn't specify if this is reversible, what happens to previous data, or any side effects like resetting session state. More context on the mutation's impact is needed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the key action ('starts a new thinking session') and adds necessary detail ('clearing the current thought sequence') without any wasted words. It's appropriately sized for the tool's simplicity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters, no output schema, and no annotations, the description covers the basic purpose adequately. However, as a mutation tool (implied by 'clearing'), it lacks details on behavioral traits like reversibility or effects on sibling tools, making it only minimally viable for the context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description appropriately doesn't discuss parameters, which is efficient, but since there are no parameters to explain, it doesn't fully earn a 5 for adding value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('starts a new thinking session') and the effect ('clearing the current thought sequence'), which is a specific verb+resource combination. However, it doesn't explicitly distinguish this from sibling tools like 'sequential_thinking' which might also involve session management, so it doesn't reach the highest score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when wanting to start fresh by clearing thoughts, but provides no explicit guidance on when to use this versus alternatives like 'sequential_thinking' or 'get_session_summary', nor any prerequisites or exclusions. It lacks detailed context for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sequential_thinkingC

Facilitates a detailed, step-by-step thinking process for problem-solving and analysis. Break down complex problems into manageable steps, revise and refine thoughts as understanding deepens, and branch into alternative paths of reasoning.

ParametersJSON Schema
NameRequiredDescriptionDefault
thoughtYesThe current reasoning step or thought in the sequence
nextThoughtNeededYesIndicates whether additional reasoning steps are required after this one
thoughtNumberYesThe sequential number of this thought (e.g., 1, 2, 3...)
totalThoughtsYesEstimated total number of thoughts needed to complete the reasoning
isRevisionNoMarks this thought as a reconsideration or refinement of a previous step
revisesThoughtNoThe thought number being revised (required if isRevision is true)
branchFromThoughtNoThe thought number from which this alternative reasoning path branches
branchIdNoUnique identifier for this alternative reasoning branch
needsMoreThoughtsNoSignals that the total number of thoughts needs to be expanded

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the tool's function but lacks critical details: it doesn't mention if this tool creates, updates, or retrieves data; what the output looks like; or any side effects like persistence or session management. This is a significant gap for a tool with 9 parameters and no output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured in two sentences, front-loaded with the core purpose. Every sentence adds value by explaining the tool's role and key features. However, it could be slightly more efficient by integrating the second sentence's details into the first without losing clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (9 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain what the tool returns, how it interacts with sibling tools, or the behavioral implications of using it. For a tool that likely manages state or sessions, this lack of context makes it inadequate for an agent to use effectively without trial and error.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents all 9 parameters. The description adds no specific parameter information beyond implying a sequential process. It mentions 'step-by-step' and 'branch into alternative paths,' which loosely relate to parameters like 'thoughtNumber' and 'branchId,' but doesn't provide additional syntax or usage context. Baseline 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Facilitates a detailed, step-by-step thinking process for problem-solving and analysis.' It specifies the verb 'facilitates' and the resource 'thinking process,' and outlines key actions like breaking down problems and branching reasoning. However, it doesn't explicitly differentiate from sibling tools like 'get_thought_sequence' or 'reset_thinking_session,' which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus its siblings. It mentions general activities like 'problem-solving and analysis' but doesn't specify contexts, prerequisites, or alternatives. For example, it doesn't clarify if this is for initiating a session versus retrieving one, leaving the agent to guess based on tool names alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 5 tool updatesv1.0.0
    • First observedget_session_summary
    • First observedget_thought_branch
    • First observedget_thought_sequence
    • First observedreset_thinking_session
    • First observedsequential_thinking

TDQS

B3.3/5.0
Disambiguation3/5

The tools have overlapping purposes that could cause confusion. get_session_summary, get_thought_sequence, and get_thought_branch all retrieve session-related data, with unclear boundaries between summary, sequence, and branch. sequential_thinking is distinct as it facilitates the thinking process, but the retrieval tools are ambiguous.

Naming Consistency4/5

Tool names follow a consistent verb_noun pattern, with all using snake_case. However, sequential_thinking deviates slightly by using an adjective-noun format instead of a verb, which is a minor inconsistency in an otherwise predictable naming scheme.

Tool Count5/5

With 5 tools, the count is well-scoped for a thinking session server. This number is appropriate for managing sessions, retrieving data, and facilitating thinking processes, with each tool earning its place without feeling too heavy or thin.

Completeness4/5

The tool surface covers core CRUD-like operations for thinking sessions: create (reset_thinking_session), read (get_* tools), and process (sequential_thinking). A minor gap exists in update or delete operations for sessions or thoughts, but agents can work around this with resets.

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/fmangot/Mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server