io.github.Filip-Pajalic/tensorcad
NPM · @TENSOR-CAD/MCP · SCANNED SEP 29
Design transformer LLM architectures and report their parameters, FLOPs, memory and cost
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security100
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 0 of 5 dependencies flagged as unhealthy. View diagnostics → Pass
Provenance & Transparency97
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to Filip-Pajalic/TensorCAD). View diagnostics → Pass
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 2 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability87
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 5641 tokens (~74/item across 76 items; 19 tools + 57 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management20
- Stability observed for 6 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage97
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 89% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 19 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 21 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
How do I install the io.github.Filip-Pajalic/tensorcad MCP server?
io.github.Filip-Pajalic/tensorcad runs locally as an npm package, launched with npx -y @tensor-cad/mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · @tensor-cad/mcp
claude mcp add filip-pajalic-tensorcad -- npx -y @tensor-cad/mcp
{
"mcpServers": {
"filip-pajalic-tensorcad": {
"command": "npx",
"args": [
"-y",
"@tensor-cad/mcp"
]
}
}
} {
"servers": {
"filip-pajalic-tensorcad": {
"command": "npx",
"args": [
"-y",
"@tensor-cad/mcp"
]
}
}
} codex mcp add filip-pajalic-tensorcad -- npx -y @tensor-cad/mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"filip-pajalic-tensorcad": {
"type": "local",
"command": [
"npx",
"-y",
"@tensor-cad/mcp"
],
"enabled": true
}
}
} openclaw mcp add filip-pajalic-tensorcad --command npx --arg -y --arg @tensor-cad/mcp
mcp_servers:
filip-pajalic-tensorcad:
command: "npx"
args: ["-y", "@tensor-cad/mcp"] {
"McpServers": {
"filip-pajalic-tensorcad": {
"Transport": "stdio",
"Command": "npx",
"Arguments": [
"-y",
"@tensor-cad/mcp"
]
}
}
} assistant mcp add filip-pajalic-tensorcad -t stdio -c npx -a -y @tensor-cad/mcp
{
"mcpServers": {
"filip-pajalic-tensorcad": {
"command": "npx",
"args": [
"-y",
"@tensor-cad/mcp"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 29 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 28 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 27 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.
- 26 Sept 26 0
- Known CVEs: pass → unverified ▼ security
- Dependency health: 1.00 → unverified ▼ functional
- Package version: 0.1.18 → 0.1.21 functional
- Package version: 0.1.18 → 0.1.20 functional
- Package version: 0.1.18 → 0.1.19 functional
- 25 Sept 26 +27
- Stability: 0.03 → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- Known CVEs: unverified → pass ▲ security
- Malware scan: unverified → pass ▲ security
- Schema quality: 4746 → 5641 ▼ functional
- Schema quality: 4746 → 5426 ▼ functional
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Schema quality: 100 → unverified ▼ functional
- Dependency health: unverified → 1.00 ▲ functional
- Package version: 0.1.13 → 0.1.18 functional
- Package version: 0.1.13 → 0.1.17 functional
- Package version: 0.1.13 → 0.1.16 functional
- Package version: 0.1.13 → 0.1.15 functional
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 24 Sept 26 −11
- Known CVEs: pass → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- Malware scan: unverified → pass ▲ security
- Stability: Stability not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. security
- Capabilities: pass → unverified ▼ functional
- Dependency health: 1.00 → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Schema quality: 100 → unverified ▼ functional
- Stability: unverified → 0.03 ▲ functional
- Package version: 0.1.8 → 0.1.13 functional
- Package version: 0.1.8 → 0.1.12 functional
- Package version: 0.1.8 → 0.1.11 functional
- Package version: 0.1.8 → 0.1.10 functional
- Package version: 0.1.8 → 0.1.9 functional
- 23 Sept 26 68
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 29 Sept 2026 · Analysed npm/@tensor-cad/mcp@0.1.21
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | npm |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | Filip-Pajalic/TensorCAD |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/Filip-Pajalic/TensorCAD/.github/workflows/release.yml@refs/tags/v0.1.21 |
| Rekor log index | 2968738625 |
| Predicate type | SLSA build provenance https://slsa.dev/provenance/v1 |
| Subject digest | sha512:0855d058084ab1d1863a9a338b5eb885ab610ebddb95dc152c642c477c26d3a190c3a81822a8edfa155a76a6536b9eaedfbee8109c786741fcdeb4b83 |
Background: How many MCP packages publish verified provenance →
Dependencies 5 packages
| Packages resolved | 5 |
|---|---|
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
tensorcad_analyze Analyze design ~372
Parameters, FLOPs per token, KV cache, training and serving memory, decode throughput, training cost and Chinchilla position, for a given sequence length, batch, dtype, device, GPU count and parallel plan.
| Name | Type | Req | Description |
|---|---|---|---|
| B | integer | – | Micro-batch size. |
| S | integer | – | Source length, for an encoder-decoder: the second sequence its encoder runs along. Defaults to the document's own S; ignored by a design that declares none. |
| T | integer | – | Sequence length. Defaults to the document's own T. |
| concurrency | integer | – | Concurrent sequences when serving. |
| design_id | string | yes | Handle returned by tensorcad_new_design or tensorcad_open_design, e.g. "dsn_1". |
| dp | integer | – | Data parallel degree. |
| dtype | string | – | Training dtype. Default bf16. |
| ep | integer | – | Expert parallel degree. |
| gpus | integer | – | – |
| hardware | string | – | Hardware id: h100-sxm, h200-sxm, b200, a100-80, rtx5080 or rtx4090. Default h100-sxm. |
| mfu | number | – | Model FLOPs utilization, 0..1. |
| optimizer | string | – | – |
| packing | object | – | Training rows packed with documents, for a design whose mask keeps them apart (doc(b, q) == doc(b, kv)). Moves the training figures and the cost, not serving. |
| pp | integer | – | Pipeline parallel degree. |
| recompute | string | – | – |
| tokens | number | – | Training token budget. Defaults to Chinchilla-optimal. |
| tp | integer | – | Tensor parallel degree. |
| zero | integer | – | ZeRO/FSDP sharding stage. |
| Name | Type | Req | Description |
|---|---|---|---|
| chinchilla | object | yes | – |
| cost | object | yes | – |
| design_id | string | yes | – |
| errors | array | yes | – |
| flops | object | yes | – |
| kv | object | yes | – |
| memory | object | yes | – |
| name | string | yes | – |
| options | object | yes | – |
| params | object | yes | – |
| revision | integer | yes | – |
| throughput | object | yes | – |
No examples provided.
tensorcad_apply_ops Apply edits ~135
Apply a batch of edits to a design. The batch is all-or-nothing: the first rejected operation aborts it and the design is left untouched. Pass expected_revision to be told about a concurrent edit instead of silently overwriting it. Returns the new revision, what changed, and a fresh validation summary.
| Name | Type | Req | Description |
|---|---|---|---|
| design_id | string | yes | Handle returned by tensorcad_new_design or tensorcad_open_design, e.g. "dsn_1". |
| expected_revision | integer | – | Revision you last read. The call is rejected if the design has moved on. |
| ops | array | yes | Edits applied in order. |
| Name | Type | Req | Description |
|---|---|---|---|
| applied | array | yes | One line per operation, in order. |
| design_id | string | yes | – |
| name | string | yes | – |
| params_active | number | yes | – |
| params_delta | number | yes | Change in total parameters caused by this batch. |
| params_total | number | yes | – |
| previous_revision | integer | yes | – |
| revision | integer | yes | – |
| validation | object | yes | – |
No examples provided.
tensorcad_checkpoint Checkpoint design ~85
Snapshot a design under a name you can come back to. Take one before an experiment so tensorcad_restore can put it back exactly.
| Name | Type | Req | Description |
|---|---|---|---|
| design_id | string | yes | Handle returned by tensorcad_new_design or tensorcad_open_design, e.g. "dsn_1". |
| label | string | – | What this snapshot is, e.g. "before widening the FFN". |
| Name | Type | Req | Description |
|---|---|---|---|
| checkpoint_id | string | yes | – |
| checkpoints | array | yes | – |
| created_at | string | yes | – |
| design_id | string | yes | – |
| label | string | yes | – |
| revision | integer | yes | – |
No examples provided.
tensorcad_diff Compare two designs ~389
What changed between two designs and what it cost: the symbols, blocks and wires that moved, then the parameters, FLOPs, cache and memory. Both sides are measured at one operating point, so the attention terms are comparable. Use it after an edit, or against a preset, to check the change did what was meant.
| Name | Type | Req | Description |
|---|---|---|---|
| B | integer | – | Micro-batch size. |
| S | integer | – | Source length, for an encoder-decoder: the second sequence its encoder runs along. Defaults to the document's own S; ignored by a design that declares none. |
| T | integer | – | Sequence length. Defaults to the document's own T. |
| a | string | yes | The design to compare from. |
| b | string | yes | The design to compare to. |
| concurrency | integer | – | Concurrent sequences when serving. |
| dp | integer | – | Data parallel degree. |
| dtype | string | – | Training dtype. Default bf16. |
| ep | integer | – | Expert parallel degree. |
| gpus | integer | – | – |
| hardware | string | – | Hardware id: h100-sxm, h200-sxm, b200, a100-80, rtx5080 or rtx4090. Default h100-sxm. |
| mfu | number | – | Model FLOPs utilization, 0..1. |
| optimizer | string | – | – |
| packing | object | – | Training rows packed with documents, for a design whose mask keeps them apart (doc(b, q) == doc(b, kv)). Moves the training figures and the cost, not serving. |
| pp | integer | – | Pipeline parallel degree. |
| recompute | string | – | – |
| tokens | number | – | Training token budget. Defaults to Chinchilla-optimal. |
| tp | integer | – | Tensor parallel degree. |
| zero | integer | – | ZeRO/FSDP sharding stage. |
| Name | Type | Req | Description |
|---|---|---|---|
| a | string | yes | – |
| at | object | yes | – |
| b | string | yes | – |
| blocks | object | yes | – |
| edges | object | yes | – |
| identical | boolean | yes | True when nothing structural moved; the numbers may still differ. |
| metrics | array | yes | – |
| symbols | object | yes | – |
No examples provided.
tensorcad_explain Explain a block ~405
What one block is and what it contributes: its parameters as written and as evaluated, the shape on every port, its share of the model's weights and compute, and its documentation. Use it to answer "why is this block this size" without reading the whole design.
| Name | Type | Req | Description |
|---|---|---|---|
| B | integer | – | Micro-batch size. |
| S | integer | – | Source length, for an encoder-decoder: the second sequence its encoder runs along. Defaults to the document's own S; ignored by a design that declares none. |
| T | integer | – | Sequence length. Defaults to the document's own T. |
| concurrency | integer | – | Concurrent sequences when serving. |
| design_id | string | yes | Handle returned by tensorcad_new_design or tensorcad_open_design, e.g. "dsn_1". |
| dp | integer | – | Data parallel degree. |
| dtype | string | – | Training dtype. Default bf16. |
| ep | integer | – | Expert parallel degree. |
| gpus | integer | – | – |
| hardware | string | – | Hardware id: h100-sxm, h200-sxm, b200, a100-80, rtx5080 or rtx4090. Default h100-sxm. |
| mfu | number | – | Model FLOPs utilization, 0..1. |
| optimizer | string | – | – |
| packing | object | – | Training rows packed with documents, for a design whose mask keeps them apart (doc(b, q) == doc(b, kv)). Moves the training figures and the cost, not serving. |
| path | string | yes | Full path of the block, e.g. "layers/block/attn". |
| pp | integer | – | Pipeline parallel degree. |
| recompute | string | – | – |
| tokens | number | – | Training token budget. Defaults to Chinchilla-optimal. |
| tp | integer | – | Tensor parallel degree. |
| zero | integer | – | ZeRO/FSDP sharding stage. |
| Name | Type | Req | Description |
|---|---|---|---|
| copies | object | yes | – |
| design_id | string | yes | – |
| flops_per_token | number | yes | – |
| kind | string | yes | – |
| parameters | array | yes | – |
| params | number | yes | – |
| path | string | yes | – |
| ports | object | yes | – |
| revision | integer | yes | – |
| share_of_flops | number | yes | – |
| share_of_params | number | yes | – |
| summary | string | – | – |
| type | string | yes | – |
No examples provided.
tensorcad_generate_code Generate code ~131
Emit a runnable PyTorch module plus the design document. Without out_dir the file contents come back in the result; with out_dir they are written to disk and only a manifest comes back.
| Name | Type | Req | Description |
|---|---|---|---|
| class_name | string | – | Class name for the top-level module. |
| design_id | string | yes | Handle returned by tensorcad_new_design or tensorcad_open_design, e.g. "dsn_1". |
| include_smoke_test | boolean | – | Emit a __main__ block that checks the size. |
| out_dir | string | – | Directory to write into. Omit to get the contents inline. |
| Name | Type | Req | Description |
|---|---|---|---|
| design_id | string | yes | – |
| files | array | yes | – |
| out_dir | string | – | – |
| revision | integer | yes | – |
| warnings | array | yes | – |
| wrote | boolean | yes | – |
No examples provided.
tensorcad_get_block Get block ~98
One block of a design: its parameters as written and as resolved, the inferred shape on every port, what each port is wired to, and how many trainable parameters it contributes.
| Name | Type | Req | Description |
|---|---|---|---|
| design_id | string | yes | Handle returned by tensorcad_new_design or tensorcad_open_design, e.g. "dsn_1". |
| path | string | yes | Block path from the outline, e.g. "layers/block" or "embed". |
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | yes | – |
| children | array | yes | – |
| design_id | string | yes | – |
| formula | string | – | – |
| id | string | yes | – |
| inputs | array | yes | – |
| instances | number | yes | – |
| kind | string | yes | – |
| label | string | – | – |
| outputs | array | yes | – |
| param_errors | array | yes | – |
| params | object | yes | – |
| params_count | number | yes | – |
| path | string | yes | – |
| resolved_params | object | yes | – |
| revision | integer | yes | – |
| summary | string | yes | – |
| type | string | yes | – |
No examples provided.
tensorcad_get_design Get design ~110
Read a design. Use format "outline" (the default) first: it is the whole structure, symbol table and edge shapes in a fraction of the tokens. Use format "full" only when you need the literal JSON document.
| Name | Type | Req | Description |
|---|---|---|---|
| design_id | string | yes | Handle returned by tensorcad_new_design or tensorcad_open_design, e.g. "dsn_1". |
| format | string | – | "outline" is a compact block/edge summary; "full" is the whole document. |
| Name | Type | Req | Description |
|---|---|---|---|
| design_id | string | yes | – |
| dirty | boolean | yes | – |
| document | object | – | The literal design document. |
| format | string | yes | – |
| name | string | yes | – |
| outline | object | – | – |
| params_active | number | yes | – |
| params_total | number | yes | – |
| path | string | – | – |
| revision | integer | yes | – |
No examples provided.
tensorcad_import_hf Import a Hugging Face config ~106
Read a Hugging Face `config.json` into a design and save it in this session. Covers the Llama, Mistral, Qwen, Gemma, Mixtral, DeepSeek and GPT-2 families. Anything the importer cannot model faithfully comes back as a warning rather than being approximated silently.
| Name | Type | Req | Description |
|---|---|---|---|
| config | string | yes | The contents of config.json. |
| name | string | – | A name for the design; the config's own is used otherwise. |
| Name | Type | Req | Description |
|---|---|---|---|
| design_id | string | yes | – |
| name | string | yes | – |
| params_total | number | yes | – |
| warnings | array | yes | – |
No examples provided.
tensorcad_list_designs List designs ~73
List the designs this server has open, the built-in reference architectures you can start from, and the .tensorcad.json files it can see on disk. Start here when you do not already hold a design_id.
| Name | Type | Req | Description |
|---|---|---|---|
| include_files | boolean | – | Also scan the working directory for .tensorcad.json files. |
| Name | Type | Req | Description |
|---|---|---|---|
| designs | array | yes | – |
| files | array | yes | – |
| presets | array | yes | – |
No examples provided.
tensorcad_mup Build a width ladder ~179
The same design at several widths, with what to multiply the initialization and the learning rate by at each, following Tensor Programs V. Sweep hyperparameters at the narrow end and carry the answer up: a learning rate tuned at the base rung is the right one at every rung, scaled per class. Every rung is saved as a design of its own, ready to analyze or generate. It does not choose a learning rate; that is what the sweep is for.
| Name | Type | Req | Description |
|---|---|---|---|
| base_width | number | – | The width the sweep happens at. Omit for the narrowest. |
| design_id | string | yes | Handle returned by tensorcad_new_design or tensorcad_open_design, e.g. "dsn_1". |
| widths | array | – | The widths to build. Omit to halve the design's own width down to a width worth sweeping at. |
| Name | Type | Req | Description |
|---|---|---|---|
| base_width | number | yes | – |
| head_dim | number | yes | Held fixed while the width moves: the heads get more numerous, not wider. |
| notes | array | yes | – |
| rungs | array | yes | – |
| width_symbol | string | yes | – |
No examples provided.
tensorcad_new_design New design ~261
Create a design from a reference architecture, or an empty one with just the B and T runtime symbols. Returns the design_id every other tool needs.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | – | Name for the new design. Defaults to the preset's name. |
| preset | string | – | One of: nano-sort, gpt2-small, gpt2-medium, gpt2-large, gpt2-xl, nanogpt, bloom-7b1, t5-small, flan-t5-base, llama-2-7b, mistral-7b, llama-3-8b, llama-3-70b, llama-3.1-405b, qwen2.5-7b, qwen3-8b, gem… |
| Name | Type | Req | Description |
|---|---|---|---|
| design_id | string | yes | – |
| name | string | yes | – |
| outline | object | yes | – |
| params_total | number | yes | – |
| revision | integer | yes | – |
| source | string | yes | – |
No examples provided.
tensorcad_open_design Open design ~61
Load a .tensorcad.json document from disk and return a design_id for it. Opening the same path twice returns the same handle.
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | yes | Path to a .tensorcad.json file, absolute or relative to the server's directory. |
| Name | Type | Req | Description |
|---|---|---|---|
| design_id | string | yes | – |
| name | string | yes | – |
| params_total | number | yes | – |
| path | string | yes | – |
| revision | integer | yes | – |
| validation | object | yes | – |
No examples provided.
tensorcad_plan Plan a cluster ~461
Every way of splitting the training across a cluster that fits, least demanding first. Prices data, tensor, pipeline and expert parallelism, the four ZeRO stages, sequence parallelism and the three recompute settings. Memory is the claim and it is arithmetic; which plan is fastest is not claimed, so each one carries a note about what it costs to run.
| Name | Type | Req | Description |
|---|---|---|---|
| B | integer | – | Micro-batch size. |
| S | integer | – | Source length, for an encoder-decoder: the second sequence its encoder runs along. Defaults to the document's own S; ignored by a design that declares none. |
| T | integer | – | Sequence length. Defaults to the document's own T. |
| concurrency | integer | – | Concurrent sequences when serving. |
| design_id | string | yes | Handle returned by tensorcad_new_design or tensorcad_open_design, e.g. "dsn_1". |
| dp | integer | – | Data parallel degree. |
| dtype | string | – | Training dtype. Default bf16. |
| ep | integer | – | Expert parallel degree. |
| gpus | integer | yes | How many devices there are. |
| gpus_per_node | integer | – | Bounds the tensor-parallel degree. Default 8. |
| hardware | string | – | Hardware id: h100-sxm, h200-sxm, b200, a100-80, rtx5080 or rtx4090. Default h100-sxm. |
| headroom | number | – | Fraction of device memory left free. Default 0.1. |
| limit | integer | – | How many plans to return. Default 8. |
| mfu | number | – | Model FLOPs utilization, 0..1. |
| optimizer | string | – | – |
| packing | object | – | Training rows packed with documents, for a design whose mask keeps them apart (doc(b, q) == doc(b, kv)). Moves the training figures and the cost, not serving. |
| pp | integer | – | Pipeline parallel degree. |
| recompute | string | – | – |
| tokens | number | – | Training token budget. Defaults to Chinchilla-optimal. |
| tp | integer | – | Tensor parallel degree. |
| zero | integer | – | ZeRO/FSDP sharding stage. |
| Name | Type | Req | Description |
|---|---|---|---|
| budget_bytes | number | yes | – |
| closest | object | – | – |
| considered | integer | yes | – |
| design_id | string | yes | – |
| fits | array | yes | – |
| hardware | string | yes | – |
| notes | array | yes | – |
| revision | integer | yes | – |
No examples provided.
tensorcad_restore Restore design ~97
Put a design back. With a checkpoint_id it restores that snapshot; without one it undoes the most recent tensorcad_apply_ops batch. Either way the revision moves forward, so a stale expected_revision still fails.
| Name | Type | Req | Description |
|---|---|---|---|
| checkpoint_id | string | – | Omit to undo the last batch of edits. |
| design_id | string | yes | Handle returned by tensorcad_new_design or tensorcad_open_design, e.g. "dsn_1". |
| Name | Type | Req | Description |
|---|---|---|---|
| design_id | string | yes | – |
| name | string | yes | – |
| params_total | number | yes | – |
| restored_from | string | yes | – |
| revision | integer | yes | – |
| validation | object | yes | – |
No examples provided.
tensorcad_save_design Save design ~82
Write a design to disk as .tensorcad.json. Overwrites the file it was opened from unless a path is given.
| Name | Type | Req | Description |
|---|---|---|---|
| design_id | string | yes | Handle returned by tensorcad_new_design or tensorcad_open_design, e.g. "dsn_1". |
| path | string | – | Where to write. Defaults to the path it was opened from. |
| Name | Type | Req | Description |
|---|---|---|---|
| bytes | integer | yes | – |
| design_id | string | yes | – |
| path | string | yes | – |
| revision | integer | yes | – |
No examples provided.
tensorcad_scale Scale a design ~185
Shrink a design towards a parameter budget while keeping its proportions, and save the result as a new design. Use it to get a bench-sized proxy of a large architecture: the widths and depth move together, the head dimension stays sane, and the result is reported with how close it landed.
| Name | Type | Req | Description |
|---|---|---|---|
| design_id | string | yes | Handle returned by tensorcad_new_design or tensorcad_open_design, e.g. "dsn_1". |
| keep_depth | boolean | – | Hold the layer count fixed and move only the width. |
| target_basis | string | – | Whether target_params counts the embedding tables. At bench sizes "non-embedding" is usually meant. |
| target_params | number | yes | The parameter count to aim for. |
| tie_head | boolean | – | Share the output projection with the embedding. |
| vocab | integer | – | Replace the vocabulary, for a smaller tokenizer. |
| Name | Type | Req | Description |
|---|---|---|---|
| achieved | number | yes | – |
| changes | array | yes | – |
| design_id | string | yes | The new design, saved in this session. |
| from | string | yes | – |
| name | string | yes | – |
| notes | array | yes | – |
| target | number | yes | – |
No examples provided.
tensorcad_search_catalog Search catalog ~97
Search the block catalog. Returns each block's parameter schema, port patterns and documentation, which is what you need before adding a block with tensorcad_apply_ops.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | attention, mlp, norm, embedding, container, io, ... |
| kind | string | – | – |
| limit | integer | – | Default 20. |
| query | string | – | Substring matched against type, category, summary and formula. |
| Name | Type | Req | Description |
|---|---|---|---|
| blocks | array | yes | – |
| categories | array | yes | – |
| total | integer | yes | Matches before the limit was applied. |
No examples provided.
tensorcad_validate Validate design ~386
Run every design rule: shape and symbol errors, kernel-friendly head dimensions, tensor-core multiples, whether training and serving fit the chosen device, Chinchilla sanity and drift from published numbers. Each finding carries a fix hint.
| Name | Type | Req | Description |
|---|---|---|---|
| B | integer | – | Micro-batch size. |
| S | integer | – | Source length, for an encoder-decoder: the second sequence its encoder runs along. Defaults to the document's own S; ignored by a design that declares none. |
| T | integer | – | Sequence length. Defaults to the document's own T. |
| concurrency | integer | – | Concurrent sequences when serving. |
| design_id | string | yes | Handle returned by tensorcad_new_design or tensorcad_open_design, e.g. "dsn_1". |
| dp | integer | – | Data parallel degree. |
| dtype | string | – | Training dtype. Default bf16. |
| ep | integer | – | Expert parallel degree. |
| gpus | integer | – | – |
| hardware | string | – | Hardware id: h100-sxm, h200-sxm, b200, a100-80, rtx5080 or rtx4090. Default h100-sxm. |
| mfu | number | – | Model FLOPs utilization, 0..1. |
| optimizer | string | – | – |
| packing | object | – | Training rows packed with documents, for a design whose mask keeps them apart (doc(b, q) == doc(b, kv)). Moves the training figures and the cost, not serving. |
| pp | integer | – | Pipeline parallel degree. |
| recompute | string | – | – |
| severity | string | – | Only return findings at least this bad. |
| tokens | number | – | Training token budget. Defaults to Chinchilla-optimal. |
| tp | integer | – | Tensor parallel degree. |
| zero | integer | – | ZeRO/FSDP sharding stage. |
| Name | Type | Req | Description |
|---|---|---|---|
| counts | object | yes | – |
| design_id | string | yes | – |
| findings | array | yes | – |
| name | string | yes | – |
| ok | boolean | yes | – |
| params_total | number | yes | – |
| revision | integer | yes | – |
No examples provided.
What is the io.github.Filip-Pajalic/tensorcad MCP server?
io.github.Filip-Pajalic/tensorcad is an MCP server listed in the public MCP registry as io.github.Filip-Pajalic/tensorcad. Design transformer LLM architectures and report their parameters, FLOPs, memory and cost. This page covers its npm package (@tensor-cad/mcp).
Is the io.github.Filip-Pajalic/tensorcad MCP server safe to use?
io.github.Filip-Pajalic/tensorcad scores 86 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 29 September 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. 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 io.github.Filip-Pajalic/tensorcad MCP server expose?
io.github.Filip-Pajalic/tensorcad exposes 19 tools: tensorcad_list_designs, tensorcad_new_design, tensorcad_open_design, tensorcad_save_design, tensorcad_get_design, and 14 more. Their descriptions and schemas cost roughly 3,713 tokens of context every time the server is loaded.
Is the io.github.Filip-Pajalic/tensorcad MCP server still maintained?
io.github.Filip-Pajalic/tensorcad is still listed as active in the MCP registry. We last reached this channel on 29 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the io.github.Filip-Pajalic/tensorcad MCP server under?
io.github.Filip-Pajalic/tensorcad declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.