Skip to main content
Glama

Server Details

Shared private memory layer for AI agents. Write context once, carry it across Claude, ChatGPT, Grok, Cursor, Replit, Bolt, Lovable, Devin, v0 and more. Supports reusable SKILL.md bundles for agent skills discovery. OAuth 2.1 + API key auth.

Ownership verified

The last two health checks of this connector failed. If this server requires authentication, missing or expired test credentials may be the cause. A test profile lets Glama authenticate for health checks and discover tools; it is separate from your personal connections.

If you are the author, claim ownership, then add or update a test profile under Admin → Test Profile.

Status
Unhealthy
Uptime
13.2% over 64 days
OAuth
Works in Glama
Last Tested
Transport
Streamable HTTP
URL

TDQS

A3.6/5.0

Scored across 10 tools

Disambiguation4/5

Most tools have clearly distinct targets: get_cluster vs list_clusters, get_skill vs get_skill_resource, and write_observation vs search_memory. However read_context overlaps with list_clusters, get_cluster, and search_memory by also returning clusters and memories, and export_all broadly overlaps with all read tools.

Naming Consistency5/5

All names use snake_case with a leading verb (get_, list_, read_, search_, upload_, write_, export_) and consistently place the resource after the verb. The pattern is predictable across the set.

Tool Count5/5

10 tools is well within the appropriate range for a memory/context/skill server and each tool covers a distinct operation instead of fragmenting the surface.

Completeness2/5

There are significant lifecycle gaps: no update/delete for memories, no create/update/delete for clusters, and no enable/disable/delete for skills. In particular, upload_skill creates a disabled skill but there is no way to enable it, creating a dead end.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool update
    • Changedget_skill1 field changed
      • changedInput schema / properties / slug / description
        Previous value: -"Slug of an enabled skill, usually obtained from list_skills."New value: +"Slug identifying the enabled skill to return."
  2. 10 tool updates
    • Changedexport_all3 fields changed
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / properties
        Added value: +{
        +  "clusters": {
        +    "items": {
        +      "properties": {
        +        "created_at": {
        +          "type": "string"
        +        },
        +        "description": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "is_default": {
        +          "type": "boolean"
        +        },
        +        "memories": {
        +          "items": {
        +            "properties": {
        +              "cluster": {
        +                "anyOf": [
        +                  {
        +                    "type": "string"
        +                  },
        +                  {
        +                    "type": "null"
        +                  }
        +                ]
        +              },
        +              "content": {
        +                "type": "string"
        +              },
        +              "created_at": {
        +                "type": "string"
        +              },
        +              "importance": {
        +                "type": "integer"
        +              },
        +              "source_agent": {
        +                "type": "string"
        +              },
        +              "tags": {
        +                "items": {
        +                  "type": "string"
        +                },
        +                "type": "array"
        +              }
        +            },
        +            "required": [
        +              "content",
        +              "source_agent",
        +              "importance",
        +              "created_at",
        +              "tags"
        +            ],
        +            "type": "object"
        +          },
        +          "type": "array"
        +        },
        +        "memory_count": {
        +          "anyOf": [
        +            {
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "name": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "name",
        +        "description",
        +        "is_default",
        +        "created_at",
        +        "memory_count",
        +        "memories"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  "exported_at": {
        +    "type": "string"
        +  },
        +  "total_memory_count": {
        +    "type": "integer"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "exported_at",
        +  "total_memory_count",
        +  "clusters"
        +]
    • Changedget_cluster8 fields changed
      • addedInput schema / properties / limit / description
        Added value: +"Maximum number of memories to return from the cluster."
      • addedInput schema / properties / name / description
        Added value: +"Exact cluster name using letters, numbers, or hyphens."
      • addedInput schema / properties / name / maxLength
        Added value: +50
      • addedInput schema / properties / name / minLength
        Added value: +1
      • addedInput schema / properties / name / pattern
        Added value: +"^[A-Za-z0-9-]{1,50}$"
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / properties
        Added value: +{
        +  "cluster": {
        +    "properties": {
        +      "created_at": {
        +        "type": "string"
        +      },
        +      "description": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "is_default": {
        +        "type": "boolean"
        +      },
        +      "memory_count": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "name": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "name",
        +      "description",
        +      "is_default",
        +      "created_at",
        +      "memory_count"
        +    ],
        +    "type": "object"
        +  },
        +  "memories": {
        +    "items": {
        +      "properties": {
        +        "cluster": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "content": {
        +          "type": "string"
        +        },
        +        "created_at": {
        +          "type": "string"
        +        },
        +        "importance": {
        +          "type": "integer"
        +        },
        +        "source_agent": {
        +          "type": "string"
        +        },
        +        "tags": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "content",
        +        "source_agent",
        +        "importance",
        +        "created_at",
        +        "tags"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "cluster",
        +  "memories"
        +]
    • Changedget_skill7 fields changed
      • addedInput schema / properties / slug / description
        Added value: +"Slug of an enabled skill, usually obtained from list_skills."
      • addedInput schema / properties / slug / maxLength
        Added value: +100
      • addedInput schema / properties / slug / minLength
        Added value: +1
      • addedInput schema / properties / slug / pattern
        Added value: +"^[a-z0-9]+(?:-[a-z0-9]+)*$"
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / properties
        Added value: +{
        +  "instructions": {
        +    "type": "string"
        +  },
        +  "resources": {
        +    "items": {
        +      "properties": {
        +        "content_type": {
        +          "type": "string"
        +        },
        +        "path": {
        +          "type": "string"
        +        },
        +        "size_bytes": {
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "path",
        +        "content_type",
        +        "size_bytes"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  "skill": {
        +    "properties": {
        +      "created_at": {
        +        "type": "string"
        +      },
        +      "description": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "file_count": {
        +        "type": "integer"
        +      },
        +      "name": {
        +        "type": "string"
        +      },
        +      "slug": {
        +        "type": "string"
        +      },
        +      "source_agent": {
        +        "type": "string"
        +      },
        +      "total_bytes": {
        +        "type": "integer"
        +      },
        +      "version": {
        +        "type": "integer"
        +      }
        +    },
        +    "required": [
        +      "slug",
        +      "name",
        +      "description",
        +      "version",
        +      "source_agent",
        +      "file_count",
        +      "total_bytes",
        +      "created_at"
        +    ],
        +    "type": "object"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "skill",
        +  "instructions",
        +  "resources"
        +]
    • Changedget_skill_resource10 fields changed
      • addedInput schema / properties / path / description
        Added value: +"Relative resource path exactly as returned by get_skill."
      • addedInput schema / properties / path / maxLength
        Added value: +300
      • addedInput schema / properties / path / minLength
        Added value: +1
      • addedInput schema / properties / slug / description
        Added value: +"Slug of the enabled skill that owns the resource."
      • addedInput schema / properties / slug / maxLength
        Added value: +100
      • addedInput schema / properties / slug / minLength
        Added value: +1
      • addedInput schema / properties / slug / pattern
        Added value: +"^[a-z0-9]+(?:-[a-z0-9]+)*$"
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / properties
        Added value: +{
        +  "content": {
        +    "type": "string"
        +  },
        +  "content_type": {
        +    "type": "string"
        +  },
        +  "encoding": {
        +    "enum": [
        +      "utf-8",
        +      "base64"
        +    ],
        +    "type": "string"
        +  },
        +  "path": {
        +    "type": "string"
        +  },
        +  "size_bytes": {
        +    "type": "integer"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "path",
        +  "content_type",
        +  "size_bytes",
        +  "encoding",
        +  "content"
        +]
    • Changedlist_clusters3 fields changed
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / properties
        Added value: +{
        +  "clusters": {
        +    "items": {
        +      "properties": {
        +        "created_at": {
        +          "type": "string"
        +        },
        +        "description": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "is_default": {
        +          "type": "boolean"
        +        },
        +        "memory_count": {
        +          "anyOf": [
        +            {
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "name": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "name",
        +        "description",
        +        "is_default",
        +        "created_at",
        +        "memory_count"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "clusters"
        +]
    • Changedlist_skills3 fields changed
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / properties
        Added value: +{
        +  "skills": {
        +    "items": {
        +      "properties": {
        +        "created_at": {
        +          "type": "string"
        +        },
        +        "description": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "file_count": {
        +          "type": "integer"
        +        },
        +        "name": {
        +          "type": "string"
        +        },
        +        "slug": {
        +          "type": "string"
        +        },
        +        "source_agent": {
        +          "type": "string"
        +        },
        +        "total_bytes": {
        +          "type": "integer"
        +        },
        +        "version": {
        +          "type": "integer"
        +        }
        +      },
        +      "required": [
        +        "slug",
        +        "name",
        +        "description",
        +        "version",
        +        "source_agent",
        +        "file_count",
        +        "total_bytes",
        +        "created_at"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "skills"
        +]
    • Changedread_context3 fields changed
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / properties
        Added value: +{
        +  "clusters": {
        +    "items": {
        +      "properties": {
        +        "created_at": {
        +          "type": "string"
        +        },
        +        "description": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "is_default": {
        +          "type": "boolean"
        +        },
        +        "memory_count": {
        +          "anyOf": [
        +            {
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "name": {
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "name",
        +        "description",
        +        "is_default",
        +        "created_at",
        +        "memory_count"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  "display_name": {
        +    "anyOf": [
        +      {
        +        "type": "string"
        +      },
        +      {
        +        "type": "null"
        +      }
        +    ]
        +  },
        +  "last_updated": {
        +    "anyOf": [
        +      {
        +        "type": "string"
        +      },
        +      {
        +        "type": "null"
        +      }
        +    ]
        +  },
        +  "memories": {
        +    "items": {
        +      "properties": {
        +        "cluster": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "content": {
        +          "type": "string"
        +        },
        +        "created_at": {
        +          "type": "string"
        +        },
        +        "importance": {
        +          "type": "integer"
        +        },
        +        "source_agent": {
        +          "type": "string"
        +        },
        +        "tags": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "content",
        +        "source_agent",
        +        "importance",
        +        "created_at",
        +        "tags"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  "total_memory_count": {
        +    "type": "integer"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "display_name",
        +  "clusters",
        +  "memories",
        +  "total_memory_count",
        +  "last_updated"
        +]
    • Changedsearch_memory9 fields changed
      • changedInput schema / properties / cluster / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 50,
        +    "minLength": 1,
        +    "pattern": "^[A-Za-z0-9-]{1,50}$",
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedInput schema / properties / cluster / description
        Added value: +"Optional cluster name to restrict the search."
      • addedInput schema / properties / query / description
        Added value: +"Short, specific keywords describing the memories to find."
      • addedInput schema / properties / query / maxLength
        Added value: +2000
      • addedInput schema / properties / query / minLength
        Added value: +1
      • addedInput schema / properties / top_k / description
        Added value: +"Maximum number of matching memories to return."
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / properties
        Added value: +{
        +  "memories": {
        +    "items": {
        +      "properties": {
        +        "cluster": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "content": {
        +          "type": "string"
        +        },
        +        "created_at": {
        +          "type": "string"
        +        },
        +        "importance": {
        +          "type": "integer"
        +        },
        +        "source_agent": {
        +          "type": "string"
        +        },
        +        "tags": {
        +          "items": {
        +            "type": "string"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "content",
        +        "source_agent",
        +        "importance",
        +        "created_at",
        +        "tags"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "memories"
        +]
    • Changedupload_skill12 fields changed
      • changedInput schema / properties / description / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "maxLength": 500,
        +    "type": "string"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedInput schema / properties / description / description
        Added value: +"Optional short description of the skill's purpose."
      • addedInput schema / properties / name / description
        Added value: +"Human-readable skill name containing at least one letter or number."
      • addedInput schema / properties / name / maxLength
        Added value: +80
      • addedInput schema / properties / name / minLength
        Added value: +1
      • changedInput schema / properties / resources / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": {
        -      "type": "string"
        -    },
        -    "type": "object"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": {
        +      "type": "string"
        +    },
        +    "maxProperties": 50,
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • addedInput schema / properties / resources / description
        Added value: +"Optional map of up to 50 relative file paths to UTF-8 text contents; total upload limit is 512 KB."
      • addedInput schema / properties / skill_md / description
        Added value: +"Complete UTF-8 SKILL.md text with YAML frontmatter; maximum encoded size is 256 KB."
      • addedInput schema / properties / skill_md / minLength
        Added value: +1
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / properties
        Added value: +{
        +  "message": {
        +    "type": "string"
        +  },
        +  "status": {
        +    "const": "disabled",
        +    "type": "string"
        +  },
        +  "version": {
        +    "type": "integer"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "status",
        +  "version",
        +  "message"
        +]
    • Changedwrite_observation12 fields changed
      • addedInput schema / properties / cluster / description
        Added value: +"Destination cluster name using letters, numbers, or hyphens."
      • addedInput schema / properties / cluster / maxLength
        Added value: +50
      • addedInput schema / properties / cluster / minLength
        Added value: +1
      • addedInput schema / properties / cluster / pattern
        Added value: +"^[A-Za-z0-9-]{1,50}$"
      • addedInput schema / properties / content / description
        Added value: +"The preference, decision, correction, working pattern, or project fact to remember."
      • addedInput schema / properties / content / maxLength
        Added value: +2000
      • addedInput schema / properties / content / minLength
        Added value: +1
      • addedInput schema / properties / importance / description
        Added value: +"Memory importance from 1 (low) to 5 (critical); use 3 by default."
      • addedInput schema / properties / tags / description
        Added value: +"Optional search tags; at most 10 tags, each no longer than 30 characters."
      • removedOutput schema / additionalProperties
        Removed value: -true
      • addedOutput schema / properties
        Added value: +{
        +  "status": {
        +    "enum": [
        +      "saved",
        +      "duplicate"
        +    ],
        +    "type": "string"
        +  }
        +}
      • addedOutput schema / required
        Added value: +[
        +  "status"
        +]
  3. 10 tool updates
    • First observedexport_all
    • First observedget_cluster
    • First observedget_skill
    • First observedget_skill_resource
    • First observedlist_clusters
    • First observedlist_skills
    • First observedread_context
    • First observedsearch_memory
    • First observedupload_skill
    • First observedwrite_observation

Publisher details

Operator
Sutra is operated by Shivnath Tathe as an independent software product. · Publisher source
Vendor relationship
First-party · Publisher source
Restrictions
A Sutra account and OAuth authorization or a revocable API key are required. No administrator approval, regional restriction, or paid plan is required.

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Remote MCP server that lets AI assistants read tracked competitive intelligence — competitor news, reviews, website changes, social posts and ads — and act on it by managing projects, competitors, battle cards, reports and canvases. Every answer carries a source and a date, and write actions only publish when explicitly shared.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.
    16
    18 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources