bsv-mcp 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +40 -0
- package/README.md +75 -98
- package/dist/index.js +684 -1009
- package/package.json +1 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,45 @@
|
|
|
1
1
|
# BSV MCP Server Changelog
|
|
2
2
|
|
|
3
|
+
## [0.6.0] - 2026-09-09
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
|
|
7
|
+
- Consolidate social tools into `bsocial_read` and `bsocial_publish` in both tool
|
|
8
|
+
profiles. Replace `bsocial_readPosts`, `bsocial_createPost`, `bmap_readPosts`,
|
|
9
|
+
`bmap_readLikes`, `bmap_readFollows`, and `bap_friend`; clients must refresh tools.
|
|
10
|
+
- Add canonical social actions, replies, reactions, relationships, messages,
|
|
11
|
+
media, tags, and unsigned previews with one shared schema and signing path.
|
|
12
|
+
- Document action-specific inputs and BMAP backend configuration. Messages are
|
|
13
|
+
public records; publishing does not encrypt them.
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
|
|
17
|
+
- Use social API routes and retain structured indexer records without claiming
|
|
18
|
+
independent signature verification or derived relationship state.
|
|
19
|
+
- Sign legacy social records with an explicit identity key, fund with the payment
|
|
20
|
+
key, estimate unsigned transaction fees, and report broadcast failures.
|
|
21
|
+
|
|
22
|
+
## [0.5.1] - 2026-09-08
|
|
23
|
+
|
|
24
|
+
### Changed
|
|
25
|
+
|
|
26
|
+
- Start local stdio when no transport is specified, with early stdout guards in
|
|
27
|
+
both source and bundled entry points. Explicit `TRANSPORT=http` retains the
|
|
28
|
+
existing HTTP server; the deployed hosted endpoint and OAuth routes are unchanged.
|
|
29
|
+
- Run the Codex plugin through the local npm executable instead of hosted MCP.
|
|
30
|
+
The executable requires Bun; the npx installer also requires Node.js.
|
|
31
|
+
- Direct homepage tool links to a generated reference with 106 full tools and six
|
|
32
|
+
compact families, category navigation, search, individual URLs and Markdown.
|
|
33
|
+
- Generate tool schemas and registration availability across isolated wallet
|
|
34
|
+
configurations, preserving schema variants and conditional payment tools.
|
|
35
|
+
- Separate task examples from the tool reference and document wallet and backend
|
|
36
|
+
settings in tables. Local installation needs no account sign-in.
|
|
37
|
+
|
|
38
|
+
### Fixed
|
|
39
|
+
|
|
40
|
+
- Reject invalid transport values before wallet initialization.
|
|
41
|
+
- Honor reduced-motion preferences while scrolling between homepage sections.
|
|
42
|
+
|
|
3
43
|
## [0.5.0] - 2026-09-08
|
|
4
44
|
|
|
5
45
|
### Added
|
package/README.md
CHANGED
|
@@ -2,109 +2,73 @@
|
|
|
2
2
|
|
|
3
3
|
BSV MCP connects your AI assistant to Bitcoin SV. Ask it to check a transaction, show your balance, send a payment, or create and trade ordinals (content recorded on the blockchain).
|
|
4
4
|
|
|
5
|
-
[Documentation](https://bsvmcp.com/docs) · [
|
|
5
|
+
[Documentation](https://bsvmcp.com/docs) · [All tools](https://bsvmcp.com/docs/tools) · [npm](https://www.npmjs.com/package/bsv-mcp) · [Issues](https://github.com/b-open-io/bsv-mcp/issues)
|
|
6
6
|
|
|
7
|
-
## Install
|
|
7
|
+
## Install
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
Leave Git ref and Sparse paths blank. Select **BSV MCP** in the bOpen marketplace
|
|
11
|
-
and install it. Authenticate through Sigma Identity when prompted, then start a
|
|
12
|
-
new chat and ask: “Run bsv_status and explain which services are available.”
|
|
13
|
-
|
|
14
|
-
The plugin uses hosted MCP, so you do not need Bun or a local wallet. Signing in
|
|
15
|
-
does not authorize spending or connect a wallet on your computer. For wallet
|
|
16
|
-
operations, use the local setup below. If you already have a manual BSV MCP
|
|
17
|
-
connection, choose which connection to use to avoid duplicate tools.
|
|
18
|
-
|
|
19
|
-
## Quick start
|
|
20
|
-
|
|
21
|
-
Install [Bun](https://bun.sh), clone this repository, and build the local
|
|
22
|
-
server. The local wallet registrations below use the source checkout's launcher;
|
|
23
|
-
`scripts/local-mcp-launcher.ts` is not included in the npm package.
|
|
9
|
+
Install [Bun](https://bun.sh) to run the server and Node.js for the `npx` commands below, then add it to your client:
|
|
24
10
|
|
|
25
11
|
```sh
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
bun install
|
|
29
|
-
bun run build
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
For legacy embedded mode, create an encrypted account in a local terminal. The
|
|
33
|
-
source-checkout launcher can open it after creation:
|
|
12
|
+
# Codex
|
|
13
|
+
codex mcp add bsv-mcp -- npx -y bsv-mcp@latest --stdio
|
|
34
14
|
|
|
35
|
-
|
|
36
|
-
|
|
15
|
+
# Claude Code
|
|
16
|
+
claude mcp add --transport stdio bsv-mcp -- npx -y bsv-mcp@latest --stdio
|
|
37
17
|
```
|
|
38
18
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
19
|
+
Choose one command. For Cursor or Claude Desktop, use this server configuration:
|
|
20
|
+
|
|
21
|
+
```json
|
|
22
|
+
{
|
|
23
|
+
"mcpServers": {
|
|
24
|
+
"bsv-mcp": {
|
|
25
|
+
"command": "npx",
|
|
26
|
+
"args": ["-y", "bsv-mcp@latest", "--stdio"]
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
46
30
|
```
|
|
47
31
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
32
|
+
Restart your client, then ask: **“Run bsv_status and explain what is available.”**
|
|
33
|
+
Local stdio needs no Sigma account or OAuth sign-in. It is also the default when
|
|
34
|
+
no transport is specified. Existing self-hosted HTTP remains opt-in through
|
|
35
|
+
`TRANSPORT=http`; the deployed hosted endpoint is unchanged.
|
|
36
|
+
|
|
37
|
+
For the Codex desktop plugin, add `b-open-io/claude-plugins` in the plugin
|
|
38
|
+
marketplace and install **BSV MCP**. The plugin starts the local npm executable
|
|
39
|
+
and requires Node.js and Bun. Claude Code and Grok plugins bundle the local server and
|
|
40
|
+
require Bun. Choose one registration to avoid duplicate tools.
|
|
41
|
+
|
|
42
|
+
## Connect a wallet
|
|
43
|
+
|
|
44
|
+
Ask your assistant to run `wallet_onboarding`. Create, import or unlock a Vault
|
|
45
|
+
in the local browser. Back it up before funding. Enter passwords only in the
|
|
46
|
+
local setup UI, never in chat. After a server restart, unlock it again.
|
|
47
|
+
|
|
48
|
+
To use an existing BRC-100 wallet, configure its signing API instead:
|
|
49
|
+
|
|
50
|
+
```json
|
|
51
|
+
{
|
|
52
|
+
"mcpServers": {
|
|
53
|
+
"bsv-mcp": {
|
|
54
|
+
"command": "npx",
|
|
55
|
+
"args": ["-y", "bsv-mcp@latest", "--stdio"],
|
|
56
|
+
"env": {
|
|
57
|
+
"BRC100_WALLET_URL": "http://127.0.0.1:3321",
|
|
58
|
+
"BRC100_WALLET_ORIGINATOR": "bsv-mcp.local"
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
69
63
|
```
|
|
70
64
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
```sh
|
|
75
|
-
claude mcp add --transport stdio bsv-mcp-external \
|
|
76
|
-
--env BRC100_WALLET_URL=https://signer.example/rpc \
|
|
77
|
-
--env BRC100_WALLET_ORIGINATOR=bsv-mcp.local \
|
|
78
|
-
-- bun --no-env-file /absolute/path/to/bsv-mcp/scripts/local-mcp-launcher.ts external
|
|
79
|
-
```
|
|
65
|
+
The wallet keeps its keys and controls permission requests. Its signing API is
|
|
66
|
+
separate from a wallet-storage endpoint. See [wallet setup](https://bsvmcp.com/docs#wallets)
|
|
67
|
+
for network settings, account selection and project roles.
|
|
80
68
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
Do not put that password in the registration command or saved MCP configuration.
|
|
85
|
-
The launcher passes it to the child only at runtime, never through argv or its
|
|
86
|
-
diagnostics. `BRC100_WALLET_URL` and `BRC100_WALLET_ORIGINATOR` are read at
|
|
87
|
-
runtime for external mode. Claude Code uses the same launcher command with
|
|
88
|
-
`claude mcp add --transport stdio` and its `--env` options for non-secret values.
|
|
89
|
-
|
|
90
|
-
The launcher starts the checked-out `dist/index.js` with `--no-env-file`, an
|
|
91
|
-
explicit mode, and a working directory outside the checkout. Its embedded mode
|
|
92
|
-
requires an existing encrypted account; it does not create or migrate one. Use
|
|
93
|
-
the direct server registration above when the browser setup must create or
|
|
94
|
-
import a local Vault wallet.
|
|
95
|
-
|
|
96
|
-
Or install the Claude Code plugin from the b-open-io marketplace for hosted MCP:
|
|
97
|
-
|
|
98
|
-
```sh
|
|
99
|
-
claude plugin install bsv-mcp@b-open-io
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
For another local client, register the same launcher command for external or
|
|
103
|
-
legacy embedded mode, or register `bun --no-env-file .../dist/index.js --stdio`
|
|
104
|
-
for browser-based Vault setup. For hosted access, connect to
|
|
105
|
-
**https://bsvmcp.com**. See [client setup](https://bsvmcp.com/#install).
|
|
106
|
-
|
|
107
|
-
Ask your agent: **“Run bsv_status, then show my wallet balance.”**
|
|
69
|
+
The package also includes the Bun-based `bsv-mcp-local` launcher for explicit external,
|
|
70
|
+
legacy embedded and project configurations. Source-checkout examples live in
|
|
71
|
+
[the installation guide](docs/install-verification.md).
|
|
108
72
|
|
|
109
73
|
## MCP protocol compatibility
|
|
110
74
|
|
|
@@ -131,15 +95,14 @@ const client = new Client(
|
|
|
131
95
|
```
|
|
132
96
|
|
|
133
97
|
Register a real human approval handler before using approval-dependent tools.
|
|
134
|
-
|
|
135
|
-
this does not constitute modern client acceptance.
|
|
98
|
+
Legacy protocol compatibility is enabled by default; the connected client must support the approval flow needed by the requested tool.
|
|
136
99
|
|
|
137
100
|
The full tool catalog remains the default and is capability-derived: wallet
|
|
138
101
|
mode, enabled modules, account context, and the selected profile determine what
|
|
139
102
|
`tools/list` returns. The checked-in manifest is a synthetic baseline for one
|
|
140
103
|
configured server, not a promise of a fixed default count. Set
|
|
141
104
|
`MCP_TOOL_CATALOG=compact` only to opt into bounded read families; compact mode
|
|
142
|
-
|
|
105
|
+
uses the same underlying handlers. Tool availability still
|
|
143
106
|
depends on wallet mode and enabled modules. Its baseline read families are
|
|
144
107
|
`bsv_read`, `ordinals_read`, `wallet_read`, and `utility`, each with a bounded
|
|
145
108
|
operation enum; unknown operations are rejected. Eligible sessions also expose
|
|
@@ -148,6 +111,21 @@ protocol support guide](docs/mcp-client-protocol-support.md) for the per-family
|
|
|
148
111
|
operation bounds, endpoint contracts, MCP Apps compatibility, and validation
|
|
149
112
|
status.
|
|
150
113
|
|
|
114
|
+
## Social
|
|
115
|
+
|
|
116
|
+
Two tools cover social operations in both full and compact catalogs:
|
|
117
|
+
|
|
118
|
+
- `bsocial_read`: posts, replies, search, likes, friends, channels, messages, videos, and raw action history.
|
|
119
|
+
- `bsocial_publish`: posts/replies, reposts, likes/unlikes, follows/unfollows, friend/unfriend records, messages, and video records. Tags and attachments use separate, independently signed outputs.
|
|
120
|
+
|
|
121
|
+
```json
|
|
122
|
+
{"action":{"type":"post","content":"Hello Bitcoin","tags":["bitcoin"]},"preview":true}
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
Preview returns unsigned outputs without using keys or spending. Remove `preview` to publish through the selected identity wallet's existing permissions. Messages are public unless their content was encrypted beforehand; a recipient context does not encrypt them. Friend records advertise a communication public key from an established key-agreement workflow.
|
|
126
|
+
|
|
127
|
+
See the [social guide](https://bsvmcp.com/docs#social) for examples and migration from the old tool names. `PUBLIC_BMAP_URL` is the indexer server root (with `/social` and `/q` routes), not a wallet or identity API. Raw follow/unfollow records are event history, not a claim about current relationship state.
|
|
128
|
+
|
|
151
129
|
## Local wallet modes
|
|
152
130
|
|
|
153
131
|
External mode connects to an existing BRC-100 signer. The signer keeps the
|
|
@@ -187,8 +165,7 @@ It defaults to disabled broadcasting; set `DISABLE_BROADCASTING=false` in its
|
|
|
187
165
|
runtime environment to enable transaction tools with the signer's approval.
|
|
188
166
|
|
|
189
167
|
Each mode has its own process environment and should be registered as a separate
|
|
190
|
-
server when you need to switch between them.
|
|
191
|
-
it does not read a wallet on your computer.
|
|
168
|
+
server when you need to switch between them. Use only the registrations needed by the project.
|
|
192
169
|
|
|
193
170
|
Embedded wallets can list pending PeerPay payments and receive a selected
|
|
194
171
|
payment with `wallet_peerPayments`. Receiving requires a message ID and
|
|
@@ -228,7 +205,7 @@ modules.
|
|
|
228
205
|
|
|
229
206
|
- [Wallet setup](https://bsvmcp.com/docs#wallets)
|
|
230
207
|
- [Backend configuration](https://bsvmcp.com/docs#backends)
|
|
231
|
-
- [Tools and workflows](https://bsvmcp.com/docs
|
|
208
|
+
- [Tools and workflows](https://bsvmcp.com/docs/tools)
|
|
232
209
|
- [Paid service requests](https://bsvmcp.com/docs#x402)
|
|
233
210
|
- [Sponsorship](https://bsvmcp.com/docs#sponsorship) and [agent delegation](https://bsvmcp.com/docs#delegation)
|
|
234
211
|
- [Troubleshooting and development](https://bsvmcp.com/docs#troubleshooting)
|
|
@@ -249,7 +226,7 @@ Experimental software; APIs may change. Keep a wallet backup. If a transaction r
|
|
|
249
226
|
## Preparing a release package
|
|
250
227
|
|
|
251
228
|
Run `bun run pack:release /tmp` to build and create the release tarball. Install
|
|
252
|
-
or publish that tarball, for example `bun publish /tmp/bsv-mcp-0.5.
|
|
229
|
+
or publish that tarball, for example `bun publish /tmp/bsv-mcp-0.5.1.tgz`,
|
|
253
230
|
after completing the release checks and selecting the release version.
|
|
254
231
|
Do not publish directly from the checkout: its manifest contains Bun patches
|
|
255
232
|
needed to build the wallet fixes, which fail to resolve in consumer projects.
|