mcp-server@0.45.134
CAUTION· not startedPublisher claims: "Typeroll CMS MCP server – connect AI agents to the REST API to manage content and publish static websites." Observed in sandbox: no network, touches nothing outside the project, writes no memory.
Coverage
Not started: dependency install failed; the server itself was not observed.- Tested
- the dependency install step · every file read, file written and host contacted by what ran
- Not tested
- server startup · the tool list · tool behavior
What this means for the label: Caution here covers what ran. The server's tools were not exercised with a real credential, so nothing about their behavior is asserted; the credential summary below says what to do with that.
Before you give it your token
- It will ask for
TYPEROLL_API_KEYConfiguration, not credentials: TYPEROLL_API_URL, TYPEROLL_MCP_TOOL_MODE, TYPEROLL_SITE_ID- Where it talks to
- typeroll.com (its own)Also portal.invalid, typekit.net, bunny.net, fontshare.com, oldsite.com, oldsite.example — not the publisher's domain; check what for before connecting.
- What the honeypot saw
- no credential files read · no network
- What we could not test
- server startup · the tool list · tool behavior
Connect it with a scoped credential, under the guard, and read the third-party hosts first. The code names portal.invalid, typekit.net, bunny.net, fontshare.com, oldsite.com, oldsite.example as well as its own vendor. The guard injects TYPEROLL_API_KEY only into requests to typeroll.com (and its subdomains) and refuses the rest.
Never paste a credential into a chat, a ticket or a report, including ours. How the guard holds it.
Is [email protected] safe to install?
KillerSkills ran it in the KillerSkills honeypot sandbox (2 scenarios; not started: dependency install failed; the server itself was not observed) on 2026-11-11 and scored it 69/100 (Caution). It is not known to be malicious, but it has behaviour or code a security policy should decide on before install. Notable findings: Access to sensitive file paths; Access to sensitive file paths; Access to sensitive file paths. Summary: no network, touches nothing outside the project, writes no memory.
Behavior trace
Honeypot run · 6 s · 2 scenarios · 0 deviationsStatic findings
├── .env # provider keys — GITIGNORED, never committedFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.live in the folder's `.env`, candidates land in `images/lab/`, and onlyFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.Load them per-command (`source .env` doesn't persist between Bash calls):Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.| Only with the owner's approval, in `cookie_consent.scripts_optional` with the banner enabled. Never in `scripts_head`, `scripts_body_end`, `scripts_necessary`Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.…nstructions, 'README.md': `# Website workspace\n\nKeep project intent here; edit the website through Typeroll CMS.\n\n1. Read AGENTS.md. For guidance, ask your agent to start or resume workflows/interview.md. Otherw…Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.| Never copy. Rebuild what it did with native blocks, Forms or settings, or report a platform gap (see "Report platform gaps"). |Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.console.error('Usage: npx @typeroll/mcp-server install-skills <destination> [--force]');Fix: Pin versions and sources; vendor anything fetched at install time.export $(grep -v '^#' .env | xargs) # prepend to each generation commandFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.name: 'set_organization_build_auto_update', noSite: true,Fix: Pin versions and sources; vendor anything fetched at install time.npx @typeroll/[email protected] init ./my-site --recipesFix: Pin versions and sources; vendor anything fetched at install time.… its IDs and working version in typeroll.json. No secrets belong there.\n5. Run npx @typeroll/mcp-server doctor . (inject TYPEROLL_API_KEY privately).\n\nStart guide: https://typeroll.…Fix: Pin versions and sources; vendor anything fetched at install time.…orking version in typeroll.json. No secrets belong there.\n5. Run npx @typeroll/mcp-server doctor . (inject TYPEROLL_API_KEY privately).\n\nStart guide: https://typeroll.com/docs/getting-started/agent-workspace/\n\nUpdate the generated s…Fix: Namespace tool names and keep tool descriptions literal; no instructions to the agent inside them.…h('sha256').update(value).digest('hex'); export const ignores = ['.typeroll/', '.env', '.env.*', '!.env.example', '.mcp.json', '.cursor/mcp.json', '.vscode/mcp.json…Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.npx @typeroll/[email protected] init ./my-site --recipes --updateFix: Pin versions and sources; vendor anything fetched at install time.`.env` keys (only the ones the user has — check before assuming):Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.…I crawler preference, written as Cloudflare-compatible Content Signals in robots.txt and the Content-Signal response header. `allow_all` (default, writes nothing); `no_training` (search=yes, ai-input=yes, ai-train=no, and Disallow groups f…Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.…es no build capacity, and does not block other sites from publishing. selection.auto_update says whether outdated engines are updated by the next publication (set_organization_build_auto_update); an engine with update_available runs older …Fix: Pin versions and sources; vendor anything fetched at install time.| Never copy. Enable the site's cookie banner (`cookie_consent.enabled: true`) with Swedish or local text and the privacy policy URL. |Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.…y gets populated outside the in-portal WordPress migration: walk the old sitemap.xml, a GSC export, or a crawl, and post what you found. Idempotent — re-posting a known URL merges its `source` label instead of duplicating. Pass `source_o…Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.Cost to the agent
Tokens estimated at four characters each. The tool list is re-read by the agent on every turn, so it is the number to compare between servers that do the same job: ranked across the index.
Known vulnerabilities
No advisories in OSV for @typeroll/mcp-server@0.45.134 as of 3d ago. This is the package itself, not its dependencies.
What would make this Verified
11 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%- Unclaimed publisher≈ +8 on the totalClaim typeroll: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
- Hidden instructions≈ +6 on the totalRemove HTML comments, zero-width characters and white-on-white text that carry instructions. Everything the agent is meant to read should be visible to the person reading the file.
- Access to sensitive file paths≈ +4 on the totalStop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
- Auto-update or dynamic fetch configuration≈ +4 on the totalPin versions and sources; vendor anything fetched at install time.
- npx invocation of non-well-known package≈ +2 on the totalPin versions and sources; vendor anything fetched at install time.
- MCP server using network transport (SSE/HTTP)≈ +2 on the totalNamespace tool names and keep tool descriptions literal; no instructions to the agent inside them.