# Georgia Homeroom (remote · mcp.georgiahomeroom.org)

Georgia K-12 standards, Milestones blueprints, and achievement levels for educators. Independent.

- Trust score: 73/100 (medium)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `mcp.georgiahomeroom.org`: 73/100 (this document), [markdown](https://verifymcp.io/servers/org-georgiahomeroom-georgia-homeroom/mcp.md), [page](https://verifymcp.io/servers/org-georgiahomeroom-georgia-homeroom/mcp)

## Channel facts

- Endpoint: `https://mcp.georgiahomeroom.org/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.2.0`

## Trust breakdown

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. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Endpoint Security**: 11/100
  - TLS not yet verified: we couldn't open a connection to check the certificate.
  - Authorisation not yet verified: we couldn't confirm whether this endpoint requires it.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS not yet verified: we couldn't read the response headers to check for it.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 0/100
  - Transport check failed: declared streamable-http, but we couldn't connect to verify it.
- **Schema Quality & AI Usability**: 0/100
  - Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 0/100
  - Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
- **Tool Safety**: 0/100
  - Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
- **Capabilities**: 0/100
  - Capabilities not yet verified: we couldn't read the endpoint's capabilities.

**Unverified: 5 categories.** Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

## Install

### How do I install the Georgia Homeroom MCP server?

Georgia Homeroom is a hosted endpoint at https://mcp.georgiahomeroom.org/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.

### Claude

```bash
claude mcp add --transport http org-georgiahomeroom-georgia-homeroom 'https://mcp.georgiahomeroom.org/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "org-georgiahomeroom-georgia-homeroom": {
      "url": "https://mcp.georgiahomeroom.org/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "org-georgiahomeroom-georgia-homeroom": {
      "type": "http",
      "url": "https://mcp.georgiahomeroom.org/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.org-georgiahomeroom-georgia-homeroom]
url = "https://mcp.georgiahomeroom.org/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "org-georgiahomeroom-georgia-homeroom": {
      "type": "remote",
      "url": "https://mcp.georgiahomeroom.org/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add org-georgiahomeroom-georgia-homeroom --url 'https://mcp.georgiahomeroom.org/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  org-georgiahomeroom-georgia-homeroom:
    url: "https://mcp.georgiahomeroom.org/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "org-georgiahomeroom-georgia-homeroom": {
      "Transport": "http",
      "Url": "https://mcp.georgiahomeroom.org/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add org-georgiahomeroom-georgia-homeroom -t streamable-http -u 'https://mcp.georgiahomeroom.org/mcp'
```

### Other

```json
{
  "mcpServers": {
    "org-georgiahomeroom-georgia-homeroom": {
      "type": "http",
      "url": "https://mcp.georgiahomeroom.org/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-05 (score 73, 0)

- [security regression] Endpoint reachability: reachable → unreachable
- [security regression] Stability: 0.30 → unverified
- [security regression] HSTS header: fail → unverified
- [security regression] Authorization: partial → unverified
- [security regression] Tool safety: pass → unverified
- [security regression] TLS certificate: pass → unverified
- [security regression] Transport: pass → fail
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional] First check of Schema quality: unverified

### 2026-11-04 (score 73, +1)

No change was recorded against any check on this day. Stability & Change Management went from 27 to 30. That category is still filling its 30-day observation window: 8 days of observed history at the previous scan, 9 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-11-02 (score 72, +1)

No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-31 (score 71, +1)

No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-28 (score 70, +1)

No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-27 (score 69, 0)

- [functional improvement] Stability: unverified → 0.03

### 2026-10-26 (score 69)

First indexed and scored.

## MCP tools (11)

### `search_standards` (~491 tokens)

Search Standards

Search the Georgia Standards of Excellence by topic, with optional filters. Returns matching standards as `items` (each: `code`, `subject`, `grades`, `strand_code`, `strand_name`, `hs_course`, `statement`, plus optional `notes` and `path`). When enrichment is on, the response also carries `alds` (achievement-level descriptions per standard), `assessment_coverage` (Milestones claim, target, approx_points, sub_codes, qualifier), and `assessment_metadata` keyed by assessment_id (Depth of Knowledge split, item-type design); the server instructions explain how to read points, qualifiers, and levels. If `dropped_strand` is set, the strand filter matched nothing and the results span the whole subject. `truncated` means more matches may exist than `limit` allowed. Enrichment is automatic for small result sets (8 standards or fewer) and off for larger ones unless `include_enrichment` is true. If the query itself contains a standard code (e.g. 'what is 5.NR.1?'), the search becomes a direct code lookup and the other filters are ignored; lookup_standards_by_code is the direct route for known codes. Limitation: matches the words of the standards, in English.

Input parameters:

- `course`: Optional high-school course, e.g. 'algebra i', 'biology', 'us history' (describe_vocabulary lists them).
- `grade`: One grade: 'K' (or 'KG') or '01' through '12'. '1' through '9' also work. Do not combine with grade_set.
- `grade_set`: Several grades at once, e.g. ['03', '04', '05']. Do not combine with grade.
- `include_enrichment`: true attaches achievement levels and Milestones coverage to every result; false never does; omit for automatic.
- `limit`: Most rows to return, 1 to 100. Default: 40 when narrowed by grade, grade_set, or course; 20 otherwise.
- `query` (string, required): Topic words to search for, e.g. 'adding fractions with unlike denominators'.
- `strand_code`: Optional strand, by code ('NR') or name ('Numerical Reasoning'). describe_vocabulary lists the strands for each subject.
- `subjects`: Limit to these subjects.

### `lookup_standards_by_code` (~261 tokens)

Look Up Standards by Code

Look up Georgia standards by their codes (e.g. ['5.NR.1', '3.T.C.1', 'S8P1', 'SS8H1.a']). Returns the matching standards (each with `code`, `statement`, optional `notes` and `path`), plus per-code `alds` (achievement-level descriptions), `assessment_coverage` (Milestones claim, target, approx_points, qualifier), and `assessment_metadata` keyed by assessment_id; the server instructions explain how to read points, qualifiers, and levels. A sub-code (e.g. '5.NR.3.3') with no descriptors of its own shows its parent standard's. Older codes from earlier materials (MGSE, ELAGSE, CCGPS) are translated to the current code when the mapping is unambiguous, including renamed math strands (fractions moved from `NF` to the current `5.NR.3` cluster), and reported in `normalized_codes`. Codes that still don't match appear in `unknown_codes` with likely `suggestions`.

Input parameters:

- `codes` (array, required): One or more standard codes, e.g. ['5.NR.1', 'S8P1'].

### `search_mastery_descriptors` (~262 tokens)

Search Achievement Level Descriptions

Search the Georgia Milestones achievement-level descriptors: the official descriptions of what a student can do at each of four levels (Beginning, Developing, Proficient, Distinguished) for a standard. Use it for 'what does mastery look like' questions (e.g. 'what does a proficient 3rd grader do with fractions?'); it matches the descriptor text, not the standards' own wording. Returns `hits` with `item_code`, `level`, `descriptor_text`, `subject`, `grades`, and `statement` (the standard the descriptor belongs to), best match first. Limitation: descriptors exist only for the subjects and grades the Milestones tests cover, so many standards have none.

Input parameters:

- `grade`: One grade: 'K' (or 'KG') or '01' through '12'. '1' through '9' also work.
- `grade_set`: Several grades at once, e.g. ['03', '04'].
- `level`: Only this achievement level.
- `limit` (integer): Most hits to return, 1 to 50.
- `query` (string, required): Words to search for in the descriptor text, e.g. 'fractions'.
- `subjects`: Limit to these subjects.

### `list_assessments` (~128 tokens)

List Georgia Milestones Tests

List every Georgia Milestones test with a blueprint: 14 End-of-Grade tests (ELA and math for each of grades 3-8; science and social studies in grade 8 only) and 4 End-of-Course tests (Algebra I, Biology, Literature II, US History). Returns `assessments` with `assessment_id`, `subject`, `grade` (null for End-of-Course), `hs_course` (null for End-of-Grade), and a readable `title`. Use the ids with get_assessment_blueprint and standards_for_claim.

### `get_assessment_blueprint` (~441 tokens)

Get Georgia Milestones Test Blueprint

The full blueprint for one Georgia Milestones test, for pacing and coverage planning. Identify the test by `assessment_id` (e.g. 'gmas_g05_math'), by `course` for an End-of-Course test (e.g. 'biology', 'algebra i', 'us history'), or by `grade` + `subject` for an End-of-Grade test (e.g. grade='5', subject='math'). Returns `title`, `total_points`, `dok_distribution` (Depth of Knowledge split), `design` (item-type table), `claim_summary` (points per claim), and `claims`: each claim and target with its `approx_points` and the `standards` it covers.

READING THE POINTS. Do not add up `approx_points` down `claims`: the blueprint often draws one merged points cell across several target rows, and each of those rows repeats the pooled value (the naive sum reads 98-114 on the 60-point ELA tests and 82 on the 58-point grade 5 math test). Pooled rows share a `points_group` id and are flagged `points_shared: true`, with co-covered codes in `points_shared_with` and a ready-to-quote `approx_points_note`. The correct numbers are precomputed: `claim_summary` (one total per claim) and `total_claim_points` (the whole test). `total_points` comes from the design table and is null for the ELA blueprints (their PDFs have no Total row), so use `total_claim_points` there. If no single test matches, the result is an error that lists the available tests.

Input parameters:

- `assessment_id`: Test id from list_assessments, e.g. 'gmas_g05_math'.
- `course`: End-of-Course test course: 'algebra i', 'biology', 'literature ii', or 'us history'.
- `grade`: Grade of an End-of-Grade test (3 through 8). Use with subject.
- `subject`: Subject of an End-of-Grade test. Use with grade.

### `standards_for_claim` (~446 tokens)

List Standards in a Blueprint Category

List every standard a Georgia Milestones test assesses under one blueprint claim (a reporting category such as 'Numerical Reasoning'), with point weights. This is the reverse of the per-standard coverage view. Pass an `assessment_id` (from list_assessments) and a `claim_code` (the category heading, e.g. 'Numerical Reasoning', or for ELA '<strand>.<domain>' like 'Texts.Interpreting Texts'); optionally narrow to one `target_text`. Matching ignores case and surrounding spaces. Returns `standards` with `code`, `statement`, `claim_name`, `target_text`, `approx_points`, `sub_codes`, and `qualifier`.

READING THE POINTS. `approx_points` is the weight of a claim or target, never of one standard, and a blueprint often draws one merged points cell across several targets. Rows sharing a merged cell repeat that value and share a `points_group` id; each is flagged `points_shared: true`, names its co-covered codes in `points_shared_with`, and carries a ready-to-quote `approx_points_note`. Rows with different `points_group` ids are separate pools. So do not add up `approx_points` down the rows: use the precomputed `claim_total_points`, bounded by `assessment_total_points` / `design_total_points`. Worked example: grade 5 math Numerical Reasoning has 5 rows reading 14/14/14/10/10 (62 if summed), but 5.NR.1+5.NR.4 share one 14-point pool and 5.NR.2+5.NR.5 share one 10-point pool, so the claim is 38 points on a 58-point test. An unknown claim or assessment_id is an error that lists the valid values.

Input parameters:

- `assessment_id` (string, required): Test id from list_assessments, e.g. 'gmas_g05_math'.
- `claim_code` (string, required): Claim (reporting category) heading, e.g. 'Numerical Reasoning'.
- `target_text`: Optional target within the claim, as written in the blueprint.

### `browse_standards` (~284 tokens)

Browse Standards

Walk the Georgia standards hierarchy one level at a time. With no arguments, returns the four subjects. Pass `subject` (optionally with `grade`) for that subject's courses, or pass a row's `id` back as `parent` to open it. `grade` works only with `subject` (or a `subject:<subj>` parent) and is ignored when opening any other row. Math courses have a strand layer between course and standard. Each row has an `id` (pass it back as `parent`), `code`, `title`, `cf_item_type` (the row's level in the state's data: Course, Domain, Content Standard, and so on), `kind`, `has_children`, `child_count`, and `gmas` / `ald` flags (whether the Milestones blueprints or the achievement-level descriptors cover it).

Input parameters:

- `grade`: One grade: 'K' (or 'KG') or '01' through '12'. '1' through '9' also work. Requires subject.
- `parent`: A row `id` from an earlier call: a row identifier, 'subject:<subject>', or 'synth:math_strand:<course id>:<strand code>'.
- `subject`: Subject: 'ela', 'math', 'science', or 'social_studies'.

### `get_subject_grade_tree` (~390 tokens)

Get All Standards for a Grade

Return every standard for one subject and grade in a single call, as a nested tree: the one-call alternative to repeated browse_standards calls (e.g. 'list all the 4th grade ELA standards'). `subject` and `grade` are required. Each node has `id`, `code`, `title`, `cf_item_type`, `kind`, `strand_code`, `gmas` / `ald` coverage flags, and nested `children`. It carries no achievement-level or test text; follow up on specific codes with get_standard_details or lookup_standards_by_code. Retired rows and empty containers are left out.

High school (grades 9-12) is organized by course, with up to 18 courses per grade. Without `course`, a high-school grade returns `courses` (each course's `id`, `code`, `title`, and `standard_count`) instead of the full tree; call again with `course` set to a title, code, or id from that list (or a name like 'algebra i') for that course's standards. `strand_code` narrows any tree to one strand. Returns `tree`, `node_count`, and `standard_count` (nodes that carry a code).

Input parameters:

- `course`: High-school course: a title, code, or id from the `courses` list, or a name like 'algebra i' or 'biology'.
- `grade` (string, required): One grade: 'K' (or 'KG') or '01' through '12'. '1' through '9' also work.
- `strand_code`: Optional strand, by code ('NR') or name ('Numerical Reasoning'). describe_vocabulary lists the strands for each subject.
- `subject` (string, required): Subject: 'ela', 'math', 'science', or 'social_studies'.

### `get_vertical_progression` (~200 tokens)

Trace a Strand Across Grades

Compare one strand year over year, for pacing, remediation, and differentiation. Pass a `code` (e.g. '5.NR.1') to line that standard up against the same code at every grade ('3.NR.1', '4.NR.1', ...), or pass `subject` + `strand_code` (name or code) for the whole strand. Returns `grades`, each with `grade`, `grade_label`, and `standards` (code, statement, and gmas/ald flags). If the strand can't be identified, the result is an error.

Input parameters:

- `code`: A standard code to trace, e.g. '5.NR.1'.
- `strand_code`: Strand code ('NR') or name ('Numerical Reasoning'). Use with subject.
- `subject`: Subject: 'ela', 'math', 'science', or 'social_studies'. Use with strand_code.

### `get_standard_details` (~273 tokens)

Get Standard Details

Full detail for one standard or container, addressed by its code (e.g. '5.NR.3.3', 'S8P1') or by an `id` returned by browse_standards or get_subject_grade_tree. Returns `found`, `id`, `code` (null for containers), `statement`, `subject`, `grades`, `strand_code` / `strand_name`, `hs_course`, `cf_item_type`, `kind`, `path` (where it sits in the curriculum), `notes`, `parent`, `children` (with gmas/ald flags), `alds` (achievement-level descriptions; sub-codes show their parent's), `assessment_coverage` (Milestones claim, target, points, qualifier), and `assessment_metadata` keyed by assessment_id; the server instructions explain how to read points and levels. Containers (domains, clusters, courses) are reachable only by `id` and carry no descriptors or coverage. An unknown code or id is an error; for older MGSE/ELAGSE codes use lookup_standards_by_code, which translates them.

Input parameters:

- `id` (string, required): A standard code such as '5.NR.3.3', or a row `id` from browse_standards or get_subject_grade_tree.

### `describe_vocabulary` (~110 tokens)

List Valid Filter Values

List the exact values the other tools' filters accept, so a search doesn't come back empty because of a typo. Returns `subjects` (id and label), `grades` (value and label), `hs_courses` (the course names the `course` filter accepts, with their subject), `strands` by subject (code and name; either works as `strand_code`), the four `ald_levels` (achievement levels), and the `assessments` catalog of Milestones tests.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/org-georgiahomeroom-georgia-homeroom/mcp#diagnostics

## Score history

- 2026-11-05: 73
- 2026-11-04: 73
- 2026-11-03: 72
- 2026-11-02: 72
- 2026-11-01: 71
- 2026-10-31: 71
- 2026-10-30: 70
- 2026-10-29: 70
- 2026-10-28: 70
- 2026-10-27: 69
- 2026-10-26: 69

## Common questions

### What is the Georgia Homeroom MCP server?

Georgia Homeroom is an MCP server listed in the public MCP registry as org.georgiahomeroom/georgia-homeroom. Georgia K-12 standards, Milestones blueprints, and achievement levels for educators. Independent. This page covers its hosted endpoint (https://mcp.georgiahomeroom.org/mcp).

### Is the Georgia Homeroom MCP server safe to use?

Georgia Homeroom scores 73 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 Georgia Homeroom MCP server expose?

Georgia Homeroom exposes 11 tools: search_standards, lookup_standards_by_code, search_mastery_descriptors, list_assessments, get_assessment_blueprint, and 6 more. Their descriptions and schemas cost roughly 3,286 tokens of context every time the server is loaded.

### Does the Georgia Homeroom MCP server require authentication?

Its publisher declares no required credentials for Georgia Homeroom. We have not been able to confirm that against the live endpoint, and a server can require authorisation without declaring it here.

### Is the Georgia Homeroom MCP server still maintained?

Georgia Homeroom is still listed in the MCP registry, though our most recent checks did not reach this channel. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What did VerifyMCP test on the Georgia Homeroom MCP server?

VerifyMCP ran 3 checks on Georgia Homeroom, covering HTTPS, DNSSEC and Transport. 8 items could not be completed, a gap on our side rather than a finding about Georgia Homeroom: TLS certificate, Authorization, HSTS header, Schema quality and 4 more. 5 categories score 0 for that reason, because we only credit what we can confirm. Supply Chain Security and Provenance & Transparency do not apply to a hosted endpoint, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.

## Links

- Remote endpoint: https://mcp.georgiahomeroom.org/mcp
- Website: https://georgiahomeroom.org/about/mcp-server
- Changelog RSS feed: https://verifymcp.io/servers/org-georgiahomeroom-georgia-homeroom/mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/org-georgiahomeroom-georgia-homeroom/mcp/changelog.json
- Trust report (JSON): https://verifymcp.io/servers/org-georgiahomeroom-georgia-homeroom/mcp.json
- HTML version of this page: https://verifymcp.io/servers/org-georgiahomeroom-georgia-homeroom/mcp
