@vectros-ai/mcp-server 0.18.1 → 0.18.2
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 +19 -1
- package/README.md +24 -3
- package/dist/cli-http.js +181 -29
- package/dist/cli-http.js.map +1 -1
- package/dist/cli-http.mjs +181 -29
- package/dist/cli-http.mjs.map +1 -1
- package/dist/cli.js +181 -29
- package/dist/cli.js.map +1 -1
- package/dist/cli.mjs +181 -29
- package/dist/cli.mjs.map +1 -1
- package/dist/index.d.mts +4 -7
- package/dist/index.d.ts +4 -7
- package/dist/index.js +181 -29
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +181 -29
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,24 @@
|
|
|
3
3
|
All notable changes to `@vectros-ai/mcp-server` are documented here.
|
|
4
4
|
This project adheres to [Semantic Versioning](https://semver.org).
|
|
5
5
|
|
|
6
|
+
## 0.18.2 — 2026-10-25
|
|
7
|
+
|
|
8
|
+
### Changed
|
|
9
|
+
|
|
10
|
+
- **The `providerAlias` description of `rag_ask` and `document_ask` names the three waiver refusals.** When a call routed
|
|
11
|
+
through your own provider is refused because the account's provider waiver is not in force, the `403` carries an
|
|
12
|
+
`errorCode`: `WAIVER_NOT_SIGNED`, `WAIVER_TEXT_CHANGED` or `WAIVER_REVOKED`. The two descriptions and the README say what
|
|
13
|
+
each means and that an account owner resolves each in the developer portal.
|
|
14
|
+
- **The `expectedVersion` descriptions of `record_update`, `document_update` and `folder_update` say what happens without it.**
|
|
15
|
+
An update that meets another change to the same item at the same moment is refused as a conflict (`409`,
|
|
16
|
+
`VERSION_CONFLICT`) whether or not `expectedVersion` is sent.
|
|
17
|
+
- **The README lists the refusals added in API 0.48.0 and what the tools return for them:** `429` `BALANCE_BUSY`, `503`
|
|
18
|
+
`BALANCE_UNAVAILABLE`, and a `503` with no `errorCode` for a `providerAlias` whose stored provider key cannot be opened. It
|
|
19
|
+
also describes the `409` of a concurrent update and the items of a deleted schema.
|
|
20
|
+
- **The `current_identity` tool and the `vectros://identity` resource list `trigger-control-plane-grant` among the capabilities
|
|
21
|
+
that the credential description omits.**
|
|
22
|
+
- **The comments in the shipped code describe the code as it is today.** Behaviour is unchanged.
|
|
23
|
+
|
|
6
24
|
## 0.18.1 — 2026-10-12
|
|
7
25
|
|
|
8
26
|
### Changed
|
|
@@ -264,7 +282,7 @@ This project adheres to [Semantic Versioning](https://semver.org).
|
|
|
264
282
|
- **`folder_delete` no longer implies a record cannot be moved.** It said a record must be deleted
|
|
265
283
|
because it cannot be re-filed. The API supports re-filing one (`folderId` is patchable); it is
|
|
266
284
|
*this server* that does not expose it — `record_update` has no `folderId` argument. As written, an
|
|
267
|
-
agent clearing a folder could have deleted
|
|
285
|
+
agent clearing a folder could have deleted a record where a move was available, then reported
|
|
268
286
|
that a move was impossible. It now names the gap as this server's and says to move the record
|
|
269
287
|
through the API/SDK rather than deleting it here.
|
|
270
288
|
- **`record_batch_write` no longer claims duplicate `externalId`s within one batch are refused.**
|
package/README.md
CHANGED
|
@@ -279,6 +279,19 @@ All 23 tools wrap published Vectros HTTP API endpoints. JSON
|
|
|
279
279
|
responses are what the agent sees as tool output. Per-call cost
|
|
280
280
|
surfaces via the `usage` field on inference responses.
|
|
281
281
|
|
|
282
|
+
**Concurrent updates.** `record_update`, `document_update`, `folder_update` and `document_ingest` with `upsert: true`
|
|
283
|
+
return `409` (`errorCode: VERSION_CONFLICT`) when another request changed the same item at the same moment, whether or not
|
|
284
|
+
you pass `expectedVersion`. Nothing is written and the other change is kept: re-read the item and retry.
|
|
285
|
+
`expectedVersion` still refuses an update made against a version you read earlier, even if the other change finished long
|
|
286
|
+
ago. An update to an item that was deleted a moment earlier returns `404`. In `record_batch_write` with `upsert`, an item
|
|
287
|
+
that meets another change at the same moment is reported in the results with `status: conflict` and
|
|
288
|
+
`errorCode: VERSION_CONFLICT`; send that item again. Items written with `atomicity: all_or_nothing` are not covered.
|
|
289
|
+
|
|
290
|
+
**Items of a deleted schema.** An item whose schema no longer exists is not served: reading it (`record_get`,
|
|
291
|
+
`document_get`) returns an error, updating it, reading its `version_history`, and reading a document's text, download or
|
|
292
|
+
answers (`document_ask`) are refused, and `record_query`, `document_query` and `record_batch_get` leave it out. Delete the
|
|
293
|
+
item.
|
|
294
|
+
|
|
282
295
|
### Routing a call through your own model provider
|
|
283
296
|
|
|
284
297
|
`rag_ask` and `document_ask` take an optional `providerAlias`: the alias of a model provider config your Vectros
|
|
@@ -288,7 +301,11 @@ provider config's default model when omitted). The server forwards `providerAlia
|
|
|
288
301
|
never fills it in.
|
|
289
302
|
|
|
290
303
|
It works only after your account has set up the provider and signed the platform's risk-acceptance waiver. Without
|
|
291
|
-
both, the platform refuses the call with a `403`, which the tool returns to you as written.
|
|
304
|
+
both, the platform refuses the call with a `403`, which the tool returns to you as written. When the waiver is the
|
|
305
|
+
cause, the `403` carries an `errorCode` that says which case it is: `WAIVER_NOT_SIGNED` (the waiver has not been
|
|
306
|
+
signed), `WAIVER_TEXT_CHANGED` (it was signed, but its text changed afterwards, so the earlier signature no longer
|
|
307
|
+
counts) or `WAIVER_REVOKED` (an account owner revoked it). An account owner resolves each in the developer portal
|
|
308
|
+
(**Model Providers**); retrying the call does not help.
|
|
292
309
|
|
|
293
310
|
If your account has accepted the Business Associate Agreement with Vectros in the developer portal, an account owner must also attest each provider
|
|
294
311
|
config in the developer portal (**Model Providers**) before a call can use it. Until then the platform refuses the
|
|
@@ -517,8 +534,12 @@ The server is on a pre-1.0 track toward a stable 1.0 release.
|
|
|
517
534
|
## Rate limits
|
|
518
535
|
|
|
519
536
|
Tool calls hit the same per-minute rate limits as any API client; the
|
|
520
|
-
[rate limits guide](https://docs.vectros.ai/guides/operations-trust/rate-limits) says which requests count. On a `429` the tool returns the error with `HTTP 429` and `errorCode: RATE_LIMITED`, so the agent can pace and retry
|
|
521
|
-
rather than blind-retrying.
|
|
537
|
+
[rate limits guide](https://docs.vectros.ai/guides/operations-trust/rate-limits) says which requests count. On a rate-limit `429` the tool returns the error with `HTTP 429` and `errorCode: RATE_LIMITED`, so the agent can pace and retry
|
|
538
|
+
rather than blind-retrying. `rag_ask` and `document_ask` can also return `429` with `errorCode: BALANCE_BUSY` (your pre-paid
|
|
539
|
+
balance is momentarily busy with your other concurrent requests: not a rate limit and not a shortage, so do not top up;
|
|
540
|
+
retry shortly) or `503` with `errorCode: BALANCE_UNAVAILABLE` (a temporary fault interrupted the balance step; also not a
|
|
541
|
+
shortage; retry shortly). A `402` means the balance is short (`INSUFFICIENT_BALANCE`) or the plan's usage limit is reached (`SUBSCRIPTION_LIMIT_EXCEEDED`). A `503` with no `errorCode` on a call that names a `providerAlias` means the platform cannot open the stored provider key: retry shortly, and enter the key again in the developer portal if it persists. The tool returns the message, `errorCode` and
|
|
542
|
+
`requestId`, not the `Retry-After` header. The guide also lists
|
|
522
543
|
the per-plan limits.
|
|
523
544
|
|
|
524
545
|
## Building from source
|