GEOMETRY
REMOTE · MCP.GEOMETRY.APP · SCANNED SEP 22
Deterministic calendars and cosmic date JSON for AI agents via MCP (Gregorian 1900-2100).
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security80
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability69
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 1792 tokens (~224/item across 8 items; 8 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management80
- Stability observed for 24 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 8 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 8 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities60
- Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail
How do I install the GEOMETRY MCP server?
GEOMETRY is a hosted endpoint at https://mcp.geometry.app/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.geometry.app
claude mcp add --transport http app-geometry-mcp 'https://mcp.geometry.app/mcp'
{
"mcpServers": {
"app-geometry-mcp": {
"url": "https://mcp.geometry.app/mcp"
}
}
} {
"servers": {
"app-geometry-mcp": {
"type": "http",
"url": "https://mcp.geometry.app/mcp"
}
}
} [mcp_servers.app-geometry-mcp] url = "https://mcp.geometry.app/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"app-geometry-mcp": {
"type": "remote",
"url": "https://mcp.geometry.app/mcp",
"enabled": true
}
}
} openclaw mcp add app-geometry-mcp --url 'https://mcp.geometry.app/mcp' --transport streamable-http
mcp_servers:
app-geometry-mcp:
url: "https://mcp.geometry.app/mcp" {
"McpServers": {
"app-geometry-mcp": {
"Transport": "http",
"Url": "https://mcp.geometry.app/mcp"
}
}
} assistant mcp add app-geometry-mcp -t streamable-http -u 'https://mcp.geometry.app/mcp'
{
"mcpServers": {
"app-geometry-mcp": {
"type": "http",
"url": "https://mcp.geometry.app/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 21 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 73 to 77. That category is still filling its 30-day observation window: 22 days of observed history at the previous scan, 23 at this one. The score rises as the window fills, whether or not the server changes.
- 19 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 67 to 70. That category is still filling its 30-day observation window: 20 days of observed history at the previous scan, 21 at this one. The score rises as the window fills, whether or not the server changes.
- 17 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 60 to 63. That category is still filling its 30-day observation window: 18 days of observed history at the previous scan, 19 at this one. The score rises as the window fills, whether or not the server changes.
- 15 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.
- 13 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 47 to 50. That category is still filling its 30-day observation window: 14 days of observed history at the previous scan, 15 at this one. The score rises as the window fills, whether or not the server changes.
- 11 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 40 to 43. That category is still filling its 30-day observation window: 12 days of observed history at the previous scan, 13 at this one. The score rises as the window fills, whether or not the server changes.
- 10 Sept 26 0
- Schema quality: 266 → 224 ▲ functional
- New tool “get_age_plate” functional
- New tool “get_age_spread” functional
- New tool “get_long_range” functional
- 9 Sept 26 +1
- Tool “get_name” rewrote its description, which is the text the model reads security
- Schema quality: 774 → 1330 ▼ functional
- New tool “get_plays_numerology” functional
- New tool “get_team_chemistry” functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 22 Sept 2026 · Probed https://mcp.geometry.app/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=mcp.geometry.app | CN=WE1,O=Google Trust Services,C=US | 28 Jul 2026 | 26 Oct 2026 | ECDSA 256 | ECDSA-SHA256 | 654e0bcc15ff0b2e13f7e6e084d0226e |
| SANs: mcp.geometry.app | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.geometry.app. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| app. | present | 23684 | 8 | Verified |
| geometry.app. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains; preload |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.geometry.app/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.geometry.app/mcp | HTTPS enforced | 301 | https://mcp.geometry.app/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
get_age_plate Magian Age board (52 seats) ~124
USE for one Magian Grand Solar Age board by age_no (0..89; larger values wrap via mod 90). No birth date / no PII. NOT Long Range Journey; NOT get_age_spread person slice. RETURNS exactly 52 seats: card ref + age_spread_pos + planet_row + planet_col + is_fixed_card. Fixed seats: J hearts@11, 8 clubs@21, K spades@52.
| Name | Type | Req | Description |
|---|---|---|---|
| age_no | integer | yes | Magian age board index (0..89 preferred; wraps via f_age_mod90) |
No output schema declared.
No examples provided.
get_age_spread Magian Age seat (birth + as-of) ~167
USE for one person's Magian Age Spread board seat: birth_date + as_of_date (completed civil years; no wall clock). NOT the 90-year Long Range Journey theme card; NOT get_date sky/calendars; NOT two-person scoring. RETURNS compact cosmic birth card + age_spread {age_civil, age_no (mod 90), age_aliases, age_spread_pos, planet_row, planet_col, is_fixed_card}. Feb-29 follows Postgres age(). Error as_of_before_birth when as_of_date < birth_date.
| Name | Type | Req | Description |
|---|---|---|---|
| as_of_date | string | yes | As-of civil date YYYY-MM-DD (pass host today when asking current age board) |
| birth_date | string | yes | Civil birth date YYYY-MM-DD (month/day resolves Cosmic birth card) |
No output schema declared.
No examples provided.
get_compatibility Compatibility (two dates) ~250
USE when comparing exactly two people by Gregorian date. NOT for one date (moon/season/Rx/weekday/leap year/day_ruler → get_date) or names → get_name. Requires date_a and date_b. RETURNS scored dyad: cosmic_card_a/b (each side is full get_date shape incl. tarot_majors.greer/tarot_school, karma, planetary_spread; Cosmic card = birth = life = sun via also_called; planetary_spread and retrogrades_active planets include planet_type/symbol/emoji + names{} 10 cultures; each planetary_spread slot carries spread_pos 1-14 — sort by spread_pos for canonical Life-spread order), connections, overall_score, Chinese zodiac + true sidereal aspects, element harmony, life paths. temporal_context.date_a/b = {band, payload_scope} (full|extended|out_of_range × full|cosmic_card_only; 1900-2100 focus).
| Name | Type | Req | Description |
|---|---|---|---|
| date_a | string | yes | Person A date YYYY-MM-DD (exactly two people; not a roster) |
| date_b | string | yes | Person B date YYYY-MM-DD (exactly two people; not a roster) |
No output schema declared.
No examples provided.
get_date Date identity (any date) ~375
PRIMARY single-date tool. USE for any one Gregorian date when the ask needs moon phase (incl. blue/blood/supermoon/micromoon flags, Earth-Moon distance, phase_gmt, prev/next blue or blood dates), season/equinox anchors, classical retrogrades (retrogrades_active phase=retrograde), calendars, lunar year, Cosmic card (same card as life/sun — cosmic.also_called + planetary_spread.sun), karmic source/spirit, 14 planetary Life-spread cards, weekday or leap year (calendar_meta.weekday / is_leap_year), day_ruler (weekday planetary ruler Roman/Greek/Norse), or full date identity. NOT for two-person scoring → get_compatibility; name text → get_name. RETURNS cosmic block (incl. karma + planetary_spread) + tarot_majors (greer + tarot_school) + day_ruler (full+extended) + temporal blocks (moon_phase, season, retrogrades_active, calendar_meta, …). planetary_spread and retrogrades_active planets include planet_type/symbol/emoji + names{} (greek,norse,celtic,egyptian,sumerian,babylonian,mesopotamian,arabic,sanskrit,chinese). Each planetary_spread slot carries spread_pos (1-14 canonical Life-spread order; midheaven=13, phoenix=14 — sort by spread_pos; jsonb object keys are unordered). temporal_context={band, payload_scope} (band full|extended|out_of_range; payload_scope full|cosmic_card_only). Out-of-range responses set cosmic_card_available.
| Name | Type | Req | Description |
|---|---|---|---|
| date | string | yes | Single query date YYYY-MM-DD (any Gregorian date — sky, calendars, weekday, leap year, day_ruler, Cosmic card) |
No output schema declared.
No examples provided.
get_long_range Long Range Journey theme card ~171
USE for one person's 90-year Long Range Journey theme card: birth_date + as_of_date (completed civil years; no wall clock). NOT Magian Age Spread board (get_age_spread / get_age_plate); NOT get_date sky/calendars. RETURNS compact cosmic birth card + long_range {age_civil, age_no (mod 90), age_aliases, theme_card, spread_offset, planetary_period}. One theme card only — never 90 ages. Feb-29 follows Postgres age(). Error as_of_before_birth when as_of_date < birth_date.
| Name | Type | Req | Description |
|---|---|---|---|
| as_of_date | string | yes | As-of civil date YYYY-MM-DD (pass host today when asking current journey year) |
| birth_date | string | yes | Civil birth date YYYY-MM-DD (month/day resolves Cosmic birth card) |
No output schema declared.
No examples provided.
get_name Name → cosmic cards ~194
USE for person or word name text only (gematria → cosmic cards + Expression / Soul Urge / Personality). NOT for any date questions (weekday, leap year, moon, season, Rx, Cosmic card, day_ruler, Life Path) → get_date; two people → get_compatibility. RETURNS Francis Bacon cards, Latin cipher suite, periodic{} + periodic_set{}, numerology (expression/soul_urge/personality plus full-name karmic_lessons / hidden_passion / cornerstone / capstone / first_vowel / echoes and number lens polarity/planet/element/color), and per-word tarot/medicine/iching/chakra/lenormand/karma/planetary_spread. Free-text input guard (Del as a name is allowed; DEL FILE and SQL verbs are not).
| Name | Type | Req | Description |
|---|---|---|---|
| full_name | string | yes | Person or word name to decode (whitespace-separated words; not a date) |
No output schema declared.
No examples provided.
get_plays_numerology Baseball play numerology (HR/K milestones) ~284
USE when a player's season HR# or K# aligns with calendar day-of-month, jersey number, or inning on baseball.plays. NOT for roster cardology → get_team_chemistry; cosmic day card → get_date. Requires retro_id. mode=season (default) | spotlight (tier<=1) | career_summary (aggregates only). lane=both (default) | hr | k. Optional game_dt filter, tier_max (0-4), limit (1-500). RETURNS summary + events[] with pattern labels (day=HR#, HR#=jersey, day=K#=jersey, etc.). Overlay get_date(game_dt) for MCP day-card narrative.
| Name | Type | Req | Description |
|---|---|---|---|
| game_dt | string | – | Optional single-game filter YYYY-MM-DD |
| lane | string | – | Home runs, strikeouts, or both (default both) |
| limit | integer | – | Max event rows returned (default 100, max 500) |
| mode | string | – | season (default) | spotlight | career_summary |
| retro_id | string | yes | Retrosheet player id e.g. ohtansh01, freef001 |
| season_yr | integer | – | Required for season/spotlight modes |
| tier_max | integer | – | Max pattern tier 0-4 (spotlight defaults to 1) |
No output schema declared.
No examples provided.
get_team_chemistry Baseball team roster cardology ~227
USE for MLB team × season roster cardology (suit mix, anchor stacks, Chinese zodiac year-animal match on postseason scope). NOT for play-by-play HR/K numerology → get_plays_numerology; two-person dyads → get_compatibility; single date → get_date. Requires season_yr + team_code. scope=ws_champion (default) | postseason. RETURNS roster_size, suit_mix, anchor_stacks, season_animal; postseason adds year_animal_match_pct (CNY-aware birth animal). Apply: apply_mcp_baseball_linked.ps1.
| Name | Type | Req | Description |
|---|---|---|---|
| gametype | string | – | Postseason round when scope=postseason (default worldseries) |
| include_pair_matrix | boolean | – | Reserved v2 — echoes pair_note when true |
| scope | string | – | ws_champion (default) or postseason active roster |
| season_yr | integer | yes | MLB season year e.g. 2024 |
| team_code | string | yes | Retrosheet team code e.g. LAN, CHN, HOU |
No output schema declared.
No examples provided.
What is the GEOMETRY MCP server?
GEOMETRY is an MCP server listed in the public MCP registry as app.geometry/mcp. Deterministic calendars and cosmic date JSON for AI agents via MCP (Gregorian 1900-2100). This page covers its hosted endpoint (https://mcp.geometry.app/mcp).
Is the GEOMETRY MCP server safe to use?
GEOMETRY scores 82 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the GEOMETRY MCP server expose?
GEOMETRY exposes 8 tools: get_compatibility, get_date, get_name, get_age_spread, get_age_plate, and 3 more. Their descriptions and schemas cost roughly 1,792 tokens of context every time the server is loaded.
Does the GEOMETRY MCP server require authentication?
No. We connected to GEOMETRY without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the GEOMETRY MCP server still maintained?
GEOMETRY is still listed as active in the MCP registry. We last reached this channel on 22 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.