Koskamo

Paceword Speed Reader MCP

Paceword Speed Reader presents text one word at a time at a chosen pace, estimates reading and speaking time, and offers original reading-speed tests with comprehension questions. It serves as a training aid for paced reading practice within chat interfaces.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

Paceword Speed Reader MCP logo, by ZovoCommunity listingStreamable HTTPNo sign-inEndpoint checked 2026-11-01Published by Zovo
MCP endpoint (Streamable HTTP)
https://speed-reader.zovo.one/mcp
Vendor documentation

What you can do with it

  • Display text at a specific words-per-minute pace
  • Estimate reading and speaking time for articles
  • Run reading speed tests with comprehension checks

Source and maintenance

Community listingRegistry 1.0.0

Protocol and capabilities

Server
speed-reader 1.0.0
MCP protocol
2025-06-18
Tools
3 advertised
Resources
1 advertised
Resource templates
1 advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  },
  "resources": {
    "listChanged": true
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Paceword Speed Reader is a training aid for RSVP reading, reading-time estimates, and self-contained speed tests. Use show_speed_reader for supplied text, estimate_reading_time for time estimates, and run_reading_speed_test for one original passage. Do not make medical or learning-disability claims.

Tools

3 advertised

show_speed_reader — Show speed reader
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use this when the user wants to practice reading supplied text one word at a time. Accepts up to 20,000 characters, 100 to 1,000 words per minute, and 1 to 4 words per flash. Returns the word count and scheduled reading time; it is a training aid and does not measure comprehension.

show_speed_reader input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "text"
  ],
  "properties": {
    "text": {
      "type": "string",
      "maxLength": 20000,
      "minLength": 1,
      "description": "Text to pace in the reader, up to 20,000 characters, e.g. The harbor lights returned after the rain."
    },
    "words_per_flash": {
      "type": "integer",
      "maximum": 4,
      "minimum": 1,
      "description": "Words shown together on each flash from 1 to 4, e.g. 1."
    },
    "words_per_minute": {
      "type": "integer",
      "maximum": 1000,
      "minimum": 100,
      "description": "Pacing speed from 100 to 1,000 words per minute, e.g. 350."
    }
  }
}
show_speed_reader output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "word_count",
    "words_per_minute",
    "words_per_flash",
    "scheduled_time_ms",
    "scheduled_time",
    "limit_note"
  ],
  "properties": {
    "limit_note": {
      "type": "string"
    },
    "word_count": {
      "type": "number"
    },
    "scheduled_time": {
      "type": "string"
    },
    "words_per_flash": {
      "type": "number"
    },
    "words_per_minute": {
      "type": "number"
    },
    "scheduled_time_ms": {
      "type": "number"
    }
  },
  "additionalProperties": false
}
show_speed_reader annotations
{
  "title": "Show speed reader",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
estimate_reading_time — Estimate reading time
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use this when the user needs a reading-time or speaking-time estimate from text or a word count. Accepts text up to 20,000 characters or 1 to 2,000,000 words, plus 100 to 1,000 wpm or a reader type. Returns a 150 to 800 wpm table; it does not assess reading ability.

estimate_reading_time input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "text": {
      "type": "string",
      "maxLength": 20000,
      "minLength": 1,
      "description": "Optional text to count without returning it, e.g. The report has three short sections."
    },
    "word_count": {
      "type": "integer",
      "maximum": 2000000,
      "minimum": 1,
      "description": "Optional known word count when text is not supplied, e.g. 1200."
    },
    "reader_type": {
      "enum": [
        "leisurely",
        "average",
        "practiced",
        "rapid"
      ],
      "type": "string",
      "description": "Optional speed profile when no numeric speed is supplied, e.g. average (250 wpm)."
    },
    "words_per_minute": {
      "type": "integer",
      "maximum": 1000,
      "minimum": 100,
      "description": "Optional reading speed from 100 to 1,000 wpm, e.g. 250."
    }
  }
}
estimate_reading_time output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "word_count",
    "selected_wpm",
    "reading_time_ms",
    "reading_time",
    "speaking_130_wpm",
    "speaking_150_wpm",
    "pace_table"
  ],
  "properties": {
    "pace_table": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "wpm",
          "time"
        ],
        "properties": {
          "wpm": {
            "type": "number"
          },
          "time": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "word_count": {
      "type": "number"
    },
    "reading_time": {
      "type": "string"
    },
    "selected_wpm": {
      "type": "number"
    },
    "reading_time_ms": {
      "type": "number"
    },
    "speaking_130_wpm": {
      "type": "string"
    },
    "speaking_150_wpm": {
      "type": "string"
    }
  },
  "additionalProperties": false
}
estimate_reading_time annotations
{
  "title": "Estimate reading time",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
run_reading_speed_test — Run reading speed test
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use this when the user wants an original timed reading-speed practice test with comprehension questions. Accepts short, medium, or long passages only. Returns the passage length and four multiple-choice questions with four options each; correct options stay in widget-only metadata. Do not use for medical or learning-disability assessment.

run_reading_speed_test input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "passage_length"
  ],
  "properties": {
    "passage_length": {
      "enum": [
        "short",
        "medium",
        "long"
      ],
      "type": "string",
      "description": "Original passage length to test, e.g. medium."
    }
  }
}
run_reading_speed_test output schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "passage_length",
    "word_count",
    "question_count",
    "instructions",
    "limit_note",
    "questions"
  ],
  "properties": {
    "questions": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "question",
          "options"
        ],
        "properties": {
          "options": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "id",
                "text"
              ],
              "properties": {
                "id": {
                  "enum": [
                    "A",
                    "B",
                    "C",
                    "D"
                  ],
                  "type": "string"
                },
                "text": {
                  "type": "string"
                }
              },
              "additionalProperties": false
            }
          },
          "question": {
            "type": "string"
          }
        },
        "additionalProperties": false
      }
    },
    "limit_note": {
      "type": "string"
    },
    "word_count": {
      "type": "number"
    },
    "instructions": {
      "type": "string"
    },
    "passage_length": {
      "type": "string"
    },
    "question_count": {
      "type": "number"
    }
  },
  "additionalProperties": false
}
run_reading_speed_test annotations
{
  "title": "Run reading speed test",
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}

Prompts

Not advertised

No prompt definitions available.

Resources

1 advertised

speed-reader-widget — Paceword Speed Reader view

Advertised by the server during the last successful anonymous check.

Interactive view for Paceword Speed Reader.

speed-reader-widget URI
ui://widget/speed-reader-v3-1.0.0-7c4deacb441edd9a5c34dcaa3f7f53d332de0d8de56ba59ad39dcc33847d8866.html

MIME type: text/html;profile=mcp-app

speed-reader-widget-legacy — Paceword Speed Reader view (previous versions)

Advertised by the server during the last successful anonymous check.

speed-reader-widget-legacy URI template
ui://widget/speed-reader-{version}.html

MIME type: text/html;profile=mcp-app

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
415 ms
95th percentile latency
415 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 415 ms · metadata changed · 3 tool(s), 1 resource(s), 1 resource template(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http paceword-speed-reader-mcp https://speed-reader.zovo.one/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add paceword-speed-reader-mcp --url https://speed-reader.zovo.one/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable paceword-speed-reader-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "paceword-speed-reader-mcp": {
      "url": "https://speed-reader.zovo.one/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "paceword-speed-reader-mcp": {
      "type": "streamableHttp",
      "url": "https://speed-reader.zovo.one/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start paceword-speed-reader-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "paceword-speed-reader-mcp": {
      "type": "http",
      "url": "https://speed-reader.zovo.one/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http paceword-speed-reader-mcp https://speed-reader.zovo.one/mcp

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "paceword-speed-reader-mcp": {
      "url": "https://speed-reader.zovo.one/mcp"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "paceword-speed-reader-mcp": {
      "serverUrl": "https://speed-reader.zovo.one/mcp"
    }
  }
}

Let your agent find its tools

Find servers like Paceword Speed Reader MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.