Public signing helpers for BittensorMCP self-custody write operations.
| Package | Registry | Language |
|---|---|---|
@bittensormcp/sign |
npm | TypeScript / JavaScript |
Python needs no package — the two-step signing is a few lines over plain HTTP with only
substrate-interface for the keypair. See the self-contained snippets in
llms.txt.
BittensorMCP lets AI agents stake, unstake, and transfer TAO on your behalf — but in self-custody mode your private key never touches the server.
These packages implement the A2 two-step signing protocol:
- The AI agent calls a write tool → server returns an
UNSIGNED_PAYLOAD+intent_id - This SDK signs the payload locally with your sr25519 key
- The signature is sent back → server submits the extrinsic to chain
Your private key is never passed to these packages either — you provide a signer callback that wraps your own keypair.
- One runtime dependency (
@polkadot/util-crypto, only for local wallet generation) - No postinstall scripts
- No code paths that receive a seed, mnemonic, or private key
- Published with npm provenance attestation
# tag as npm/vX.Y.Z → workflow publishes @bittensormcp/sign@X.Y.Z
git tag npm/v0.5.0 && git push --tagsGitHub Actions workflow is in .github/workflows/publish-npm.yml.