@amirhosseinnateghi/vibed-mcp 0.1.4 → 0.1.6

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.
Files changed (2) hide show
  1. package/dist/index.js +20 -5
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -10335,13 +10335,19 @@ var turnAttachmentSchema = external_exports.object({
10335
10335
  // NUL bytes break Postgres jsonb (and mean binary-not-text) — strip defensively.
10336
10336
  text: external_exports.string().max(5e4).transform((t) => t.replace(/\u0000/g, "")).optional()
10337
10337
  });
10338
+ var voiceInputSchema = external_exports.object({
10339
+ key: external_exports.string().min(1).max(300),
10340
+ mime: external_exports.string().max(100).default("audio/webm")
10341
+ });
10338
10342
  var createTurnRequestSchema = external_exports.object({
10339
10343
  clientTurnId: external_exports.string().uuid(),
10340
10344
  content: external_exports.string().max(4e3).default(""),
10341
10345
  attachments: external_exports.array(turnAttachmentSchema).max(6).optional(),
10346
+ // A voice turn carries no text yet — the worker transcribes `voice` first (م۷).
10347
+ voice: voiceInputSchema.optional(),
10342
10348
  model: external_exports.string().max(100).optional()
10343
- }).refine((v) => v.content.trim().length > 0 || (v.attachments?.length ?? 0) > 0, {
10344
- message: "Send a message or an attachment."
10349
+ }).refine((v) => v.content.trim().length > 0 || (v.attachments?.length ?? 0) > 0 || !!v.voice, {
10350
+ message: "Send a message, an attachment, or a voice recording."
10345
10351
  });
10346
10352
  var builderAttachmentSchema = external_exports.object({
10347
10353
  kind: external_exports.enum(["image", "file", "audio"]),
@@ -10475,6 +10481,13 @@ var buildEventSchema = external_exports.discriminatedUnion("type", [
10475
10481
  }),
10476
10482
  /** Friendly status chip ("index.html", "Fixing a couple of things…"). */
10477
10483
  external_exports.object({ ...base, type: external_exports.literal("status"), summary: external_exports.string() }),
10484
+ /**
10485
+ * The user's spoken words, transcribed server-side (م۷). A voice turn starts
10486
+ * with empty `userText` and a "🎤 Transcribing…" bubble; this event fills the
10487
+ * user bubble with the transcript the moment the worker finishes transcribing,
10488
+ * before the build's prose begins.
10489
+ */
10490
+ external_exports.object({ ...base, type: external_exports.literal("transcript"), text: external_exports.string() }),
10478
10491
  /** First-message category classification. */
10479
10492
  external_exports.object({ ...base, type: external_exports.literal("category"), category: external_exports.string() }),
10480
10493
  /** The validated draft landed. Preview loads it from the draft URL. */
@@ -11231,7 +11244,8 @@ async function apiFetch({ apiBase, token }, method, path, body) {
11231
11244
  import { homedir } from "node:os";
11232
11245
  import { join as join2 } from "node:path";
11233
11246
  import { mkdir, readFile as readFile2, writeFile, chmod } from "node:fs/promises";
11234
- var DEFAULT_API = "https://web-production-834c9.up.railway.app";
11247
+ var DEFAULT_API = "https://vibed.city";
11248
+ var LEGACY_API_DEFAULTS = /* @__PURE__ */ new Set(["https://web-production-834c9.up.railway.app"]);
11235
11249
  var dir = () => join2(homedir(), ".vibed");
11236
11250
  var file = () => join2(dir(), "config.json");
11237
11251
  async function readFileConfig() {
@@ -11243,7 +11257,8 @@ async function readFileConfig() {
11243
11257
  }
11244
11258
  async function loadConfig(overrides = {}) {
11245
11259
  const fromFile = await readFileConfig();
11246
- const apiBase = (overrides.api || process.env.VIBED_API || fromFile.apiBase || DEFAULT_API).replace(/\/$/, "");
11260
+ let apiBase = (overrides.api || process.env.VIBED_API || fromFile.apiBase || DEFAULT_API).replace(/\/$/, "");
11261
+ if (LEGACY_API_DEFAULTS.has(apiBase)) apiBase = DEFAULT_API;
11247
11262
  const token = process.env.VIBED_TOKEN || fromFile.token;
11248
11263
  return { apiBase, token };
11249
11264
  }
@@ -11371,7 +11386,7 @@ async function deleteExperience(client, idOrUrl) {
11371
11386
  }
11372
11387
 
11373
11388
  // src/index.ts
11374
- var SERVER_INFO = { name: "vibed", version: "0.1.4" };
11389
+ var SERVER_INFO = { name: "vibed", version: "0.1.6" };
11375
11390
  var PROTOCOL_VERSION = "2024-11-05";
11376
11391
  var CATEGORIES2 = ["Game", "Invitation", "Story", "News", "Quiz", "Tool", "Art", "Other"];
11377
11392
  var pendingLogin = null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amirhosseinnateghi/vibed-mcp",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
4
4
  "description": "vibed MCP server — make it vibed from any MCP client (Codex, Cursor, Gemini, …): check, login, and publish tools",
5
5
  "license": "MIT",
6
6
  "type": "module",