From 52e39587a0a2d5db4c3dbe79a1fdc0fb97efec52 Mon Sep 17 00:00:00 2001 From: Sweets Sweetman Date: Mon, 29 Jun 2026 19:05:03 -0500 Subject: [PATCH] fix: repoint remaining .com refs missed by api#719 (domain cutover) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Three references outside api#719's touched-domain test suites: - sendApifyWebhookEmail: the Recoup Chat CTA link in the LLM email prompt now uses getFrontendBaseUrl() (→ chat.recoupable.dev in prod) instead of the dead chat.recoupable.com literal (DRY, same centralizer as the other email links). - registerGetApiKeyTool: the MCP tool description + JSDoc pointed the LLM at the dead api.recoupable.com / developers.recoupable.com → api.recoupable.dev / docs.recoupable.dev. - getCatalogsHandler: JSDoc legacy-endpoint reference → api.recoupable.dev. Refs recoupable/chat#1819. Co-Authored-By: Claude Opus 4.8 (1M context) --- lib/apify/sendApifyWebhookEmail.ts | 3 ++- lib/catalog/getCatalogsHandler.ts | 2 +- lib/mcp/tools/registerGetApiKeyTool.ts | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/apify/sendApifyWebhookEmail.ts b/lib/apify/sendApifyWebhookEmail.ts index 29ec19a94..051db1495 100644 --- a/lib/apify/sendApifyWebhookEmail.ts +++ b/lib/apify/sendApifyWebhookEmail.ts @@ -1,6 +1,7 @@ import generateText from "@/lib/ai/generateText"; import { sendEmailWithResend } from "@/lib/emails/sendEmail"; import { RECOUP_FROM_EMAIL } from "@/lib/const"; +import { getFrontendBaseUrl } from "@/lib/composio/getFrontendBaseUrl"; import type { ApifyInstagramProfileResult } from "@/lib/apify/types"; /** @@ -36,7 +37,7 @@ Latest Posts: ${(Array.isArray(profile.latestPosts) ? profile.latestPosts : []). write beautiful html email. subject: New Apify Dataset Notification. you're notifying music managers about new posts being available for one of their roster musician's Instagram profile. include a link to view the instagram profile. - call to action is to open a chat link to learn more about the latest posts using Recoup Chat (AI Agents): https://chat.recoupable.com/?q=tell%20me%20about%20my%20latest%20Ig%20posts + call to action is to open a chat link to learn more about the latest posts using Recoup Chat (AI Agents): ${getFrontendBaseUrl()}/?q=tell%20me%20about%20my%20latest%20Ig%20posts You'll be passed a dataset summary for a musician profile and their latest posts on instagram. your goal is to get the recipient to click a cta link to open a chat link to learn more about the latest posts using Recoup Chat (AI Agents). only include the email body html. diff --git a/lib/catalog/getCatalogsHandler.ts b/lib/catalog/getCatalogsHandler.ts index b383213c2..7d77219e2 100644 --- a/lib/catalog/getCatalogsHandler.ts +++ b/lib/catalog/getCatalogsHandler.ts @@ -8,7 +8,7 @@ import { selectAccountCatalogs } from "@/lib/supabase/account_catalogs/selectAcc * * Lists catalogs linked to the account via `account_catalogs`, ordered by * `created_at desc`. Response body is byte-identical to the legacy - * `GET /api/catalogs?account_id=...` endpoint on `api.recoupable.com`. + * `GET /api/catalogs?account_id=...` endpoint on `api.recoupable.dev`. * * @param request - The incoming request * @param params - Route params containing the account ID diff --git a/lib/mcp/tools/registerGetApiKeyTool.ts b/lib/mcp/tools/registerGetApiKeyTool.ts index fecd49176..5f8b86b28 100644 --- a/lib/mcp/tools/registerGetApiKeyTool.ts +++ b/lib/mcp/tools/registerGetApiKeyTool.ts @@ -10,7 +10,7 @@ import { getToolResultError } from "@/lib/mcp/getToolResultError"; * Registers the "get_api_key" tool on the MCP server. * * Returns the Recoup API key the caller authenticated this MCP connection - * with so the LLM can use it for direct HTTP requests to api.recoupable.com + * with so the LLM can use it for direct HTTP requests to api.recoupable.dev * (via the x-api-key header). The MCP Bearer header is opaque to the LLM by * design, so without this tool, skills that curl /api/* endpoints have no * credential to send. @@ -22,7 +22,7 @@ export function registerGetApiKeyTool(server: McpServer): void { "get_api_key", { description: - "Return the Recoup API key for this session so the LLM can use it for direct HTTP calls to api.recoupable.com (x-api-key header, or Authorization: Bearer). Call this once when invoking any skill that makes raw HTTPS requests to the Recoup REST API — for example the recoup-api skill. The returned value is the same credential the customer used to authenticate this MCP connection. Endpoint reference: https://developers.recoupable.com (and https://developers.recoupable.com/llms.txt for the LLM-readable index).", + "Return the Recoup API key for this session so the LLM can use it for direct HTTP calls to api.recoupable.dev (x-api-key header, or Authorization: Bearer). Call this once when invoking any skill that makes raw HTTPS requests to the Recoup REST API — for example the recoup-api skill. The returned value is the same credential the customer used to authenticate this MCP connection. Endpoint reference: https://docs.recoupable.dev (and https://docs.recoupable.dev/llms.txt for the LLM-readable index).", inputSchema: z.object({}), }, async (_args, extra: RequestHandlerExtra) => {