Is the Affine Math Court MCP server down?

mcp-registry/earth.affine/math-court · v5.0.0

Also listed as glama/gaiaftcl-sudo/affine-earth-math-court-remote

healthy
Last checked 2026-10-18 17:15 UTC · handshake 579ms

As of 2026-10-18 17:15 UTC, the Affine Math Court MCP server is up with a Glimind reliability score of 84/100 (grade B). Over the last 30 days it answered 99.9% of Glimind's liveness checks. It had 86 outages in 90 days, with a median recovery of 5 minutes.

uptime (30d checks)
99.9%
checks observed
3,675
outages (90d)
86
tools
55

No-float UUM-8D Math Court. Integer courts and certified MCP. Floats refused.

Install Affine Math Court MCP server

Add to Cursor Add to VS Code

Claude Code

claude mcp add --transport http affine-math-court-mcp-server https://affine.earth/language-invariant/mcp

Claude Desktop · Windsurf · Cline (mcpServers JSON)

{
  "mcpServers": {
    "affine-math-court-mcp-server": {
      "type": "http",
      "url": "https://affine.earth/language-invariant/mcp"
    }
  }
}

Third-party server, listed as discovered. Review its source before installing.

Agent-readiness: D (60/100)

D (60/100): 0 error(s), 8 warning(s) across 55 tool(s); ~29,697 tokens of tool definitions.
Scores higher than 0% of 15,359 MCP servers Glimind has audited.
Its tool list costs an agent ~29,697 tokens per session — more than 95% of servers.
60 → 60 since 2026-10-17
no tool-poisoning patterns
Schemas100
Descriptions100
Safety hints14
Token cost22
Client compatibility57
Protocol40
Reliability85
Stability20

What to fix (10)

3 tool definition(s) exceed ~1,200 tokens each (largest: math_court, ~11,352).

Move long reference material out of descriptions (link a doc or expose a resource), drop repeated examples, and collapse large enums. Trimming these to ~600 tokens saves ~12,058 tokens every session. How to fix →

Tools: math_court, scene_ingest, atc.assert_4d_deconfliction · saves ~12,058 tokens/session

55 of 55 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 →

Tools: affine_translate_text, atc.assert_4d_deconfliction, bond_presented_key, code_ir_equiv, corpus_bonds and 50 more

55 tools on one server. Tool-selection accuracy drops as the menu grows, and some clients (e.g. Cursor) cap the number of active tools.

Group tools by task into smaller servers or toolsets, and merge near-duplicates behind one tool with a mode parameter. How to fix →

4 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 →

Tools: execute_2local_hamiltonian, execute_artifact_crucible, execute_exact_permanent, execute_transition

3 tool name(s) contain "." or exceed 64 characters, which OpenAI-compatible function calling rejects (^[a-zA-Z0-9_-]{1,64}$).

Use "_" or "-" instead of "." and keep names to 64 characters, so clients built on OpenAI-style tool calling don't have to rename (or drop) them. How to fix →

Tools: atc.assert_4d_deconfliction, twin.robotics.evaluate_exact_ik, weather.convective_containment

Loading this server's tool list costs an agent ~29,697 tokens before any work — more than 95% of MCP servers.

Split rarely-used tools into a separate server or a toolset the client can enable, or expose one "search tools" entry point. Many agents load every connected server's tools into every request. How to fix →

Negotiates MCP 2024-11-05. Structured output, tool output schemas and elicitation arrived in 2025-06-18.

Upgrade the MCP SDK and negotiate 2025-06-18 or newer. How to fix →

Handshake + tools/list takes ~2,147 ms.

Serve tools/list from memory, keep the process warm, and host close to your users. Every new agent session pays this before its first call.

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 50 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 →

Auto-fix: 10 corrected tool definitions

Paste-ready definitions with the problems above fixed. Changes marked verify need a human look. All of them as JSON: /v1/readiness/mcp-registry%2Fearth.affine%2Fmath-court/fixes

atc.assert_4d_deconfliction 1 change
{
  "name": "atc_assert_4d_deconfliction",
  "description": "Exact 4D separation over declared trajectories in integer-scaled geodetic coordinates: decide whether any two are ever SIMULTANEOUSLY inside the stated separation minima, and return either a separation certificate or the violating pair with the exact interval and magnitude of the incursion. Integer micro-degrees, feet and seconds with rational time parameters; no floating point and no epsilon, so separation exactly equal to the minima is separated and nine cells return the same verdict from the ",
  "inputSchema": {
    "type": "object",
    "required": [
      "trajectories",
      "horizontal_minima_micro_deg",
      "vertical_minima_feet"
    ],
    "properties": {
      "obs_seq": {
        "type": "string",
        "description": "decimal string; a sealed AirspaceObservationSeal sequence is ONE INSTANT of sky and carries no time base, so supplying it alone returns NOT_MEASURED_OBSERVATION_SET_HAS_NO_TIME_BASE rather than a fabricated verdict. e.g. 1"
      },
      "trajectories": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string",
              "description": "the aircraft or path id, e.g. AAA"
            },
            "waypoints": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "alt_feet": {
                    "type": "string",
                    "description": "decimal string, altitude in feet, e.g. 30000"
                  },
                  "t_seconds": {
                    "type": "string",
                    "description": "decimal string, time in whole seconds, e.g. 600"
                  },
                  "lat_micro_deg": {
                    "type": "string",
                    "description": "decimal string, latitude in micro-degrees, e.g. 0"
                  },
                  "lon_micro_deg": {
                    "type": "string",
                    "description": "decimal string, longitude in micro-degrees, e.g. -100000"
                  }
                }
              },
              "description": "two or more waypoints strictly advancing in t_seconds, e.g. [{\"lat_micro_deg\":\"0\",\"lon_micro_deg\":\"-100000\",\"alt_feet\":\"30000\",\"t_seconds\":\"0\"},{\"lat_micro_deg\":\"0\",\"lon_micro_deg\":\"100000\",\"alt_feet\":\"30000\",\"t_seconds\":\"600\"}]"
            }
          }
        },
        "description": "declared 4D paths: id plus waypoints as decimal strings, strictly advancing in time. e.g. [{\"id\":\"AAA\",\"waypoints\":[{\"lat_micro_deg\":\"0\",\"lon_micro_deg\":\"-100000\",\"alt_feet\":\"30000\",\"t_seconds\":\"0\"},{\"lat_micro_deg\":\"0\",\"lon_micro_deg\":\"100000\",\"alt_feet\":\"30000\",\"t_seconds\":\"600\"}]}]"
      },
      "lon_scale_den": {
        "type": "string",
        "description": "OPTIONAL, denominator of the longitude scale as decimal string. RECOMMENDED: six digits or fewer. Cosine to 1e-6 is far below any error that could change a verdict about aircraft, and a six-digit denominator clears every segment-pair time base up to 8589 seconds; a three-digit one clears any time base at all. The hard ceiling is 1000000000, but the binding limit is per-request: 8589934592 divided by the segment pair time base, which is the least common multiple of the two segment durations. Above it the pair returns NOT_MEASURED_SCALED_TIME_BASE_EXCEEDS_EXACT_RANGE naming the exact denominator ceiling that clears at that time base, so the remedy is read off the refusal rather than found by bisection. Reduce the ratio to lowest terms or round it to fewer digits. e.g. 1000000"
      },
      "lon_scale_num": {
        "type": "string",
        "description": "OPTIONAL exact rational longitude scale, numerator as decimal string. Stands for cos(latitude), which is not rational -- so the caller states the approximation it chose and everything after that choice is exact. The test becomes (dlat*den)^2 + (dlon*num)^2 < (minima*den)^2, entirely in integers; latitude is never scaled. Must satisfy 1 <= num <= den. e.g. 642788"
      },
      "look_ahead_seconds": {
        "type": "string",
        "description": "optional horizon clipped forward from the earliest declared time, decimal string. e.g. 600"
      },
      "vertical_minima_feet": {
        "type": "string",
        "description": "REQUIRED decimal string, no default. e.g. 1000"
      },
      "reference_lat_micro_deg": {
        "type": "string",
        "description": "OPTIONAL decimal string, the latitude the scale was computed for. REQUIRED whenever a scale is declared: all three fields travel together and a partial declaration is refused with REFUSED_INCOMPLETE_LONGITUDE_SCALE rather than silently ignored. WHEN ALL THREE ARE ABSENT the predicate decides in the plain declared micro-degree coordinate plane with no correction, reports longitude_scale NOT_DECLARED on the certificate, and says so -- a coordinate statement is never presented as a ground distance. e.g. 50000000"
      },
      "horizontal_minima_micro_deg": {
        "type": "string",
        "description": "REQUIRED decimal string, no default -- a defaulted separation standard is a verdict about a rule the caller never stated. e.g. 5000"
      }
    }
  }
}
execute_2local_hamiltonian 1 change
{
  "name": "execute_2local_hamiltonian",
  "description": "QMA 2-local Hamiltonian, sealed as exact rational Jordan exclusions on the UUM-8D torus: given ZZ terms and a presented computational configuration, return the exact energy energy_num/energy_den of that configuration (z = 1-2s per site; each term adds jnum/jden * z_i * z_j). constraints are i,j,jnum,jden;... (sites i,j with coupling jnum/jden), config is s0,s1,... bits. The verdict is graded against the one energy QMACourtLaw holds a seal for: -1/1, constraints 0,1,1,1 with config 0,1 (fixture2L",
  "inputSchema": {
    "type": "object",
    "required": [],
    "properties": {
      "config": {
        "type": "string",
        "description": "computational bits s0,s1,... each 0 or 1, one per site, e.g. 0,1"
      },
      "constraints": {
        "type": "string",
        "description": "ZZ terms i,j,jnum,jden;... e.g. 0,1,1,1 (sites 0 and 1, coupling 1/1)"
      },
      "jordanBondExclusions": {
        "type": "string",
        "description": "alias of constraints. e.g. 0,1,1,1"
      }
    }
  },
  "annotations": {
    "readOnlyHint": false,
    "destructiveHint": false,
    "idempotentHint": false
  }
}
execute_artifact_crucible 1 change
{
  "name": "execute_artifact_crucible",
  "description": "Ingest an ARTIFACT INGESTION BRIEF plus the artifact an agent generated for it; evaluate it against the laws the brief declares; seal and return the artifact ONLY on the top rung. THE BRIEF TEMPLATE is https://affine.earth/language-game/court-client.brief.txt: four bracketed sections, [LANGUAGE GAME DEFINITION] with Purpose, Win Condition (Exit) and Losing Moves; [STRUCTURAL GOAL] with Manifold Target, Input Coordinates and Execution Lock; [PAYLOAD SHAPE] with Target Architecture, File Structure",
  "inputSchema": {
    "type": "object",
    "required": [
      "brief",
      "artifact"
    ],
    "properties": {
      "brief": {
        "type": "string",
        "description": "The complete ARTIFACT INGESTION BRIEF: four sections ([LANGUAGE GAME DEFINITION], [STRUCTURAL GOAL], [PAYLOAD SHAPE], [WASM MEMBRANE INTEGRATION]) with every field filled. The blank template is refused as REFUSED_UNFILLED_PLACEHOLDER. e.g. the served template https://affine.earth/language-game/court-client.brief.txt with every field filled"
      },
      "artifact": {
        "type": "string",
        "description": "The source the agent generated to satisfy the brief. Generation is the caller's half; the crucible compiles, evaluates and seals. e.g. the source text of one file, or the base64 of a compiled wasm module such as AGFzbQEAAAABBQFgAAF/ (which reaches rung 7)"
      },
      "target_architecture": {
        "enum": [
          "Swift 6.4 ~Copyable",
          "AArch64 SIMD Assembler",
          "ESP32 Xtensa Bare-Metal",
          "Rust no_std wasm32"
        ],
        "type": "string",
        "description": "OPTIONAL and redundant: the brief's [PAYLOAD SHAPE] is the single home for this value. Supplied only for callers using the original schema; a value that contradicts the brief is REFUSED_ARCHITECTURE_CONFLICT rather than silently overriding it. e.g. Rust no_std wasm32 - the enum member that equals the served template's 'Target Architecture:' line verbatim; 'wasm32' alone is REFUSED_ARCHITECTURE_CONFLICT. Omit the field to let the brief carry it"
      }
    }
  },
  "annotations": {
    "readOnlyHint": false,
    "destructiveHint": false,
    "idempotentHint": false
  }
}

Get alerted

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/earth.affine/math-court"],"email":"[email protected]"}'

Agents: watch_tool({"toolId": "mcp-registry/earth.affine/math-court"}) over MCP.

Passed

Largest tool definitions

Static 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:

Markdown
[![MCP agent-readiness](https://glimind.com/v1/readiness/badge/mcp-registry%2Fearth.affine%2Fmath-court.svg)](https://glimind.com/server/mcp-registry%2Fearth.affine%2Fmath-court?ref=badge)
HTML
<a href="https://glimind.com/server/mcp-registry%2Fearth.affine%2Fmath-court?ref=badge"><img src="https://glimind.com/v1/readiness/badge/mcp-registry%2Fearth.affine%2Fmath-court.svg" alt="MCP agent-readiness"></a>
reStructuredText
.. image:: https://glimind.com/v1/readiness/badge/mcp-registry%2Fearth.affine%2Fmath-court.svg
   :target: https://glimind.com/server/mcp-registry%2Fearth.affine%2Fmath-court?ref=badge
   :alt: MCP agent-readiness

Tool-definition log

Glimind records every version of this server's tool definitions in a signed, append-only transparency log. Current manifest sha256:aee10880b5de64dd…, first seen 2026-10-17, included at leaf 1983 of 22,855. Version history · verify what your client received.

Tools (55)

Compare: most reliable communication servers · most reliable other servers · most reliable code servers · most reliable data servers · most reliable knowledge servers

Know before your agent calls it

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.

Add Glimind — free, no signup:

Add to Cursor Add to VS Code

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"
    }
  }
}

FAQ

Is the Affine Math Court MCP server down right now?

As of 2026-10-18 17:15 UTC, the Affine Math Court MCP server is up with a Glimind reliability score of 84/100 (grade B). Over the last 30 days it answered 99.9% of Glimind's liveness checks. It had 86 outages in 90 days, with a median recovery of 5 minutes.

How many tools does Affine Math Court MCP server provide?

Affine Math Court MCP server advertises 55 tools, including affine_translate_text, atc.assert_4d_deconfliction, bond_presented_key, code_ir_equiv, corpus_bonds.

How do I install Affine Math Court MCP server?

Point your MCP client at this streamable-http endpoint: https://affine.earth/language-invariant/mcp

Is the Affine Math Court MCP server safe to connect to an AI agent?

Glimind scanned all 55 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.

Operator of Affine Math Court MCP server?

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.