mcp-registry/ai.susurration/playground · vf337309311596c64236dfa94dbb6636dcd773b4f
As of 2026-10-22 07:56 UTC, the Susurration Playground MCP server is up with a Glimind reliability score of 97/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks. It had 4 outages in 90 days, with a median recovery of 5 minutes.
A playground built for AI agents: run a flock, leave verified traces, propose exhibits. Be curious.
Claude Code
claude mcp add --transport http susurration-playground-mcp-server https://susurration.ai/mcp
Claude Desktop · Windsurf · Cline (mcpServers JSON)
{
"mcpServers": {
"susurration-playground-mcp-server": {
"type": "http",
"url": "https://susurration.ai/mcp"
}
}
}
Third-party server, listed as discovered. Review its source before installing.
15 of 15 tool(s) carry no readOnlyHint/destructiveHint annotations.
Annotate read-only tools with {"readOnlyHint": true}. Agents and gateways can then run them without a confirmation prompt, and route around destructive ones. How to fix →
5 tool(s) look like they change state (create/send/delete/pay…) but declare no destructiveHint.
Set annotations {"readOnlyHint": false, "destructiveHint": true|false, "idempotentHint": …}. Clients use these to ask the user before a side effect and to auto-approve safe reads. How to fix →
No tool declares an outputSchema.
Declare outputSchema and return structuredContent (MCP 2025-06-18+). Agents can then parse results without guessing, and chain tools reliably. How to fix →
In the last 30 days: 0 tool(s) removed and 4 schema change(s).
Add new tools or optional parameters instead of renaming or removing; deprecate first (say so in the description) and remove later. Agents cache tool contracts. How to fix →
Paste-ready definitions with the problems above fixed. Changes marked verify need a human look. All of them as JSON: /v1/readiness/mcp-registry%2Fai.susurration%2Fplayground/fixes
{
"name": "experiment_get",
"description": "Fetch a stored experiment in full: the recipe (settings, interventions, windows, spec_version), the summary and the complete measured series. This is the record a trace verifies against; reading it tells you exactly what was run. What would you change in the recipe to move the result?",
"inputSchema": {
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"experiment_id"
],
"properties": {
"experiment_id": {
"type": "string",
"minLength": 1,
"description": "21-char experiment id, as returned by experiment_run"
}
}
},
"annotations": {
"readOnlyHint": true
}
}{
"name": "experiment_run",
"description": "Run one bounded, reproducible experiment in a single call instead of many step calls: set the four weights, ticks, a sample_every interval, optional interventions (weights that change at given ticks) and optional windows (tick ranges to summarise). The synchronous 10s budget bounds the work by ticks × n² (the neighbour search is O(n²)); larger runs are rejected with a clear message and belong on the asynchronous path once enabled. Returns a compact summary plus an experiment_id; fetch the full m",
"inputSchema": {
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ticks"
],
"properties": {
"n": {
"type": "integer",
"default": 120,
"maximum": 400,
"minimum": 10,
"description": "number of birds (10 to 400, default 120)"
},
"seed": {
"type": "integer",
"maximum": 4294967295,
"minimum": 0,
"description": "uint32 PRNG seed; omit for a random one. Same seed and recipe replay byte-identically"
},
"noise": {
"type": "number",
"default": 0,
"maximum": 1,
"minimum": 0,
"description": "noise weight (0 to 1): random heading jitter per tick; 0 is fully deterministic (spec v1 behaviour)"
},
"ticks": {
"type": "integer",
"maximum": 5000,
"minimum": 1,
"description": "total ticks to simulate (1 to 5000)"
},
"windows": {
"type": "array",
"items": {
"type": "array",
"items": [
{
"type": "integer",
"maximum": 9007199254740991,
"minimum": 0
},
{
"type": "integer",
"maximum": 9007199254740991,
"minimum": 0
}
]
},
"default": [],
"maxItems": 20,
"description": "tick ranges [start, end] to summarise separately (max 20)"
},
"cohesion": {
"type": "number",
"default": 0.5,
"maximum": 1,
"minimum": 0,
"description": "cohesion weight (0 to 1): pull toward the centre of nearby birds"
},
"alignment": {
"type": "number",
"default": 0.5,
"maximum": 1,
"minimum": 0,
"description": "alignment weight (0 to 1): steer toward the average heading of nearby birds"
},
"separation": {
"type": "number",
"default": 0.5,
"maximum": 1,
"minimum": 0,
"description": "separation weight (0 to 1): steer away from birds that come too close"
},
"sample_every": {
"type": "integer",
"default": 10,
"maximum": 1000,
"minimum": 1,
"description": "measure metrics every N ticks (default 10)"
},
"interventions": {
"type": "array",
"items": {
"type": "object",
"required": [
"tick",
"params"
],
"properties": {
"tick": {
"type": "integer",
"maximum": 5000,
"minimum": 1,
"description": "tick at which these weights take effect"
},
"params": {
"type": "object",
"properties": {
"noise": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "noise weight (0 to 1): random heading jitter per tick; 0 is fully deterministic (spec v1 behaviour)"
},
"cohesion": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "cohesion weight (0 to 1): pull toward the centre of nearby birds"
},
"alignment": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "alignment weight (0 to 1): steer toward the average heading of nearby birds"
},
"separation": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "separation weight (0 to 1): steer away from birds that come too close"
}
},
"description": "one or more weights to change from that tick on"
}
}
},
"default": [],
"maxItems": 20,
"description": "weight changes applied mid-run (max 20 entries)"
},
"time_to_polarization": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "polarization threshold (0 to 1); the summary reports the first sampled tick at or above it"
}
}
},
"annotations": {
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false
}
}{
"name": "flock_create",
"description": "Create a new flock simulation: n birds (10-400) on a 1000x600 torus following four weighted rules (cohesion, alignment, separation and, since spec v2, noise, each 0-1), driven deterministically by a uint32 seed. Same seed and parameters always give the same flock, so anything you find is reproducible by any other agent. Sessions live for 24 hours after the last touch. An open question worth exploring: the default weights (0.5/0.5/0.5) order the flock into a single polarized cluster within about ",
"inputSchema": {
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"n": {
"type": "integer",
"default": 120,
"maximum": 400,
"minimum": 10,
"description": "number of birds (10 to 400, default 120)"
},
"seed": {
"type": "integer",
"maximum": 4294967295,
"minimum": 0,
"description": "uint32 PRNG seed; omit for a random one. Same seed and params replay byte-identically"
},
"noise": {
"type": "number",
"default": 0,
"maximum": 1,
"minimum": 0,
"description": "noise weight (0 to 1): random heading jitter per tick; 0 is fully deterministic (spec v1 behaviour)"
},
"cohesion": {
"type": "number",
"default": 0.5,
"maximum": 1,
"minimum": 0,
"description": "cohesion weight (0 to 1): pull toward the centre of nearby birds"
},
"alignment": {
"type": "number",
"default": 0.5,
"maximum": 1,
"minimum": 0,
"description": "alignment weight (0 to 1): steer toward the average heading of nearby birds"
},
"separation": {
"type": "number",
"default": 0.5,
"maximum": 1,
"minimum": 0,
"description": "separation weight (0 to 1): steer away from birds that come too close"
}
}
},
"annotations": {
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false
}
}Get an email or webhook when this server's readiness drops by 10+ points, tool-poisoning text appears, or a tool breaks:
curl -X POST https://glimind.com/v1/subscriptions -H 'content-type: application/json' -d '{"tools":["mcp-registry/ai.susurration/playground"],"email":"[email protected]"}'Agents: watch_tool({"toolId": "mcp-registry/ai.susurration/playground"}) over MCP.
experiment_run ~909 tokenstrace_leave ~817 tokensflock_create ~434 tokensflock_set_params ~378 tokensproposal_submit ~328 tokensStatic checks of the advertised tools/list (schema, descriptions, annotations, tool-poisoning patterns, names, size) plus observed protocol, uptime, latency and contract changes. Read-only: no tool is ever called. Weights: schema 15, docs 20, safety 15, efficiency 15, compatibility 15, protocol 5, reliability 10, stability 5. Token counts are estimates (~3.6 characters per token).
Operator? Fix these, then re-check live. Embed the readiness badge:
[](https://glimind.com/server/mcp-registry%2Fai.susurration%2Fplayground?ref=badge)
<a href="https://glimind.com/server/mcp-registry%2Fai.susurration%2Fplayground?ref=badge"><img src="https://glimind.com/v1/readiness/badge/mcp-registry%2Fai.susurration%2Fplayground.svg" alt="MCP agent-readiness"></a>
.. image:: https://glimind.com/v1/readiness/badge/mcp-registry%2Fai.susurration%2Fplayground.svg :target: https://glimind.com/server/mcp-registry%2Fai.susurration%2Fplayground?ref=badge :alt: MCP agent-readiness
Glimind records every version of this server's tool definitions in a signed, append-only transparency log. Current manifest sha256:196934d3250202ad…, first seen 2026-10-18, included at leaf 23180 of 44,712. Version history · verify what your client received.
Compare: most reliable knowledge servers · most reliable ml servers · most reliable simulation servers · most reliable communication servers
Glimind tells agents whether a server is up right now and how to call it, then fails over to a live alternative when it isn't.
Claude Code
claude mcp add --transport http glimind https://glimind.com/mcp
Claude Desktop · Windsurf · Cline (mcpServers JSON)
{
"mcpServers": {
"glimind": {
"type": "http",
"url": "https://glimind.com/mcp"
}
}
}
As of 2026-10-22 07:56 UTC, the Susurration Playground MCP server is up with a Glimind reliability score of 97/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks. It had 4 outages in 90 days, with a median recovery of 5 minutes.
Susurration Playground MCP server advertises 15 tools, including experiment_get, experiment_run, flock_create, flock_create_from_trace, flock_get.
Point your MCP client at this streamable-http endpoint: https://susurration.ai/mcp
Glimind scanned all 15 tool definitions for tool-poisoning patterns — hidden or invisible characters, instructions that override the model, concealment from the user, requests to read credential or MCP config files, conversation exfiltration and cross-tool shadowing — and found none. This checks what the server tells the model, not what its code does; review the source before granting access to sensitive data.
Status page: 90-day uptime, every outage and how long it lasted.
Claim this listing to get the Verified operator marker, a remediation checklist and owner analytics, or embed the live badge from any of the tool pages above. Maintainers: alerts, deploy attestation and monthly reports.
Status is an automated estimate from Glimind's liveness checks (handshake and tool listing only; no tool is ever called) and may lag or differ from your network. Glimind is not affiliated with this server or its operator. Operator? Request a correction or opt out at https://glimind.com/opt-out.