vibo-mcp 1.3.2 → 1.4.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/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/dist/bundle.js +202 -118
- package/dist/client.js +57 -59
- package/dist/index.js +5 -0
- package/dist/tools/collaboration.js +1 -2
- package/dist/tools/comments.js +1 -2
- package/dist/tools/events.js +1 -2
- package/dist/tools/ideas.js +1 -2
- package/dist/tools/imports.js +1 -2
- package/dist/tools/notifications.js +1 -2
- package/dist/tools/playlists.js +1 -2
- package/dist/tools/profile.js +1 -2
- package/dist/tools/questions.js +54 -18
- package/dist/tools/section-edit.js +1 -2
- package/dist/tools/sections.js +1 -2
- package/dist/tools/session.js +5 -2
- package/dist/tools/shared.js +9 -0
- package/dist/tools/song-management.js +1 -2
- package/dist/tools/songs.js +1 -2
- package/dist/tools/uploads.js +25 -8
- package/dist/upload-source.js +79 -0
- package/dist/version.js +1 -1
- package/dist/vibo-auth.js +34 -0
- package/package.json +14 -5
- package/server.json +2 -2
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ViboClient } from './client.js';
|
|
2
|
+
import { GET_ME } from './gql.js';
|
|
3
|
+
/**
|
|
4
|
+
* `ConnectorAuth` for the Vibo remote connector: the login page collects the
|
|
5
|
+
* user's Vibo email + password, VERIFIES them by constructing a `ViboClient`
|
|
6
|
+
* with the injected creds and forcing a `signIn` + `me` read (a bad
|
|
7
|
+
* email/password makes the mutation throw here, surfaced back on the login
|
|
8
|
+
* page), and stores `{ email, password }` as the OAuth props that `worker.ts`'s
|
|
9
|
+
* `buildClient` turns into a per-user client.
|
|
10
|
+
*
|
|
11
|
+
* SSO-only accounts (Apple/Google/Facebook, no password) are NOT supported on
|
|
12
|
+
* the hosted connector — they have no password to sign in with. Use a Vibo
|
|
13
|
+
* account with an email + password, or the local stdio server's
|
|
14
|
+
* `vibo_capture_session` browser-capture flow instead.
|
|
15
|
+
*/
|
|
16
|
+
export const viboAuth = {
|
|
17
|
+
service: 'Vibo',
|
|
18
|
+
accent: '#5B2AE0',
|
|
19
|
+
privacyNote: 'Your Vibo email and password are stored encrypted and used only to sign into Vibo (vibodj.com) on your behalf to mint short-lived access tokens. SSO-only Apple/Google/Facebook accounts are not supported — use an account with a password.',
|
|
20
|
+
fields: [
|
|
21
|
+
{ name: 'email', label: 'Vibo email', type: 'text' },
|
|
22
|
+
{ name: 'password', label: 'Vibo password', type: 'password' },
|
|
23
|
+
],
|
|
24
|
+
async login(fields) {
|
|
25
|
+
// Verify the creds up front: build a client with the injected email +
|
|
26
|
+
// password and force a server-side signIn by hitting a cheap authenticated
|
|
27
|
+
// read. Bad creds make `signIn` (and thus this call) throw here — surfaced
|
|
28
|
+
// back on the login page. The response is discarded; the per-user client is
|
|
29
|
+
// built fresh from the stored props by buildClient.
|
|
30
|
+
const client = new ViboClient({ email: fields.email, password: fields.password });
|
|
31
|
+
await client.gql(GET_ME);
|
|
32
|
+
return { email: fields.email, password: fields.password };
|
|
33
|
+
},
|
|
34
|
+
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vibo-mcp",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"mcpName": "io.github.chrischall/vibo-mcp",
|
|
5
5
|
"description": "Vibo (vibodj.com) MCP server for Claude — host/couple event music planning & management. Developed and maintained by AI (Claude Code).",
|
|
6
6
|
"author": "Claude Code (AI) <https://www.anthropic.com/claude>",
|
|
@@ -41,20 +41,29 @@
|
|
|
41
41
|
"dev": "node dist/index.js",
|
|
42
42
|
"test": "vitest run",
|
|
43
43
|
"test:watch": "vitest",
|
|
44
|
-
"test:coverage": "vitest run --coverage"
|
|
44
|
+
"test:coverage": "vitest run --coverage",
|
|
45
|
+
"worker:dev": "wrangler dev",
|
|
46
|
+
"worker:deploy": "wrangler deploy",
|
|
47
|
+
"worker:test": "vitest run --config vitest.workers.config.ts"
|
|
45
48
|
},
|
|
46
49
|
"dependencies": {
|
|
47
|
-
"@chrischall/mcp-utils": "^0.
|
|
50
|
+
"@chrischall/mcp-utils": "^0.13.1",
|
|
48
51
|
"@fetchproxy/bootstrap": "^1.3.4",
|
|
49
52
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
50
53
|
"dotenv": "^17.4.0",
|
|
51
54
|
"zod": "^4.4.2"
|
|
52
55
|
},
|
|
53
56
|
"devDependencies": {
|
|
57
|
+
"@chrischall/mcp-connector": "^0.1.0",
|
|
58
|
+
"@cloudflare/vitest-pool-workers": "^0.18.4",
|
|
59
|
+
"@cloudflare/workers-oauth-provider": "^0.0.11",
|
|
60
|
+
"@cloudflare/workers-types": "^5.20260708.1",
|
|
54
61
|
"@types/node": "^26.0.0",
|
|
55
62
|
"@vitest/coverage-v8": "^4.1.2",
|
|
63
|
+
"agents": "^0.17.3",
|
|
56
64
|
"esbuild": "^0.28.0",
|
|
57
|
-
"typescript": "^
|
|
58
|
-
"vitest": "^4.1.2"
|
|
65
|
+
"typescript": "^7.0.2",
|
|
66
|
+
"vitest": "^4.1.2",
|
|
67
|
+
"wrangler": "^4.110.0"
|
|
59
68
|
}
|
|
60
69
|
}
|
package/server.json
CHANGED
|
@@ -6,12 +6,12 @@
|
|
|
6
6
|
"url": "https://github.com/chrischall/vibo-mcp",
|
|
7
7
|
"source": "github"
|
|
8
8
|
},
|
|
9
|
-
"version": "1.
|
|
9
|
+
"version": "1.4.0",
|
|
10
10
|
"packages": [
|
|
11
11
|
{
|
|
12
12
|
"registryType": "npm",
|
|
13
13
|
"identifier": "vibo-mcp",
|
|
14
|
-
"version": "1.
|
|
14
|
+
"version": "1.4.0",
|
|
15
15
|
"transport": {
|
|
16
16
|
"type": "stdio"
|
|
17
17
|
},
|