@voxburst/mcp-server 0.2.2 → 0.3.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/__tests__/tools.test.js +13 -6
- package/dist/__tests__/tools.test.js.map +1 -1
- package/dist/client.d.ts +134 -14
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +49 -3
- package/dist/client.js.map +1 -1
- package/dist/index.js +29 -8
- package/dist/index.js.map +1 -1
- package/dist/middleware/auth.d.ts +2 -6
- package/dist/middleware/auth.d.ts.map +1 -1
- package/dist/middleware/auth.js +2 -4
- package/dist/middleware/auth.js.map +1 -1
- package/dist/resources/accounts.d.ts +2 -1
- package/dist/resources/accounts.d.ts.map +1 -1
- package/dist/resources/accounts.js +30 -18
- package/dist/resources/accounts.js.map +1 -1
- package/dist/resources/index.d.ts +2 -2
- package/dist/resources/index.d.ts.map +1 -1
- package/dist/resources/index.js +3 -1
- package/dist/resources/index.js.map +1 -1
- package/dist/resources/posts.d.ts +2 -1
- package/dist/resources/posts.d.ts.map +1 -1
- package/dist/resources/posts.js +32 -23
- package/dist/resources/posts.js.map +1 -1
- package/dist/tools/accounts.js +2 -2
- package/dist/tools/accounts.js.map +1 -1
- package/dist/tools/analytics.d.ts +35 -1
- package/dist/tools/analytics.d.ts.map +1 -1
- package/dist/tools/analytics.js +31 -1
- package/dist/tools/analytics.js.map +1 -1
- package/dist/tools/index.d.ts +131 -5
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +5 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/posts.d.ts +198 -14
- package/dist/tools/posts.d.ts.map +1 -1
- package/dist/tools/posts.js +174 -22
- package/dist/tools/posts.js.map +1 -1
- package/package.json +2 -1
|
@@ -10,22 +10,29 @@ const analytics_js_1 = require("../tools/analytics.js");
|
|
|
10
10
|
// Mock client factory
|
|
11
11
|
function createMockClient() {
|
|
12
12
|
return {
|
|
13
|
+
// Shaped to match formatAccountResponse in
|
|
14
|
+
// src/services/account-service.ts — see the Account interface in client.ts.
|
|
13
15
|
listAccounts: vitest_1.vi.fn().mockResolvedValue([
|
|
14
16
|
{
|
|
15
17
|
id: 'acc_1',
|
|
16
18
|
platform: 'twitter',
|
|
17
|
-
|
|
19
|
+
username: 'test',
|
|
18
20
|
displayName: 'Test User',
|
|
19
|
-
|
|
20
|
-
|
|
21
|
+
avatarUrl: null,
|
|
22
|
+
accountType: null,
|
|
23
|
+
status: 'active',
|
|
24
|
+
connectedAt: '2026-03-03T00:00:00Z',
|
|
21
25
|
},
|
|
22
26
|
]),
|
|
23
27
|
getAccount: vitest_1.vi.fn().mockResolvedValue({
|
|
24
28
|
id: 'acc_1',
|
|
25
29
|
platform: 'twitter',
|
|
26
|
-
|
|
30
|
+
username: 'test',
|
|
27
31
|
displayName: 'Test User',
|
|
28
|
-
|
|
32
|
+
avatarUrl: null,
|
|
33
|
+
accountType: null,
|
|
34
|
+
status: 'active',
|
|
35
|
+
connectedAt: '2026-03-03T00:00:00Z',
|
|
29
36
|
}),
|
|
30
37
|
createPost: vitest_1.vi.fn().mockResolvedValue({
|
|
31
38
|
id: 'post_1',
|
|
@@ -146,7 +153,7 @@ function createMockClient() {
|
|
|
146
153
|
(0, vitest_1.it)('validates content', async () => {
|
|
147
154
|
const result = await (0, posts_js_1.handleValidateContent)(client, {
|
|
148
155
|
content: 'Test content',
|
|
149
|
-
|
|
156
|
+
platforms: ['TWITTER'],
|
|
150
157
|
});
|
|
151
158
|
(0, vitest_1.expect)(result).toHaveProperty('valid', true);
|
|
152
159
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.test.js","sourceRoot":"","sources":["../../src/__tests__/tools.test.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAEH,mCAA8D;AAC9D,gDAA8H;AAC9H,sDAA4E;AAC5E,wDAAsF;AAGtF,sBAAsB;AACtB,SAAS,gBAAgB;IACvB,OAAO;QACL,YAAY,EAAE,WAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC;YACtC;gBACE,EAAE,EAAE,OAAO;gBACX,QAAQ,EAAE,SAAS;gBACnB,
|
|
1
|
+
{"version":3,"file":"tools.test.js","sourceRoot":"","sources":["../../src/__tests__/tools.test.ts"],"names":[],"mappings":"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"}
|
package/dist/client.d.ts
CHANGED
|
@@ -6,20 +6,84 @@ export interface VoxBurstConfig {
|
|
|
6
6
|
apiKey: string;
|
|
7
7
|
apiUrl: string;
|
|
8
8
|
}
|
|
9
|
+
/**
|
|
10
|
+
* Mirrors the `Account` payload returned by GET /v1/accounts and
|
|
11
|
+
* GET /v1/accounts/:id. Source of truth is `formatAccountResponse` in
|
|
12
|
+
* src/services/account-service.ts — keep this in sync with it, not with the
|
|
13
|
+
* database model.
|
|
14
|
+
*
|
|
15
|
+
* The client casts responses without runtime validation, so a field declared
|
|
16
|
+
* here that the API does not send is not a type error — it is a lie that
|
|
17
|
+
* propagates into MCP tool descriptions and makes an agent reason about data
|
|
18
|
+
* that never arrives.
|
|
19
|
+
*
|
|
20
|
+
* `null` vs absent is meaningful: the first five fields are always serialized
|
|
21
|
+
* and may be null; every optional field below is omitted from the payload
|
|
22
|
+
* entirely rather than sent as null.
|
|
23
|
+
*/
|
|
9
24
|
export interface Account {
|
|
10
25
|
id: string;
|
|
26
|
+
/** Lowercased on the wire (e.g. 'google_business', not 'GOOGLE_BUSINESS'). */
|
|
11
27
|
platform: 'twitter' | 'linkedin' | 'instagram' | 'facebook' | 'tiktok' | 'threads' | 'bluesky' | 'youtube' | 'pinterest' | 'reddit' | 'snapchat' | 'telegram' | 'google_business' | 'mastodon' | 'whatsapp';
|
|
12
|
-
handle
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
28
|
+
/** Platform handle. Null when the platform does not expose one. */
|
|
29
|
+
username: string | null;
|
|
30
|
+
/** Human-readable account name. Null when unknown. */
|
|
31
|
+
displayName: string | null;
|
|
32
|
+
/** Profile picture URL. Null when the platform did not supply one. */
|
|
33
|
+
avatarUrl: string | null;
|
|
34
|
+
/** Platform-specific classification (e.g. 'business', 'creator'). Null when not applicable. */
|
|
35
|
+
accountType: string | null;
|
|
36
|
+
/** Lowercased on the wire. */
|
|
37
|
+
status: 'active' | 'expired' | 'revoked' | 'disconnected';
|
|
38
|
+
/** ISO 8601. */
|
|
39
|
+
connectedAt: string;
|
|
40
|
+
/** From the latest metrics snapshot. Absent when no snapshot has a follower count. */
|
|
41
|
+
followers?: number;
|
|
42
|
+
/** Instagram only: 'fb_login' (Facebook Login / FLOB) or 'instagram_login' (Instagram Direct). */
|
|
43
|
+
oauthVersion?: string;
|
|
44
|
+
/** Instagram only: whether a connected Facebook account can unlock Facebook Login for Business. */
|
|
45
|
+
flobProbe?: {
|
|
46
|
+
flobAvailable: boolean;
|
|
47
|
+
facebookAccountId?: string;
|
|
48
|
+
facebookPlatformUserId?: string;
|
|
49
|
+
pageId?: string;
|
|
50
|
+
checkedAt: string;
|
|
51
|
+
};
|
|
52
|
+
/** YouTube only: true when the connection predates the full 'youtube' scope and cannot manage playlists until reconnected. */
|
|
53
|
+
needsPlaylistReauth?: boolean;
|
|
54
|
+
/** LinkedIn only: true when the connection lacks 'w_organization_social' and cannot post to company pages until reconnected. */
|
|
55
|
+
needsOrgScopeReauth?: boolean;
|
|
56
|
+
/** Google Business only: true when at least one location has been selected to sync. */
|
|
57
|
+
gmbLocationsConfigured?: boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Connect-time scope verification result.
|
|
60
|
+
*
|
|
61
|
+
* ABSENT IS NOT HEALTHY. Accounts connected before scope verification shipped
|
|
62
|
+
* have no result at all. Treat a missing `scopeHealth` as unknown — do not
|
|
63
|
+
* report the account as fully permissioned on the strength of its absence.
|
|
64
|
+
*/
|
|
65
|
+
scopeHealth?: {
|
|
66
|
+
/** 'OK' | 'DEGRADED' | 'UNKNOWN' | 'NOT_APPLICABLE' */
|
|
67
|
+
status: string;
|
|
68
|
+
/** Capabilities that cannot work with what the platform granted. */
|
|
69
|
+
degradedCapabilities: Array<{
|
|
70
|
+
capability: string;
|
|
71
|
+
label: string;
|
|
72
|
+
/** Granted for a different Page/account rather than missing outright. */
|
|
73
|
+
grantedForOtherTargetsOnly?: boolean;
|
|
74
|
+
}>;
|
|
75
|
+
/** One user-facing sentence. Absent when the account is healthy. */
|
|
76
|
+
message?: string;
|
|
77
|
+
/** Why the granted set is unknown or not applicable. */
|
|
78
|
+
reason?: string;
|
|
79
|
+
verifiedAt?: string;
|
|
80
|
+
};
|
|
17
81
|
}
|
|
18
82
|
export interface Post {
|
|
19
83
|
id: string;
|
|
20
84
|
content: string;
|
|
21
85
|
mediaUrls?: string[];
|
|
22
|
-
status: 'draft' | 'scheduled' | 'published' | 'failed';
|
|
86
|
+
status: 'draft' | 'approved' | 'scheduled' | 'publishing' | 'published' | 'failed' | 'partial' | 'cancelled' | 'unpublished' | 'archived';
|
|
23
87
|
scheduledFor?: string;
|
|
24
88
|
publishedAt?: string;
|
|
25
89
|
accounts: string[];
|
|
@@ -28,13 +92,23 @@ export interface Post {
|
|
|
28
92
|
}
|
|
29
93
|
export interface PostMetrics {
|
|
30
94
|
postId: string;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
95
|
+
platform: string;
|
|
96
|
+
platformPostUrl: string | null;
|
|
97
|
+
metrics: {
|
|
98
|
+
impressions: number;
|
|
99
|
+
reach: number;
|
|
100
|
+
engagements: number;
|
|
101
|
+
likes: number;
|
|
102
|
+
comments: number;
|
|
103
|
+
shares: number;
|
|
104
|
+
clicks: number;
|
|
105
|
+
saves: number;
|
|
106
|
+
videoViews?: number;
|
|
107
|
+
};
|
|
108
|
+
dataAvailable: boolean;
|
|
37
109
|
collectedAt: string;
|
|
110
|
+
periodStart: string;
|
|
111
|
+
periodEnd: string;
|
|
38
112
|
}
|
|
39
113
|
export interface AccountMetrics {
|
|
40
114
|
accountId: string;
|
|
@@ -44,17 +118,58 @@ export interface AccountMetrics {
|
|
|
44
118
|
avgEngagementRate: number;
|
|
45
119
|
collectedAt: string;
|
|
46
120
|
}
|
|
121
|
+
export type ContentType = 'TEXT' | 'IMAGE' | 'VIDEO' | 'CAROUSEL' | 'THREAD' | 'STORY' | 'REEL';
|
|
122
|
+
export interface MediaRecord {
|
|
123
|
+
id: string;
|
|
124
|
+
filename: string;
|
|
125
|
+
contentType: string;
|
|
126
|
+
status: string;
|
|
127
|
+
publicUrl?: string;
|
|
128
|
+
}
|
|
47
129
|
export interface CreatePostRequest {
|
|
48
130
|
content: string;
|
|
49
131
|
mediaUrls?: string[];
|
|
132
|
+
mediaIds?: string[];
|
|
50
133
|
accountIds: string[];
|
|
51
134
|
scheduledFor?: string;
|
|
135
|
+
saveAsDraft?: boolean;
|
|
136
|
+
contentType?: ContentType;
|
|
137
|
+
firstComment?: string;
|
|
138
|
+
firstCommentDelay?: number;
|
|
52
139
|
}
|
|
53
140
|
export interface ListPostsRequest {
|
|
54
|
-
status?: Post['status'];
|
|
141
|
+
status?: Post['status'] | 'all';
|
|
55
142
|
accountId?: string;
|
|
56
143
|
limit?: number;
|
|
57
|
-
|
|
144
|
+
cursor?: string;
|
|
145
|
+
}
|
|
146
|
+
export interface UpdatePostRequest {
|
|
147
|
+
content?: string;
|
|
148
|
+
scheduledFor?: string;
|
|
149
|
+
accountIds?: string[];
|
|
150
|
+
contentType?: ContentType;
|
|
151
|
+
firstComment?: string;
|
|
152
|
+
firstCommentDelay?: number;
|
|
153
|
+
media?: string[];
|
|
154
|
+
platformOverrides?: Record<string, {
|
|
155
|
+
content?: string;
|
|
156
|
+
}>;
|
|
157
|
+
}
|
|
158
|
+
export interface AnalyticsOverviewParams {
|
|
159
|
+
startDate?: string;
|
|
160
|
+
endDate?: string;
|
|
161
|
+
}
|
|
162
|
+
export interface AnalyticsOverview {
|
|
163
|
+
totalImpressions: number;
|
|
164
|
+
totalEngagements: number;
|
|
165
|
+
topPosts: Array<{
|
|
166
|
+
postId: string;
|
|
167
|
+
impressions: number;
|
|
168
|
+
engagements: number;
|
|
169
|
+
}>;
|
|
170
|
+
bestPostingTime?: string;
|
|
171
|
+
periodStart: string;
|
|
172
|
+
periodEnd: string;
|
|
58
173
|
}
|
|
59
174
|
export interface ValidationResult {
|
|
60
175
|
valid: boolean;
|
|
@@ -83,13 +198,18 @@ export declare class VoxBurstClient {
|
|
|
83
198
|
private request;
|
|
84
199
|
listAccounts(): Promise<Account[]>;
|
|
85
200
|
getAccount(accountId: string): Promise<Account>;
|
|
201
|
+
registerMedia(url: string, contentType: string, filename?: string): Promise<MediaRecord>;
|
|
86
202
|
createPost(request: CreatePostRequest): Promise<Post>;
|
|
87
203
|
listPosts(params?: ListPostsRequest): Promise<Post[]>;
|
|
88
204
|
getPost(postId: string): Promise<Post>;
|
|
89
205
|
deletePost(postId: string): Promise<void>;
|
|
206
|
+
cancelPost(postId: string): Promise<Post>;
|
|
207
|
+
updatePost(postId: string, input: UpdatePostRequest): Promise<Post>;
|
|
208
|
+
retryPost(postId: string): Promise<Post>;
|
|
90
209
|
validateContent(content: string, platforms: string[]): Promise<ValidationResult>;
|
|
91
210
|
getPostMetrics(postId: string): Promise<PostMetrics>;
|
|
92
211
|
getAccountMetrics(accountId: string): Promise<AccountMetrics>;
|
|
212
|
+
getAnalyticsOverview(params?: AnalyticsOverviewParams): Promise<AnalyticsOverview>;
|
|
93
213
|
}
|
|
94
214
|
/**
|
|
95
215
|
* Create a VoxBurst client from environment variables
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,iBAAiB,GAAG,UAAU,GAAG,UAAU,CAAC;IAC5M,MAAM,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -6,6 +6,15 @@
|
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.VoxBurstClient = exports.VoxBurstAPIError = void 0;
|
|
8
8
|
exports.createClientFromEnv = createClientFromEnv;
|
|
9
|
+
function inferContentType(url) {
|
|
10
|
+
const ext = url.split('?')[0].split('.').pop()?.toLowerCase() ?? '';
|
|
11
|
+
const map = {
|
|
12
|
+
jpg: 'image/jpeg', jpeg: 'image/jpeg', png: 'image/png',
|
|
13
|
+
gif: 'image/gif', webp: 'image/webp',
|
|
14
|
+
mp4: 'video/mp4', mov: 'video/quicktime', webm: 'video/webm', avi: 'video/x-msvideo',
|
|
15
|
+
};
|
|
16
|
+
return map[ext] ?? 'image/jpeg';
|
|
17
|
+
}
|
|
9
18
|
class VoxBurstAPIError extends Error {
|
|
10
19
|
statusCode;
|
|
11
20
|
code;
|
|
@@ -63,9 +72,27 @@ class VoxBurstClient {
|
|
|
63
72
|
async getAccount(accountId) {
|
|
64
73
|
return this.request('GET', `/v1/accounts/${accountId}`);
|
|
65
74
|
}
|
|
75
|
+
// Media Methods
|
|
76
|
+
async registerMedia(url, contentType, filename) {
|
|
77
|
+
return this.request('POST', '/v1/media/register', { url, contentType, filename });
|
|
78
|
+
}
|
|
66
79
|
// Post Methods
|
|
67
80
|
async createPost(request) {
|
|
68
|
-
|
|
81
|
+
const { mediaUrls, mediaIds, ...rest } = request;
|
|
82
|
+
// Resolve mediaUrls to registered media IDs before posting
|
|
83
|
+
const resolvedIds = [...(mediaIds ?? [])];
|
|
84
|
+
if (mediaUrls && mediaUrls.length > 0) {
|
|
85
|
+
for (const url of mediaUrls) {
|
|
86
|
+
const ct = inferContentType(url);
|
|
87
|
+
const filename = url.split('/').pop()?.split('?')[0] ?? 'media';
|
|
88
|
+
const record = await this.registerMedia(url, ct, filename);
|
|
89
|
+
resolvedIds.push(record.id);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return this.request('POST', '/v1/posts', {
|
|
93
|
+
...rest,
|
|
94
|
+
...(resolvedIds.length > 0 ? { media: resolvedIds } : {}),
|
|
95
|
+
});
|
|
69
96
|
}
|
|
70
97
|
async listPosts(params) {
|
|
71
98
|
const queryParams = new URLSearchParams();
|
|
@@ -75,8 +102,8 @@ class VoxBurstClient {
|
|
|
75
102
|
queryParams.set('accountId', params.accountId);
|
|
76
103
|
if (params?.limit)
|
|
77
104
|
queryParams.set('limit', params.limit.toString());
|
|
78
|
-
if (params?.
|
|
79
|
-
queryParams.set('
|
|
105
|
+
if (params?.cursor)
|
|
106
|
+
queryParams.set('cursor', params.cursor);
|
|
80
107
|
const query = queryParams.toString();
|
|
81
108
|
const path = query ? `/v1/posts?${query}` : '/v1/posts';
|
|
82
109
|
return this.request('GET', path);
|
|
@@ -87,6 +114,15 @@ class VoxBurstClient {
|
|
|
87
114
|
async deletePost(postId) {
|
|
88
115
|
await this.request('DELETE', `/v1/posts/${postId}`);
|
|
89
116
|
}
|
|
117
|
+
async cancelPost(postId) {
|
|
118
|
+
return this.request('POST', `/v1/posts/${postId}/cancel`);
|
|
119
|
+
}
|
|
120
|
+
async updatePost(postId, input) {
|
|
121
|
+
return this.request('PATCH', `/v1/posts/${postId}`, input);
|
|
122
|
+
}
|
|
123
|
+
async retryPost(postId) {
|
|
124
|
+
return this.request('POST', `/v1/posts/${postId}/retry`);
|
|
125
|
+
}
|
|
90
126
|
async validateContent(content, platforms) {
|
|
91
127
|
return this.request('POST', '/v1/posts/validate', {
|
|
92
128
|
content,
|
|
@@ -100,6 +136,16 @@ class VoxBurstClient {
|
|
|
100
136
|
async getAccountMetrics(accountId) {
|
|
101
137
|
return this.request('GET', `/v1/analytics/accounts/${accountId}`);
|
|
102
138
|
}
|
|
139
|
+
async getAnalyticsOverview(params) {
|
|
140
|
+
const queryParams = new URLSearchParams();
|
|
141
|
+
if (params?.startDate)
|
|
142
|
+
queryParams.set('startDate', params.startDate);
|
|
143
|
+
if (params?.endDate)
|
|
144
|
+
queryParams.set('endDate', params.endDate);
|
|
145
|
+
const query = queryParams.toString();
|
|
146
|
+
const path = query ? `/v1/analytics/overview?${query}` : '/v1/analytics/overview';
|
|
147
|
+
return this.request('GET', path);
|
|
148
|
+
}
|
|
103
149
|
}
|
|
104
150
|
exports.VoxBurstClient = VoxBurstClient;
|
|
105
151
|
/**
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -19,7 +19,7 @@ const rate_limiter_js_1 = require("./middleware/rate-limiter.js");
|
|
|
19
19
|
const auth_js_1 = require("./middleware/auth.js");
|
|
20
20
|
const logger_js_1 = require("./middleware/logger.js");
|
|
21
21
|
const SERVER_NAME = 'voxburst';
|
|
22
|
-
const SERVER_VERSION = '0.
|
|
22
|
+
const SERVER_VERSION = '0.3.0';
|
|
23
23
|
/**
|
|
24
24
|
* Create and configure the MCP server with production hardening
|
|
25
25
|
*/
|
|
@@ -81,6 +81,15 @@ function createServer(client, logger, rateLimiter) {
|
|
|
81
81
|
case 'validate_content':
|
|
82
82
|
result = await (0, index_js_2.handleValidateContent)(client, args);
|
|
83
83
|
break;
|
|
84
|
+
case 'cancel_post':
|
|
85
|
+
result = await (0, index_js_2.handleCancelPost)(client, args);
|
|
86
|
+
break;
|
|
87
|
+
case 'update_post':
|
|
88
|
+
result = await (0, index_js_2.handleUpdatePost)(client, args);
|
|
89
|
+
break;
|
|
90
|
+
case 'retry_post':
|
|
91
|
+
result = await (0, index_js_2.handleRetryPost)(client, args);
|
|
92
|
+
break;
|
|
84
93
|
// Account tools
|
|
85
94
|
case 'list_accounts':
|
|
86
95
|
result = await (0, index_js_2.handleListAccounts)(client);
|
|
@@ -95,6 +104,9 @@ function createServer(client, logger, rateLimiter) {
|
|
|
95
104
|
case 'get_account_metrics':
|
|
96
105
|
result = await (0, index_js_2.handleGetAccountMetrics)(client, args);
|
|
97
106
|
break;
|
|
107
|
+
case 'get_analytics_overview':
|
|
108
|
+
result = await (0, index_js_2.handleGetAnalyticsOverview)(client, args);
|
|
109
|
+
break;
|
|
98
110
|
default:
|
|
99
111
|
logger.warn('Unknown tool called', { tool: name });
|
|
100
112
|
return {
|
|
@@ -151,22 +163,23 @@ function createServer(client, logger, rateLimiter) {
|
|
|
151
163
|
const { uri } = request.params;
|
|
152
164
|
const startTime = Date.now();
|
|
153
165
|
// Rate limiting for resource reads
|
|
154
|
-
const
|
|
166
|
+
const normalizedUri = uri.split('?')[0].split('#')[0];
|
|
167
|
+
const rateResult = rateLimiter.check(`resource:${normalizedUri}`);
|
|
155
168
|
if (!rateResult.allowed) {
|
|
156
169
|
logger.warn('Rate limit exceeded for resource', { resource: uri });
|
|
157
170
|
throw new Error(`Rate limit exceeded. Try again after ${new Date(rateResult.resetAt).toISOString()}.`);
|
|
158
171
|
}
|
|
159
172
|
try {
|
|
160
|
-
// Try account resources
|
|
161
|
-
if (uri.startsWith(index_js_3.ACCOUNT_URI_PREFIX) || uri === 'accounts://list') {
|
|
173
|
+
// Try account resources (accounts:// or voxburst://accounts)
|
|
174
|
+
if (uri.startsWith(index_js_3.ACCOUNT_URI_PREFIX) || uri === 'accounts://list' || uri === index_js_3.VOXBURST_ACCOUNTS_URI) {
|
|
162
175
|
const content = await (0, index_js_3.readAccountResource)(client, uri);
|
|
163
176
|
if (content) {
|
|
164
177
|
logger.resourceRead(uri, startTime);
|
|
165
178
|
return { contents: [content] };
|
|
166
179
|
}
|
|
167
180
|
}
|
|
168
|
-
// Try post resources
|
|
169
|
-
if (uri.startsWith(index_js_3.POST_URI_PREFIX) || uri === 'posts://recent') {
|
|
181
|
+
// Try post resources (posts:// or voxburst://posts)
|
|
182
|
+
if (uri.startsWith(index_js_3.POST_URI_PREFIX) || uri === 'posts://recent' || uri === index_js_3.VOXBURST_POSTS_URI) {
|
|
170
183
|
const content = await (0, index_js_3.readPostResource)(client, uri);
|
|
171
184
|
if (content) {
|
|
172
185
|
logger.resourceRead(uri, startTime);
|
|
@@ -223,6 +236,10 @@ function formatErrorResponse(error) {
|
|
|
223
236
|
*/
|
|
224
237
|
function formatErrorMessage(error) {
|
|
225
238
|
if (error instanceof client_js_1.VoxBurstAPIError) {
|
|
239
|
+
// Don't leak internal server error details to MCP clients
|
|
240
|
+
if (error.statusCode >= 500) {
|
|
241
|
+
return `VoxBurst API Error (${error.statusCode}): An internal error occurred. Please try again.`;
|
|
242
|
+
}
|
|
226
243
|
return `VoxBurst API Error (${error.statusCode}): ${error.message}${error.code ? ` [${error.code}]` : ''}`;
|
|
227
244
|
}
|
|
228
245
|
if (error instanceof Error) {
|
|
@@ -248,9 +265,13 @@ async function main() {
|
|
|
248
265
|
// Create API client from environment
|
|
249
266
|
const client = (0, client_js_1.createClientFromEnv)();
|
|
250
267
|
// Create rate limiter
|
|
268
|
+
const _parseRateInt = (val, fallback) => {
|
|
269
|
+
const n = parseInt(val ?? '', 10);
|
|
270
|
+
return Number.isFinite(n) && n > 0 ? n : fallback;
|
|
271
|
+
};
|
|
251
272
|
const rateLimiter = new rate_limiter_js_1.RateLimiter({
|
|
252
|
-
maxRequests:
|
|
253
|
-
windowMs:
|
|
273
|
+
maxRequests: _parseRateInt(process.env.VOXBURST_RATE_LIMIT, 100),
|
|
274
|
+
windowMs: _parseRateInt(process.env.VOXBURST_RATE_WINDOW_MS, 60000),
|
|
254
275
|
});
|
|
255
276
|
// Create and start server
|
|
256
277
|
const server = createServer(client, logger, rateLimiter);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AACA;;;;;;;GAOG;;AAEH,wEAAmE;AACnE,wEAAiF;AACjF,iEAM4C;AAE5C,2CAAoF;AACpF,+
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Authentication middleware for MCP Server
|
|
3
|
-
* Validates API keys
|
|
3
|
+
* Validates API keys against the VoxBurst API
|
|
4
4
|
*/
|
|
5
5
|
export interface AuthConfig {
|
|
6
6
|
/** Required API key for access */
|
|
7
7
|
apiKey?: string;
|
|
8
|
-
/** Optional: Cognito User Pool ID for token validation */
|
|
9
|
-
cognitoUserPoolId?: string;
|
|
10
|
-
/** Optional: Cognito region */
|
|
11
|
-
cognitoRegion?: string;
|
|
12
8
|
}
|
|
13
9
|
export interface AuthResult {
|
|
14
10
|
authenticated: boolean;
|
|
15
|
-
method: 'api-key' | '
|
|
11
|
+
method: 'api-key' | 'none';
|
|
16
12
|
userId?: string;
|
|
17
13
|
error?: string;
|
|
18
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/middleware/auth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,UAAU;IACzB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/middleware/auth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,UAAU;IACzB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAe3D;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,UAAU,CAIpD"}
|
package/dist/middleware/auth.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
3
|
* Authentication middleware for MCP Server
|
|
4
|
-
* Validates API keys
|
|
4
|
+
* Validates API keys against the VoxBurst API
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.validateAuth = validateAuth;
|
|
@@ -12,7 +12,7 @@ exports.createAuthConfigFromEnv = createAuthConfigFromEnv;
|
|
|
12
12
|
* For HTTP transport, auth would be via headers.
|
|
13
13
|
*/
|
|
14
14
|
function validateAuth(config) {
|
|
15
|
-
// For stdio transport: if API key is configured, it
|
|
15
|
+
// For stdio transport: if API key is configured, it is already validated
|
|
16
16
|
// (client.ts checks VOXBURST_API_KEY on startup)
|
|
17
17
|
if (config.apiKey) {
|
|
18
18
|
return {
|
|
@@ -32,8 +32,6 @@ function validateAuth(config) {
|
|
|
32
32
|
function createAuthConfigFromEnv() {
|
|
33
33
|
return {
|
|
34
34
|
apiKey: process.env.VOXBURST_API_KEY,
|
|
35
|
-
cognitoUserPoolId: process.env.VOXBURST_COGNITO_USER_POOL_ID,
|
|
36
|
-
cognitoRegion: process.env.VOXBURST_COGNITO_REGION || 'us-east-1',
|
|
37
35
|
};
|
|
38
36
|
}
|
|
39
37
|
//# sourceMappingURL=auth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/middleware/auth.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/middleware/auth.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAmBH,oCAeC;AAKD,0DAIC;AA7BD;;;;GAIG;AACH,SAAgB,YAAY,CAAC,MAAkB;IAC7C,yEAAyE;IACzE,iDAAiD;IACjD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,OAAO;YACL,aAAa,EAAE,IAAI;YACnB,MAAM,EAAE,SAAS;SAClB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,aAAa,EAAE,KAAK;QACpB,MAAM,EAAE,MAAM;QACd,KAAK,EAAE,0EAA0E;KAClF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,uBAAuB;IACrC,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB;KACrC,CAAC;AACJ,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Account Resources - Expose accounts as MCP resources
|
|
3
3
|
*/
|
|
4
|
-
import type { VoxBurstClient, Account } from
|
|
4
|
+
import type { VoxBurstClient, Account } from "../client.js";
|
|
5
5
|
export declare const ACCOUNTS_LIST_URI = "accounts://list";
|
|
6
6
|
export declare const ACCOUNT_URI_PREFIX = "accounts://";
|
|
7
|
+
export declare const VOXBURST_ACCOUNTS_URI = "voxburst://accounts";
|
|
7
8
|
/**
|
|
8
9
|
* Get resource templates for accounts
|
|
9
10
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/resources/accounts.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5D,eAAO,MAAM,iBAAiB,oBAAoB,CAAC;AACnD,eAAO,MAAM,kBAAkB,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/resources/accounts.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5D,eAAO,MAAM,iBAAiB,oBAAoB,CAAC;AACnD,eAAO,MAAM,kBAAkB,gBAAgB,CAAC;AAChD,eAAO,MAAM,qBAAqB,wBAAwB,CAAC;AAE3D;;GAEG;AACH,wBAAgB,2BAA2B;;;;;IAS1C;AAED;;GAEG;AACH,wBAAgB,mBAAmB;;;;;IAelC;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAwBjE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAQtD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAM9D"}
|