@vibevibes/mcp 0.9.5 → 0.10.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/dist/index.d.ts CHANGED
@@ -2,6 +2,6 @@
2
2
  * vibevibes MCP server — connects Claude to a running vibevibes experience.
3
3
  *
4
4
  * The dev server (vibevibes-dev from @vibevibes/sdk) must be running first.
5
- * 5 tools: connect, act, look, screenshot, disconnect
5
+ * 4 tools: connect, act, look, disconnect
6
6
  */
7
7
  export {};
package/dist/index.js CHANGED
@@ -2,7 +2,7 @@
2
2
  * vibevibes MCP server — connects Claude to a running vibevibes experience.
3
3
  *
4
4
  * The dev server (vibevibes-dev from @vibevibes/sdk) must be running first.
5
- * 5 tools: connect, act, look, screenshot, disconnect
5
+ * 4 tools: connect, act, look, disconnect
6
6
  */
7
7
  import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
8
8
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
@@ -583,35 +583,6 @@ Use this to orient yourself before deciding whether to act.`, {
583
583
  return { content: [{ type: "text", text: `Look failed: ${toErrorMessage(err)}` }] };
584
584
  }
585
585
  });
586
- // ── Tool: screenshot ───────────────────────────────────────
587
- server.tool("screenshot", `Capture a screenshot of the experience as seen in the browser.
588
-
589
- Returns the current visual state as a PNG image. Use this to:
590
- - See what the UI looks like
591
- - Debug visual/layout issues
592
- - Verify your changes rendered correctly
593
-
594
- Requires at least one browser viewer to be connected.`, {}, async () => {
595
- try {
596
- const res = await fetchJSON("/screenshot", { timeoutMs: 15000 });
597
- if (res.error) {
598
- return { content: [{ type: "text", text: `Screenshot failed: ${res.error}` }] };
599
- }
600
- if (!res.dataUrl) {
601
- return { content: [{ type: "text", text: "Screenshot returned empty" }] };
602
- }
603
- // dataUrl is "data:image/png;base64,..."
604
- const base64 = res.dataUrl.replace(/^data:image\/\w+;base64,/, "");
605
- return {
606
- content: [
607
- { type: "image", data: base64, mimeType: "image/png" },
608
- ],
609
- };
610
- }
611
- catch (err) {
612
- return { content: [{ type: "text", text: `Screenshot failed: ${toErrorMessage(err)}` }] };
613
- }
614
- });
615
586
  // ── Tool: disconnect ────────────────────────────────────────
616
587
  server.tool("disconnect", `Disconnect from the current experience.
617
588
 
@@ -117,8 +117,8 @@ async function main() {
117
117
  // Check for events ONCE — no polling, no timeout, instant return
118
118
  const agent = agents[0];
119
119
  if (!agent.actorId) {
120
- // Connected but no actorId — block exit to stay alive
121
- process.stdout.write(JSON.stringify({ decision: "block", reason: "Connected. Waiting." }));
120
+ // Connected but no actorId — block exit silently
121
+ process.stdout.write(JSON.stringify({ decision: "block" }));
122
122
  process.exit(0);
123
123
  }
124
124
  try {
@@ -128,8 +128,8 @@ async function main() {
128
128
  const url = `${agent.serverUrl}/agent-context?since=0&actorId=${encodeURIComponent(agent.actorId)}&timeout=0${ownerParam}${roomP}`;
129
129
  const res = await fetch(url, { signal: AbortSignal.timeout(3000) });
130
130
  if (!res.ok) {
131
- // Server error — block exit to stay alive
132
- process.stdout.write(JSON.stringify({ decision: "block", reason: "Connected. Server returned error." }));
131
+ // Server error — block exit silently
132
+ process.stdout.write(JSON.stringify({ decision: "block" }));
133
133
  process.exit(0);
134
134
  }
135
135
  const ctx = await res.json();
@@ -151,13 +151,13 @@ async function main() {
151
151
  }
152
152
  process.exit(0);
153
153
  }
154
- // No events — still connected, block exit
155
- process.stdout.write(JSON.stringify({ decision: "block", reason: "Connected. No new events." }));
154
+ // No events — still connected, block exit silently
155
+ process.stdout.write(JSON.stringify({ decision: "block" }));
156
156
  process.exit(0);
157
157
  }
158
158
  catch {
159
- // Network error — block exit to keep agent alive
160
- process.stdout.write(JSON.stringify({ decision: "block", reason: "Connected. Checking..." }));
159
+ // Network error — block exit silently
160
+ process.stdout.write(JSON.stringify({ decision: "block" }));
161
161
  process.exit(0);
162
162
  }
163
163
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vibevibes/mcp",
3
- "version": "0.9.5",
3
+ "version": "0.10.0",
4
4
  "description": "MCP server — connects Claude to vibevibes experiences",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",