toolfactory

MCPattested
v0.3.1io.github.GoatInAHatMITUpdated 3d agonpmGitHub

Build an agent tool once; ship it as Agent Skills, MCP servers, Agent Plugins / Claude / Codex / Cursor bundles, OpenClaw and Hermes plugins, CLIs, and packages, with the tests and releases to match.

Works in
ClaudeCursorCopilotGemini

Inferred from the transports this listing declares (stdio). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.

Attested build
A verified provenance attestation binds this artifact to the listed repository. Nobody has claimed the listing yet — this proves where the code was built, not who stands behind it.
271Downloads/wk
3d agoLast update
Package
Authorio.github.GoatInAHat
LicenseMIT
Version0.3.1
Sourcenpm+mcp-registry
Trust Status
A
85/100Trusted
Listed in Forge index+10/10
Identity verified · attested build+20/20
Ed25519 publish signature+0/5
Included automatically when the publisher runs `forge publish`
Domain verification+0/5
Publisher: host /.well-known/forge.json on the package homepage with { "publisher": "<github-login>" }
npm Trusted Publishing (Sigstore)+5/5
npm maintainer match+0/5
Publisher: add the verified GitHub login to the npm package's maintainers (npm owner add <login>)
CVE scan · clean+30/30
Static analysis · clean+20/20
Paste into Claude Code, Cursor, or any AI assistant to fix all gaps
StatusIdentity verified
PublisherUnverified
SignatureUnsigned
Domain
Provenance✓ Sigstore-verified · c1d4f9a
Dependencies✓ 24 resolved · none vulnerable
Tool surface28 tools · none privileged
Security scan✓ Cleanv0.3.1 · 2d agoHow well does this scan work?
EvalsNone
IndexedSep 8, 2026

Verification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.

Tools

28 tools · none privileged
Statically extracted from the published packagev0.3.1 · 2d ago

Read out of the source npm actually ships, at scan time. The package was never executed. Tools registered dynamically at runtime, or hidden inside bundled or minified code, can be missed — so this is a floor on the tool surface, not a complete census of it.

echokey

key

No input schema was published for this tool.

scrapeNo description published

This tool published no description. Forge does not invent one.

summarizeNo description published

This tool published no description. Forge does not invent one.

loginNo description published

This tool published no description. Forge does not invent one.

screenshotCapture the current page.

Capture the current page.

No input schema was published for this tool.

notifyPost a message into the live conversation.

Post a message into the live conversation.

No input schema was published for this tool.

browseService region.

Service region.

No input schema was published for this tool.

regionService region.

Service region.

No input schema was published for this tool.

shootSay hello

Say hello

No input schema was published for this tool.

webOpen the generated operations page.

Open the generated operations page.

No input schema was published for this tool.

adoptStop regenerating one file; it becomes the author's (recorded as manual in the lock).

Stop regenerating one file; it becomes the author's (recorded as manual in the lock).

No input schema was published for this tool.

bootstrap-repoPrepare the GitHub repository from the local .env: the `live-tests` environment with its required reviewers and the sensitive config keys inside it, the release registries' tokens at repository scope, GitHub Pages with source = Actions, and npm's trusted publisher. Values go to `gh` on stdin and ar…

Prepare the GitHub repository from the local .env: the `live-tests` environment with its required reviewers and the sensitive config keys inside it, the release registries' tokens at repository scope, GitHub Pages with source = Actions, and npm's trusted publisher. Values go to `gh` on stdin and ar…

No input schema was published for this tool.

buildGenerate every selected surface in-tree from the identity file and the operation snapshot, and refresh the lock.

Generate every selected surface in-tree from the identity file and the operation snapshot, and refresh the lock.

No input schema was published for this tool.

checkFail if the operation snapshot or any generated file drifted from the code (the CI drift gate).

Fail if the operation snapshot or any generated file drifted from the code (the CI drift gate).

No input schema was published for this tool.

coverageThe operation × surface verdict matrix: native, bridged, degraded, or excluded, with reasons.

The operation × surface verdict matrix: native, bridged, degraded, or excluded, with reasons.

No input schema was published for this tool.

doctorReport which upstream CLIs this machine can delegate to (git, gh, npm, uv, claude, openclaw, clawhub, hermes, uvx, agentskills, MCP Inspector, docker).

Report which upstream CLIs this machine can delegate to (git, gh, npm, uv, claude, openclaw, clawhub, hermes, uvx, agentskills, MCP Inspector, docker).

No input schema was published for this tool.

ejectAdopt every file a surface owns, so the author takes it over entirely.

Adopt every file a surface owns, so the author takes it over entirely.

No input schema was published for this tool.

gateRun the gate here, in order: build, the drift check, every selected surface's upstream validator, the author's checks and tests, and the credential-free host end-to-end. The same step list the generated ci.yml renders, so a project with no CI has the identical gate.

Run the gate here, in order: build, the drift check, every selected surface's upstream validator, the author's checks and tests, and the credential-free host end-to-end. The same step list the generated ci.yml renders, so a project with no CI has the identical gate.

No input schema was published for this tool.

initCreate a new tool: dev.toolfactory/tool.json, the authored identity file, the kernel scaffold for the chosen language, and the first build of every selected surface.

Create a new tool: dev.toolfactory/tool.json, the authored identity file, the kernel scaffold for the chosen language, and the first build of every selected surface.

No input schema was published for this tool.

introspectSpawn the kernel MCP server, list its tools, and snapshot them to dev.toolfactory/ops.json.

Spawn the kernel MCP server, list its tools, and snapshot them to dev.toolfactory/ops.json.

No input schema was published for this tool.

packageBuild every release asset into dist/release/ — npm tarball, Python distributions, OpenClaw plugin tarball, plugin bundle zip, web build, coverage — by the same steps the release workflow's package job runs. Publishing stays a CI concern.

Build every release asset into dist/release/ — npm tarball, Python distributions, OpenClaw plugin tarball, plugin bundle zip, web build, coverage — by the same steps the release workflow's package job runs. Publishing stays a CI concern.

No input schema was published for this tool.

review-promptEvaluate a prompt draft against the codex-prompt-standard rubric: anatomy sections, convention checks, and concrete directives. Draft, run this, fix what it flags, and re-run until it passes.

Evaluate a prompt draft against the codex-prompt-standard rubric: anatomy sections, convention checks, and concrete directives. Draft, run this, fix what it flags, and re-run until it passes.

No input schema was published for this tool.

secrets-usageEvery credential this project's surfaces need — the tool's own sensitive config keys and the release registries' tokens — with where each one is set, whether it is present locally and on GitHub, and (check) whether the registry accepts it. Never a value.

Every credential this project's surfaces need — the tool's own sensitive config keys and the release registries' tokens — with where each one is set, whether it is present locally and on GitHub, and (check) whether the registry accepts it. Never a value.

No input schema was published for this tool.

unadoptReturn an adopted file to toolfactory and regenerate it.

Return an adopted file to toolfactory and regenerate it.

No input schema was published for this tool.

unpublishRetract what a deselected surface used to publish. Git is the ledger: the previous tag's dev.toolfactory/tool.json says what was selected then, and every registry row that lost its surface is checked for the version that tag published and then retracted with the registry's own CLI — or reported wit…

Retract what a deselected surface used to publish. Git is the ledger: the previous tag's dev.toolfactory/tool.json says what was selected then, and every registry row that lost its surface is checked for the version that tag published and then retracted with the registry's own CLI — or reported wit…

No input schema was published for this tool.

validateRun each selected surface's own upstream validator (agentskills, claude plugin validate, MCP Inspector, openclaw, hermes, npm pack, uv build).

Run each selected surface's own upstream validator (agentskills, claude plugin validate, MCP Inspector, openclaw, hermes, npm pack, uv build).

No input schema was published for this tool.

helloSay hello

Say hello

No input schema was published for this tool.

nativeNo description published

This tool published no description. Forge does not invent one.

24 of 28 tools published a description.

Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.

About

Build an agent tool once; ship it as Agent Skills, MCP servers, Agent Plugins / Claude / Codex / Cursor bundles, OpenClaw and Hermes plugins, CLIs, and packages, with the tests and releases to match.

Keywords
agentmcpskillsagent-pluginsopenclawhermesclaude-codecodexcursor
Alternatives
Comparing tool surfaces…

Dependency tree

What one Forge scan resolved from npm metadata on 2026-09-17 — observed resolution, not a publisher declaration.

24 packages resolved · 8 direct · none carrying advisories Resolution stops at depth 4 and 60 packages.

Not followed: peerDependencies. This tree covers runtime dependencies only, so anything those pull in was never resolved.