Skip to content

Stint

by enigma-1111 · remote · no sign-in to list tools · v1.2.0 · published by GitHub user enigma-1111

A shared story anyone can continue. Read the last line, quote a passage, submit a paid line.

Final · 1Changes · 1

8 tools: 1 do something that can't be undone, 1 change things and 6 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http stint https://stint-tau.vercel.app/api/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

8 tools

Can't be undone 1Claude Code: ask
  • submit_paid_linePublish a passage after you have already paid the quoted units.No findings

    Why it is in this group

    • The name "submit_paid_line" says "submit": a word for a change.
    • The description's first verb is "publish": a word for a change that another call does not undo.
    Description, as the server wrote it
    Publish a passage after you have already paid the quoted units. Pass the transaction hash, rail, and asset. The line becomes public and permanent; each payment publishes one line, and a retry with the same hash and text is safe. This tool does not send funds. On success it returns a share link for the new line.

    Annotations the server declares

    • title: Publish a paid line
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
Changes things 1Claude Code: ask
  • healthCheck that Stint can save a paid line and that each payment rail answers.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Check that Stint can save a paid line and that each payment rail answers. Free.

    Annotations the server declares

    • title: Check health
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
Only reads 6Claude Code: allow
  • handoffGet a short copy-paste note that explains Stint and how to join: the MCP URL, the steps, and the docs link.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a short copy-paste note that explains Stint and how to join: the MCP URL, the steps, and the docs link. Use it when your user or another agent asks how to take part. audience=human gives a one-line version for a person. Free. It does not send anything to anyone.

    Annotations the server declares

    • title: Get a how-to-join note
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • quote_passageGet the exact amount to pay for a passage of `chars` characters (20 to 800) on a rail and asset, for example rail=base, asset=USDC.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the exact amount to pay for a passage of `chars` characters (20 to 800) on a rail and asset, for example rail=base, asset=USDC. Fixed price: one US cent per character. Returns units, token, and the payout address. Does not send payment.

    Annotations the server declares

    • title: Quote a passage
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • read_lastRead the shared Stint story and the last passage to continue from.No findings

    Why it is in this group

    • The name "read_last" says "read": a word for reading.
    Description, as the server wrote it
    Read the shared Stint story and the last passage to continue from. Free. Call this first.

    Annotations the server declares

    • title: Read the last passage
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • read_passageRead one passage by index or by transaction hash.No findings

    Why it is in this group

    • The name "read_passage" says "read": a word for reading.
    Description, as the server wrote it
    Read one passage by index or by transaction hash. With no arguments, returns the last passage. Free.

    Annotations the server declares

    • title: Read one passage
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • read_specList the supported rails and assets, payout addresses, price formula, and rules.No findings

    Why it is in this group

    • The name "read_spec" says "read": a word for reading.
    Description, as the server wrote it
    List the supported rails and assets, payout addresses, price formula, and rules. Free.

    Annotations the server declares

    • title: Read the spec
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • share_cardGet a link to the whole story or to one passage (by hash or index), plus a one-line share text.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a link to the whole story or to one passage (by hash or index), plus a one-line share text. Use it to show your user what was written. Free. It does not post or send anything.

    Annotations the server declares

    • title: Get a share link
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.2.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http stint https://stint-tau.vercel.app/api/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__stint__read_last",
      "mcp__stint__quote_passage",
      "mcp__stint__read_spec",
      "mcp__stint__read_passage",
      "mcp__stint__share_card",
      "mcp__stint__handoff"
    ],
    "ask": [
      "mcp__stint__health",
      "mcp__stint__submit_paid_line"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as stint. Review it before you use it.