@ours.network/mcp 0.15.3 → 0.15.4
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/README.md +12 -1
- package/dist/cli.js +5 -5
- package/dist/contacts.js +2 -0
- package/dist/index.js +46 -46
- package/dist/mufl_code/{57D7F142BD31F27B99BFB808D032E249235B63971387EFEA402EBA5967BDBD53.muflo → BD184CEFF4E6531092B80D98B65664118274B22C8F31C554FF10FCD05EC31662.muflo} +0 -0
- package/dist/transcribe.js +1 -1
- package/dist/voice-setup.js +5 -5
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -16,6 +16,14 @@ exposes the messaging tools — each a thin wrapper over one MUFL user transacti
|
|
|
16
16
|
- `get_messages` — return unread messages (bodies, each with its `wire_id` + any `reply_to`) + mark read; delivered exactly once
|
|
17
17
|
- `mark_processed` / `defer_messages` — remove handled messages, or re-queue read ones for another session
|
|
18
18
|
- `list_incoming_messages` — full inbox with ids + status (read-only)
|
|
19
|
+
- `list_incoming_files` — byte-free structured preauthorization metadata, including authenticated sender CID (`from.id`), separate display name, stable IDs, size/date/status, filename and MIME
|
|
20
|
+
- `get_files({ wire_ids? })` — atomically retrieve only approved unread wire IDs; omitting `wire_ids` preserves legacy all-unread retrieval. Results include safe local paths, actual size/hash, provenance/status, and structured voice transcription outcomes
|
|
21
|
+
|
|
22
|
+
File wake events are content-free but correlation-complete: authenticated `sender_id`,
|
|
23
|
+
`file_id`, `wire_id`, display name, filename, MIME, byte count, and received date. A caller
|
|
24
|
+
must authorize against `sender_id`, never the untrusted display label. Selected IDs are
|
|
25
|
+
unique 64-hex wire IDs (maximum 32); malformed, duplicate, unknown, or stale selections
|
|
26
|
+
fail atomically without retrieving or writing any file.
|
|
19
27
|
|
|
20
28
|
## Configuration
|
|
21
29
|
|
|
@@ -46,7 +54,10 @@ The supported providers are `openai-compatible` (explicit base URL + model),
|
|
|
46
54
|
a file and is transcribed only when its real `audio/*` MIME also carries
|
|
47
55
|
`x-ours-kind=voice-message` (or its legacy filename starts `voice-message-`). The original
|
|
48
56
|
bytes are saved whether transcription succeeds, is unconfigured, exceeds the size cap, or
|
|
49
|
-
the provider fails.
|
|
57
|
+
the provider fails. `get_files` preserves the human transcript/fallback line and also returns
|
|
58
|
+
a secret-free structured outcome (`configured`, `attempted`, `status`, `provider`, `text`,
|
|
59
|
+
`error_category`, `audio_path`, and `file_wire_id`). Provider error text is scrubbed if it
|
|
60
|
+
echoes the configured key and raw provider diagnostics are not copied into structured output.
|
|
50
61
|
|
|
51
62
|
Telegram fallback preserves its original OGG/Opus bytes and `.ogg` filename and advertises
|
|
52
63
|
`audio/ogg; x-ours-kind=voice-message`; the connector's v2 message envelope correlates the
|