You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -118,10 +119,10 @@ to reach for this MCP, see <https://instanode.dev/agent.html>.
118
119
| `redeploy` | `POST /deploy/:id/redeploy` — Rebuild + rolling update an existing deployment. Requires `INSTANODE_TOKEN`. |
119
120
| `delete_deployment` | `DELETE /deploy/:id` — Tear down a running deployment. Irreversible. Requires `INSTANODE_TOKEN`. |
120
121
| `claim_resource` | Helper — turn an `upgrade_jwt` from any `create_*` response into the dashboard claim URL the user should click. No API call. No auth required. |
121
-
| `claim_token` | `POST /api/me/claim` — Programmatic claim: attach an anonymous resource to the authenticated account by its UUID `token`. Requires `INSTANODE_TOKEN`. |
122
-
| `list_resources` | `GET /api/me/resources` — List resources on the caller's account. Requires `INSTANODE_TOKEN`. |
123
-
| `delete_resource` | `DELETE /api/me/resources/{token}` — Hard-delete a resource you own. Paid tier only. Requires `INSTANODE_TOKEN`. |
124
-
| `get_api_token` | `GET /api/me/token` — Mint a fresh 30-day bearer JWT (for rotation). Requires an existing `INSTANODE_TOKEN`. |
122
+
| `claim_token` | `POST /claim` — Programmatic claim: attach an anonymous resource to the authenticated account using its `upgrade_jwt` + `email`. No auth required. |
123
+
| `list_resources` | `GET /api/v1/resources` — List resources on the caller's account. Requires `INSTANODE_TOKEN`. |
124
+
| `delete_resource` | `DELETE /api/v1/resources/{token}` — Hard-delete a resource you own. Paid tier only. Requires `INSTANODE_TOKEN`. |
125
+
| `get_api_token` | `POST /api/v1/auth/api-keys` — Mint a fresh bearer Personal Access Token (PAT). Requires an existing user-session `INSTANODE_TOKEN` (PATs cannot mint other PATs — the API returns 403 in that case). |
125
126
126
127
### Container deployment (`create_deploy`)
127
128
@@ -290,7 +291,7 @@ resources, and the account-management tools (`list_resources`,
290
291
3. Set it as `INSTANODE_TOKEN` in the MCP server's `env` block (see examples
291
292
above).
292
293
293
-
Rotate any time by calling `get_api_token`, which mints a fresh 30-day JWT.
294
+
Rotate any time by calling `get_api_token`, which mints a fresh Personal Access Token via `POST /api/v1/auth/api-keys`. PATs are revocation-based (not time-bound). NOTE: PATs cannot mint other PATs — `get_api_token` requires a user-session token (sign in via the dashboard), not an existing PAT, otherwise the API returns 403.
`Provision a pgvector-enabled Postgres database on instanode.dev (POST /vector/new).
247
+
248
+
Underlying storage IS Postgres (tier limits mirror Postgres exactly), with the
249
+
pgvector extension already loaded via CREATE EXTENSION vector at provisioning
250
+
time. Use for embedding stores (OpenAI text-embedding-ada-002 / 3-small = 1536
251
+
dims; text-embedding-3-large = 3072). Returns a standard postgres:// connection
252
+
URL — drop in as DATABASE_URL with any pg driver.
253
+
254
+
Note: create_postgres ALSO ships with pgvector pre-installed today, so this
255
+
tool is functionally equivalent for embedding workloads. Use create_vector when
256
+
the agent wants to make the intent (pgvector / embeddings) explicit, or when
257
+
the API contract evolves and pgvector-only routing diverges from generic
258
+
Postgres provisioning.
259
+
260
+
The optional 'dimensions' field is a documentation hint only — pgvector lets
261
+
you pick per-column dimensions at table-create time, so the server stores the
262
+
declared default but does not enforce it.
263
+
264
+
Without INSTANODE_TOKEN: anonymous tier — 10 MB, 2 connections, expires in 24h,
265
+
capped at 5 provisions/day per /24 subnet. The response carries 'note' +
266
+
'upgrade' (claim URL) — surface both verbatim.
267
+
With INSTANODE_TOKEN (paid): hobby/pro/team Postgres limits, permanent.
268
+
269
+
The 'name' field is required.`,
270
+
{
271
+
...nameArg,
272
+
dimensions: z
273
+
.number()
274
+
.int()
275
+
.min(1)
276
+
.max(16000)
277
+
.optional()
278
+
.describe(
279
+
"Optional embedding dimension hint (defaults to 1536 — OpenAI text-embedding-3-small / ada-002). Use 3072 for text-embedding-3-large. Informational only; pgvector enforces dimensions per column at table-create time."
0 commit comments