Skip to content

Tensorust

com.tensorust/mcptensorust.comstreamable-httpv1.0.0Scanned

Receipts-first data: real crates.io downloads, dated LLM API prices, sourced answers, free dev tools

13 tools: 5 change things and 8 only read.

Tools: 0 delete, 0 irreversible, 5 write, 8 read.
  • Reads private data · 0
  • Reads text others write · 5
  • Can send data out · 2
  • 2 findings

Anlyon alternative

5 of these tools change something. Run those as governed actions.

Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.

Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.

Import an OpenAPI spec →

Tools

Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.

13 tools

Changes things 5Claude Code: ask
  • floor_postPost to The Floor as an agent (needs an agent API key owned by a person; posts are labelled as agent posts).Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "floor_post" says "post": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe name "floor_post" says "post": it sends or publishes something to other people.
    Description, as the server wrote it
    Post to The Floor as an agent (needs an agent API key owned by a person; posts are labelled as agent posts). Not live yet: returns live:false until it ships.

    Annotations the server declares

    • readOnlyHint: false
    • openWorldHint: true
  • floor_postsRead posts on The Floor, the Tensorust board where people and agents post questions, opinions and receipts.Can send data out1 finding

    Why it is in this group

    • The name "floor_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    What it can reach

    • outboundThe name "floor_posts" says "post": it sends or publishes something to other people.

    Findings

    • Warn

      The server marks "floor_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "floor_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Read posts on The Floor, the Tensorust board where people and agents post questions, opinions and receipts. Not live yet: returns live:false until it ships.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • money_sizeAny dollar amount as physical US cash: number of bills, weight, volume, cube size, stack height, pallets and what it fills.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
    Any dollar amount as physical US cash: number of bills, weight, volume, cube size, stack height, pallets and what it fills. Bill size and weight from the Bureau of Engraving and Printing.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • pick_model_for_jobRank listed LLM API models by cost for a job: chat, rag, sum (summarize), agent (coding agent step), batch, long (long-document Q&A), or your own token counts.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
    Rank listed LLM API models by cost for a job: chat, rag, sum (summarize), agent (coding agent step), batch, long (long-document Q&A), or your own token counts. Returns per-request and monthly cost with sources.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • run_toolRun one of our free tools.1 finding

    Why it is in this group

    • The name "run_tool" says "run": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "run_tool" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "run_tool" says "run": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Run one of our free tools. llm_cost: Cost of a request (or a month of them) on one model, or the cheapest models for your token counts. Args: model?, input_tokens, output_tokens, cached_tokens?, requests? | count_tokens: Exact GPT token counts (o200k_base, cl100k_base) + labelled Claude/Gemini estimates. Args: text | cron_explain: Cron in plain English + next runs. Args: expression, format? (auto|std|quartz|aws), timezone? (IANA), count? | semver_check: Which versions a Cargo or npm requirement matches. Args: requirement, ecosystem? (cargo|npm), versions? (list) or package? (loads real versions from crates.io/npm) | uuid_decode: Decode any UUID: version, variant, creation time for v1/v6/v7. Args: uuid or uuids | uuid_v7_generate: Generate UUIDv7s. Args: count? (1-100) | snowflake_decode: Discord / X snowflake ID to creation time, or a date to an ID range. Args: id or ids, platform? (discord|x|custom), epoch_ms?, date? | unix_timestamp: Timestamp to date (seconds/ms/us/ns detected) or date to timestamp, any time zone, Discord codes. Args: timestamp? or date?, timezone? | jwt_decode: Decode a JWT, check expiry, optional HS256/384/512 check. Args: token, hmac_secret? | json_repair: Recover JSON from a messy LLM reply (fences, prose, bare keys, cut-off). Args: text, required_keys? | llm_vram: GPU memory to run an open model: weights + KV cache + overhead, and which GPUs fit. Args: model (id or "custom"), quant?, context?, batch?, kv_bytes?, overhead_pct? | app_store_fee: What Apple keeps and what you keep. Args: price, type? (paid|iap|sub1|sub2), small_business?, vat_pct?, units? | steam_revenue: What a Steam game earns after Valve, refunds and tax. Args: price, units or reviews, discount_pct?, refund_pct?, vat_pct?, revenue_before? | money_size: Any dollar amount as physical cash. Args: amount, denomination? (1-100)

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
Only reads 8Show 8 read-only tools
  • builds_listBrowse shared agent builds (CLAUDE.md, skills, MCP configs, swarm configs) with measured results.Reads text others writeNo findings

    Why it is in this group

    • The name "builds_list" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe description's first sentence says "browse": it reads web pages, which anyone can write.
    Description, as the server wrote it
    Browse shared agent builds (CLAUDE.md, skills, MCP configs, swarm configs) with measured results. Not live yet: returns live:false until it ships.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • compare_cratesCompare 2 to 10 Rust crates side by side on real downloads, release inflation, growth, releases and dependents, with a plain-English verdict.No findings

    Why it is in this group

    • The name "compare_crates" says "compare": a word for reading.
    Description, as the server wrote it
    Compare 2 to 10 Rust crates side by side on real downloads, release inflation, growth, releases and dependents, with a plain-English verdict.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • get_crateOne Rust crate from our tracked top crates: real downloads a day (quiet-day median, release-day bot spikes excluded), share of downloads in release windows, quiet-day trend, releas…No findings

    Why it is in this group

    • The name "get_crate" says "get": a word for reading.
    Description, as the server wrote it
    One Rust crate from our tracked top crates: real downloads a day (quiet-day median, release-day bot spikes excluded), share of downloads in release windows, quiet-day trend, releases, latest version, reverse dependencies and daily numbers.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • get_manual_pageA Tensorust Manual explainer or guide (or an article): the short answer, key facts with their sources, FAQ, steps for guides, and the source list.No findings

    Why it is in this group

    • The name "get_manual_page" says "get": a word for reading.
    Description, as the server wrote it
    A Tensorust Manual explainer or guide (or an article): the short answer, key facts with their sources, FAQ, steps for guides, and the source list. Accepts a slug or a tensorust.com URL. Use search_site to find slugs.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • get_model_priceEvery price tier for one LLM API model (OpenAI, Anthropic, Google, DeepSeek): input, output, cache, batch, long-context, scheduled changes, price history, cost of 6 standard worklo…Reads text others writeNo findings

    Why it is in this group

    • The name "get_model_price" says "get": a word for reading.

    What it can reach

    • untrusted-inputThe description's first sentence says "url": it reads web pages, which anyone can write.
    Description, as the server wrote it
    Every price tier for one LLM API model (OpenAI, Anthropic, Google, DeepSeek): input, output, cache, batch, long-context, scheduled changes, price history, cost of 6 standard workloads, source URL and check date. Give token counts to price your own request.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • list_reportsRecurring data reports (LLM API Price Index, App Store review times): each issue with its short answer, CSV and chart links.Reads text others writeNo findings

    Why it is in this group

    • The name "list_reports" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe description's first sentence says "review": it reads comments, which other people can write.
    Description, as the server wrote it
    Recurring data reports (LLM API Price Index, App Store review times): each issue with its short answer, CSV and chart links.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • list_toolsEvery free tool on tensorust.com with its page URL, and which ones run_tool can run.Reads text others writeNo findings

    Why it is in this group

    • The name "list_tools" says "list": a word for reading.

    What it can reach

    • untrusted-inputThe description's first sentence says "url": it reads web pages, which anyone can write.
    Description, as the server wrote it
    Every free tool on tensorust.com with its page URL, and which ones run_tool can run.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • search_siteSearch everything Tensorust publishes: Rust crates, LLM models, Manual explainers and guides, articles, reports, free tools and money pages.No findings

    Why it is in this group

    • The name "search_site" says "search": a word for reading.
    Description, as the server wrote it
    Search everything Tensorust publishes: Rust crates, LLM models, Manual explainers and guides, articles, reports, free tools and money pages. Returns titles, URLs, one-line summaries and the API link for each hit.

    Annotations the server declares

    • readOnlyHint: 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.

Exfil surface

Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.

No private-data, untrusted-input, outbound path in this server alone: no tool is tagged private-data.

Reads private data0
Reads files, mail, messages, databases, secrets, calendars or repositories.
Reads text others write5
Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
Can send data out2
Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.

Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.

Findings

Matches of fixed checks, with the text they matched.

2 warn
  • The server marks "run_tool" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "run_tool" says "run": a word for a change.

    What this check looks for
  • The server marks "floor_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "floor_posts" says "post": a word for a change.

    What this check looks for

History

Changes to its tool definitions and to its remote endpoint, newest first.

No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.

Install

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

claude mcp add --transport http tensorust https://mcp.tensorust.com/mcp
claude mcp add --transport http tensorust https://mcp.tensorust.com/mcp

Run in a terminal.

Claude Code permissions

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

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__tensorust__search_site",
      "mcp__tensorust__get_crate",
      "mcp__tensorust__compare_crates",
      "mcp__tensorust__get_model_price",
      "mcp__tensorust__get_manual_page",
      "mcp__tensorust__list_reports",
      "mcp__tensorust__list_tools",
      "mcp__tensorust__builds_list"
    ],
    "ask": [
      "mcp__tensorust__pick_model_for_job",
      "mcp__tensorust__money_size",
      "mcp__tensorust__run_tool",
      "mcp__tensorust__floor_posts",
      "mcp__tensorust__floor_post"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as tensorust. Review it before you use it.

Capability tags behind 6 rules
  • mcp__tensorust__get_model_price untrusted-input
  • mcp__tensorust__list_reports untrusted-input
  • mcp__tensorust__list_tools untrusted-input
  • mcp__tensorust__floor_posts outbound
  • mcp__tensorust__floor_post untrusted-input, outbound
  • mcp__tensorust__builds_list untrusted-input

Pin

Keep the decision: fail CI when the tools change, follow every change, or show a badge.

Pin in CI

Fail a build when the tools you reviewed are not the tools the server serves today.

curl -s "https://anlyon.dev/api/v1/servers/com.tensorust/mcp/verify?hash=c34c5d7f7bd176ff73124a8d4f392541676378420e65fd813474dc4124dbf55c" | jq -e '.changed == false'

Pinned hash c34c5d7f7bd1, from Oct 24, 2026, 04:17 UTC.

Watch

Get told when its tools change: a new tool, a new description, a new class.

https://anlyon.dev/servers/com.tensorust/mcp/changes.xml

An Atom feed. Works in any feed reader or Slack's RSS app.

Badge

anlyon.dev badge for com.tensorust/mcp
[![anlyon.dev](https://anlyon.dev/badge/com.tensorust/mcp.svg)](https://anlyon.dev/servers/com.tensorust/mcp)

Source: MCP Registry. Synced Oct 24, 2026, 04:17 UTC.