@speakai/mcp-server 1.5.1 → 1.6.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.
Files changed (3) hide show
  1. package/README.md +11 -11
  2. package/dist/index.js +11 -3
  3. package/package.json +10 -2
package/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
  <h1 align="center">Connect Speak AI to Claude or ChatGPT in 60 seconds</h1>
6
6
 
7
7
  <p align="center">
8
- <strong>For coaches, therapists, and qualitative researchers.</strong><br/>
8
+ <strong>For researchers, revenue teams, meeting-heavy teams, and media workflows.</strong><br/>
9
9
  No Terminal. No npm. No JSON config files.
10
10
  </p>
11
11
 
@@ -23,14 +23,14 @@
23
23
 
24
24
  ## What this does
25
25
 
26
- Speak AI transcribes your interviews, coaching calls, and team meetings — then extracts AI insights like summaries, action items, sentiment, and themes.
26
+ Speak AI transcribes your interviews, sales calls, research sessions, webinars, podcasts, and team meetings — then extracts AI insights like summaries, action items, sentiment, and themes.
27
27
 
28
28
  This connector (built on MCP — the standard way Claude and ChatGPT connect to apps) brings all of that into Claude or ChatGPT. Once installed, you can ask:
29
29
 
30
- - "Show me every coaching call from the last month where my client mentioned 'imposter syndrome'."
31
- - "Summarize the action items from yesterday's team standup."
32
- - "What themes have come up across my last 30 customer interviews?"
33
- - "Pull every quote from Sarah's recordings about pricing."
30
+ - "Find the last 10 customer interviews that mention pricing, group the feedback by theme, and cite the source recordings."
31
+ - "Summarize this week's team meetings into decisions, action items, owners, and unresolved risks."
32
+ - "Pull exact customer quotes about onboarding friction from recent research calls and format them for a product brief."
33
+ - "Find a strong 30-second highlight from the latest webinar, create a clip, and export captions."
34
34
 
35
35
  The AI does the searching, summarizing, and citing. Your recordings stay in your Speak AI workspace — Claude and ChatGPT just query them through this connector.
36
36
 
@@ -169,13 +169,13 @@ Speak AI ships 83 tools your AI assistant can call. You don't memorize them —
169
169
 
170
170
  | Ask | Tools used (auto) |
171
171
  |---|---|
172
- | "Find every recording about pricing" | `search_media` |
173
- | "Summarize this week's standups" | `list_media`, `get_media_insights` |
172
+ | "Find customer interviews about pricing and group the feedback by theme" | `search_media`, `ask_magic_prompt` |
173
+ | "Summarize this week's meetings into decisions, owners, and risks" | `list_media`, `get_media_insights` |
174
174
  | "Pull action items from yesterday's call" | `get_media_insights`, `ask_magic_prompt` |
175
175
  | "Schedule the AI to join my 2pm Zoom" | `schedule_meeting_event` |
176
- | "Make a 30-second clip of Sarah's quote" | `create_clip` |
177
- | "Export the transcript as a PDF" | `export_media` |
178
- | "Compare themes across all customer interviews" | `search_media`, `ask_magic_prompt` |
176
+ | "Find a 30-second webinar highlight and export captions" | `create_clip`, `export_media` |
177
+ | "Export the transcript as a PDF and captions as SRT" | `export_media` |
178
+ | "Compare Q1 sales calls against Q2 sales calls and summarize changed objections" | `search_media`, `ask_magic_prompt` |
179
179
 
180
180
  Full tool catalog is in the developer reference below.
181
181
 
package/dist/index.js CHANGED
@@ -3604,6 +3604,14 @@ var analytics_exports = {};
3604
3604
  __export(analytics_exports, {
3605
3605
  register: () => register12
3606
3606
  });
3607
+ function withDefaultSearchDateRange(params) {
3608
+ const now = /* @__PURE__ */ new Date();
3609
+ return {
3610
+ ...params,
3611
+ startDate: params.startDate ?? `${now.getUTCFullYear()}-01-01T00:00:00.000Z`,
3612
+ endDate: params.endDate ?? now.toISOString()
3613
+ };
3614
+ }
3607
3615
  function register12(server, client) {
3608
3616
  const api = client ?? speakClient;
3609
3617
  server.tool(
@@ -3613,11 +3621,11 @@ function register12(server, client) {
3613
3621
  "Returns matching media with sentiment data, tags, and content excerpts.",
3614
3622
  "Use this to find specific topics, keywords, or themes across your entire library.",
3615
3623
  "For filtering by media type, folder, tags, or speakers, use the filterList parameter.",
3616
- "Results are scoped by date range \u2014 defaults to current month if not specified."
3624
+ "Results are scoped by date range \u2014 defaults to current year if not specified."
3617
3625
  ].join(" "),
3618
3626
  {
3619
3627
  query: import_zod12.z.string().min(1).describe("Search query \u2014 searches across transcripts, insights, and metadata"),
3620
- startDate: import_zod12.z.string().optional().describe("Start date for search range (ISO 8601). Defaults to start of current month."),
3628
+ startDate: import_zod12.z.string().optional().describe("Start date for search range (ISO 8601). Defaults to start of current year."),
3621
3629
  endDate: import_zod12.z.string().optional().describe("End date for search range (ISO 8601). Defaults to now."),
3622
3630
  filterList: import_zod12.z.array(
3623
3631
  import_zod12.z.object({
@@ -3637,7 +3645,7 @@ function register12(server, client) {
3637
3645
  },
3638
3646
  async (params) => {
3639
3647
  try {
3640
- const result = await api.post("/v1/analytics/search", params);
3648
+ const result = await api.post("/v1/analytics/search", withDefaultSearchDateRange(params));
3641
3649
  return {
3642
3650
  content: [{ type: "text", text: JSON.stringify(result.data, null, 2) }]
3643
3651
  };
package/package.json CHANGED
@@ -1,8 +1,16 @@
1
1
  {
2
2
  "name": "@speakai/mcp-server",
3
- "version": "1.5.1",
3
+ "version": "1.6.0",
4
4
  "mcpName": "io.github.speakai/mcp-server",
5
5
  "description": "Official Speak AI MCP Server — connect Claude and other AI assistants to Speak AI's transcription, insights, and media management API",
6
+ "homepage": "https://mcp.speakai.co",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/speakai/speakai-mcp.git"
10
+ },
11
+ "bugs": {
12
+ "url": "https://github.com/speakai/speakai-mcp/issues"
13
+ },
6
14
  "main": "dist/index.js",
7
15
  "types": "dist/index.d.ts",
8
16
  "bin": {
@@ -25,7 +33,7 @@
25
33
  "claude",
26
34
  "model-context-protocol"
27
35
  ],
28
- "author": "Speak AI",
36
+ "author": "Vatsal Shah",
29
37
  "license": "MIT",
30
38
  "engines": {
31
39
  "node": ">=22"