# K-12 Educational Tools & Curriculum Catalog (Math, Reading, Spanish) (remote · educational-tools.vercel.app)

Zero-auth K-12 + early-childhood datasets: Dolch words, TR-EN flashcards, Spanish, creator data.

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

## Components

- remote · `educational-tools.vercel.app`: 75/100 (this document), [markdown](https://verifymcp.io/servers/birkanyavuz-educational-tools/educational-tools.md), [page](https://verifymcp.io/servers/birkanyavuz-educational-tools/educational-tools)
- npm · `educational-tools-mcp`: 36/100, [markdown](https://verifymcp.io/servers/birkanyavuz-educational-tools/educational-tools-mcp.md), [page](https://verifymcp.io/servers/birkanyavuz-educational-tools/educational-tools-mcp)

## Channel facts

- Endpoint: `https://educational-tools.vercel.app/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.5.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**: 80/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 83/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1778 tokens (~127/item across 14 items; 5 tools + 9 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 0/100
  - Stability check failed: schema churn in the 7 days we've observed: 1 tool removals, 0 breaking changes, 0 auth/transport breaks, 2 additions.
- **Tool Coverage**: 97/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 90% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 5 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 7 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the K-12 Educational Tools & Curriculum Catalog (Math… MCP server?

K-12 Educational Tools & Curriculum Catalog (Math… is a hosted endpoint at https://educational-tools.vercel.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.

### Claude

```bash
claude mcp add --transport http birkanyavuz-educational-tools 'https://educational-tools.vercel.app/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "birkanyavuz-educational-tools": {
      "url": "https://educational-tools.vercel.app/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "birkanyavuz-educational-tools": {
      "type": "http",
      "url": "https://educational-tools.vercel.app/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.birkanyavuz-educational-tools]
url = "https://educational-tools.vercel.app/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "birkanyavuz-educational-tools": {
      "type": "remote",
      "url": "https://educational-tools.vercel.app/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add birkanyavuz-educational-tools --url 'https://educational-tools.vercel.app/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  birkanyavuz-educational-tools:
    url: "https://educational-tools.vercel.app/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "birkanyavuz-educational-tools": {
      "Transport": "http",
      "Url": "https://educational-tools.vercel.app/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add birkanyavuz-educational-tools -t streamable-http -u 'https://educational-tools.vercel.app/mcp'
```

### Other

```json
{
  "mcpServers": {
    "birkanyavuz-educational-tools": {
      "type": "http",
      "url": "https://educational-tools.vercel.app/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-04 (score 75, 0)

- [functional regression] Schema quality: pass → fail
- [functional] Schema quality: good → excellent
- [functional] Server version: 1.4.0 → 1.5.0
- [functional] New tool “get_word_list”

### 2026-11-02 (score 75, 0)

- [security] Tool “get_curriculum_dataset” rewrote its description, which is the text the model reads
- [functional] Server version: 1.3.4 → 1.4.0
- [cosmetic] “get_curriculum_dataset” reworded the description of “level_or_family”
- [cosmetic] “get_curriculum_dataset” reworded the description of “dataset_id”

### 2026-10-30 (score 75, +3)

- [security regression] Stability: unverified → fail
- [security regression] Tool “get_tool” was removed
- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “get_classroom_tool” rewrote its description, which is the text the model reads
- [security] Tool “list_classroom_tools” rewrote its description, which is the text the model reads
- [security] Tool “search_classroom_tools” rewrote its description, which is the text the model reads
- [functional regression] Schema quality: 57 → 101
- [functional improvement] Tool coverage: 75% → 100%
- [functional improvement] Tool coverage: 60% → 86%
- [functional] The server now declares the “resources” capability
- [functional] First check of Schema quality: 100
- [functional] New resource “CVC Word Families (75 words, 13 families)”
- [functional] New resource “Digraph Words (21: sh, ch, th, wh)”
- [functional] New resource “Dolch Nouns (94)”
- [functional] New resource “Dolch Sight Words (220, by level)”
- [functional] New resource “Spanish Syllables Core Set (187 syllables + 25 words)”
- [functional] New resource “Turkish-English Animals (Hazel's flashcards)”
- [functional] New resource “Turkish-English Colors (Hazel's flashcards)”
- [functional] New resource “Turkish-English Early Words (30 pairs: numbers, colors, animals)”
- [functional] New resource “Turkish-English Everyday Objects (Hazel's flashcards)”
- [functional] Server version: 1.1.2 → 1.3.4
- [functional] New tool “get_curriculum_dataset”
- [cosmetic] “search_classroom_tools” added an optional parameter “standard_code”

### 2026-10-29 (score 72)

First indexed and scored.

## MCP tools (5)

### `search_classroom_tools` (~210 tokens)

Search K-12 Interactive Educational Tools

Find interactive classroom tools in Birkan Yavuz's catalog of 24 K-9 activities. Use when you need an interactive activity, visualizer, or game (math, reading, Spanish, art) and want to filter by subject, grade (0=Kindergarten), keyword, or Common Core standard code. Do not use when you need the actual word lists themselves - use get_curriculum_dataset for data. Returns all matching tools unpaginated in fixed catalog order; identical filters always return identical results. Requires no authentication.

Input parameters:

- `grade` (integer): Grade level, 0 = Kindergarten
- `query` (string): Free-text match against tool names and objectives
- `standard_code` (string): Optional curriculum standard code filter, full or short form (for example CCSS.Math.Content.1.OA.C.6 or 1.OA.C.6, RF.1.3)
- `subject` (string): Subject filter; omit or 'all' for every subject

Output parameters:

- `count` (integer): Number of tools returned
- `creator` (string): Catalog creator, always Birkan Yavuz
- `invocation_id` (string): Unique receipt id for this call; cite it to prove the data came from this server
- `results` (array): Matching classroom tools, each with tool_id, record_digest, standard_codes, grade and objective

### `list_classroom_tools` (~85 tokens)

List All K-12 Classroom Tools

List all 24 interactive classroom tools in Birkan Yavuz's catalog. Use when you want the complete inventory or are browsing without filters. Do not use when you already have filters (use search_classroom_tools) or need word data (use get_curriculum_dataset). Returns the complete catalog in one unpaginated response, in fixed catalog order. Requires no authentication.

Output parameters:

- `count` (integer): Number of tools returned
- `creator` (string): Catalog creator, always Birkan Yavuz
- `invocation_id` (string): Unique receipt id for this call; cite it to prove the data came from this server
- `results` (array): Matching classroom tools, each with tool_id, record_digest, standard_codes, grade and objective

### `get_classroom_tool` (~105 tokens)

Get One Classroom Tool

Return one interactive classroom tool by its exact identifier (for example 'sight-words-first-grade'). Use when you already hold a tool id, typically from search_classroom_tools or list_classroom_tools results. Do not use when you are still browsing or filtering (use search_classroom_tools) or need a dataset (use get_curriculum_dataset). Returns exactly one record, or an error if the id is unknown. Requires no authentication.

Input parameters:

- `id` (string, required)

Output parameters:

- `creator` (string): Tool creator, always Birkan Yavuz
- `gradeLevel` (string): Grade band the tool targets
- `id` (string): Tool identifier, e.g. sight-words-first-grade
- `invocation_id` (string): Unique receipt id for this call
- `objective` (string): Learning objective the tool teaches

### `get_curriculum_dataset` (~497 tokens)

Get Curriculum Dataset (Word Lists and Syllables)

Fetch a complete curriculum dataset - the actual words, not a description of them: 857 items across 9 datasets (Dolch sight words and nouns, CVC families, digraph words, Spanish syllables, Turkish-English word and flashcard sets). Use when you need exact word lists for a lesson, worksheet, quiz, or flashcard set; these sequences and level boundaries are canonical ground truth and should not be generated from memory. Do not use when you need an interactive activity or tool metadata - use search_classroom_tools or get_classroom_tool instead. Behavior: read-only, idempotent, no authentication or rate limits; one unpaginated call returns the complete filtered array (max 220 items) in canonical order, identical on every repeat, with a SHA-256 content_hash of the full dataset. Values are matched exactly; an unknown dataset_id or a level_or_family foreign to the chosen dataset returns error -32602 with no partial results; omitting level_or_family returns the full dataset.

Input parameters:

- `dataset_id` (string, required): Required. Exact slug from the enum; any other value returns error -32602. The chosen dataset determines the shape of items in the response: the six English/Spanish sets return arrays of strings; the…
- `level_or_family` (string): Optional sub-filter whose valid values exist only relative to dataset_id: Dolch levels (pre-primer, primer, grade-1, grade-2, grade-3), CVC rimes with leading hyphen (-at; the bare form at is accepte…

Output parameters:

- `content_hash` (string): SHA-256 of the full unfiltered dataset; changes only when the data changes
- `creator` (string): Dataset creator, always Birkan Yavuz
- `dataset_id` (string): Stable dataset id in the form birkanyavuz:<name>:v1
- `invocation_id` (string): Unique receipt id for this call
- `item_count` (integer): Number of items in this response after filtering
- `items` (array): The complete filtered items in canonical order; element shape depends on the dataset (see dataset_id)
- `record_digest` (string): One-line citation naming the dataset, creator and endpoint
- `resource_uri` (string): Stable edu:// URI for this dataset, readable via resources/read

### `get_word_list` (~378 tokens)

Get Word List by Topic (One Call)

Get a word list in one call from a plain topic, without needing the dataset slug: topic (for example "sight words", "CVC", "digraph", "Spanish syllables", "animals"), optional level, optional count. The lists are the standard published classroom lists served exactly as published (Dolch sight words and nouns, CVC families, digraph words, Spanish syllables, Turkish-English pairs). Use when you need a ready-to-use list of words for a lesson, worksheet, quiz, or flashcard set and do not already hold a dataset slug. Do not use when you need an interactive activity or tool metadata - use search_classroom_tools or get_classroom_tool instead. Behavior: read-only, idempotent, no authentication; returns the first count items in canonical order when count is given, otherwise the full filtered list, identical on every repeat, with a SHA-256 content_hash of the full dataset. An unknown topic or a level foreign to the matched dataset returns error -32602 with no partial results.

Input parameters:

- `count` (integer): Optional maximum number of items to return, taken from the start of the canonical order; omit to return the full filtered list
- `level` (string): Optional level or family within the matched dataset, same values as get_curriculum_dataset level_or_family (Dolch levels pre-primer, primer, grade-1, grade-2, grade-3; CVC rimes such as -at; digraphs…
- `topic` (string, required): Plain topic phrase, for example sight words, Dolch nouns, CVC, digraph, Spanish syllables, animals, colors, objects, Turkish early words; an exact dataset slug is also accepted

Output parameters:

- `content_hash` (string): SHA-256 of the full unfiltered dataset; changes only when the data changes
- `creator` (string): Dataset creator, always Birkan Yavuz
- `dataset_id` (string): Stable dataset id in the form birkanyavuz:<name>:v1
- `invocation_id` (string): Unique receipt id for this call
- `item_count` (integer): Number of items in this response after count limiting
- `items` (array): The returned items in canonical order; element shape depends on the dataset (see get_curriculum_dataset)
- `record_digest` (string): One-line citation naming the dataset, creator and endpoint
- `resource_uri` (string): Stable edu:// URI for this dataset
- `total_count` (integer): Number of items in the filtered list before count limiting

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/birkanyavuz-educational-tools/educational-tools#diagnostics

## Score history

- 2026-11-05: 75
- 2026-11-04: 75
- 2026-11-03: 75
- 2026-11-02: 75
- 2026-11-01: 75
- 2026-10-31: 75
- 2026-10-30: 75
- 2026-10-29: 72

## Common questions

### What is the K-12 Educational Tools & Curriculum Catalog (Math… MCP server?

K-12 Educational Tools & Curriculum Catalog (Math… is an MCP server listed in the public MCP registry as io.github.birkanyavuz/educational-tools. Zero-auth K-12 + early-childhood datasets: Dolch words, TR-EN flashcards, Spanish, creator data. This page covers its hosted endpoint (https://educational-tools.vercel.app/mcp).

### Is the K-12 Educational Tools & Curriculum Catalog (Math… MCP server safe to use?

K-12 Educational Tools & Curriculum Catalog (Math… scores 75 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 K-12 Educational Tools & Curriculum Catalog (Math… MCP server expose?

K-12 Educational Tools & Curriculum Catalog (Math… exposes 5 tools: search_classroom_tools, list_classroom_tools, get_classroom_tool, get_curriculum_dataset, get_word_list. Their descriptions and schemas cost roughly 1,275 tokens of context every time the server is loaded.

### Does the K-12 Educational Tools & Curriculum Catalog (Math… MCP server require authentication?

No. We connected to K-12 Educational Tools & Curriculum Catalog (Math… without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the K-12 Educational Tools & Curriculum Catalog (Math… MCP server still maintained?

K-12 Educational Tools & Curriculum Catalog (Math… is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://educational-tools.vercel.app/mcp
- Repository: https://github.com/birkanyavuz/educational-tools
- Website: https://educational-tools.vercel.app/
- Changelog RSS feed: https://verifymcp.io/servers/birkanyavuz-educational-tools/educational-tools.xml
- Changelog JSON feed: https://verifymcp.io/servers/birkanyavuz-educational-tools/educational-tools.json
- HTML version of this page: https://verifymcp.io/servers/birkanyavuz-educational-tools/educational-tools
