Integrate Cove

Cove is a single service with three doors: REST, TypeScript SDK, and MCP. Every request is scoped to one bot by its API key.

1. REST API

Send a customer message to /api/v1/chat. Pass the same conversationId to keep follow-ups in context. The response includes citations and suggestions for follow-up chips.

curl -s https://covetechnologies.vercel.app/api/v1/chat \
  -H "Authorization: Bearer cove_live_..." \
  -H "Content-Type: application/json" \
  -d '{"message":"How do I reset my password?"}'

Search without answering: POST /api/v1/search with { "query": "billing" }. Widget chrome (name, welcome, suggestions) is GET /api/v1/widget.

2. TypeScript SDK

Copy sdk/index.ts into your app. It is a thin fetch wrapper with no runtime dependencies.

import { Cove } from "./sdk";

const cove = new Cove({
  apiKey: process.env.COVE_API_KEY!,
  baseUrl: "https://covetechnologies.vercel.app",
});

const result = await cove.chat({
  message: "How do I invite a teammate?",
  metadata: { userId: "user_123" },
});

console.log(result.reply, result.citations, result.suggestions);

3. MCP

Point Cursor or another MCP client at the stdio server, or POST JSON-RPC to /api/mcp. Tools: cove_ask, cove_search, cove_list_articles.

{
  "mcpServers": {
    "cove": {
      "command": "node",
      "args": ["mcp/server.mjs"],
      "env": {
        "COVE_URL": "https://covetechnologies.vercel.app",
        "COVE_API_KEY": "cove_live_..."
      }
    }
  }
}
curl -s https://covetechnologies.vercel.app/api/mcp \
  -H "Authorization: Bearer cove_live_..." \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

4. Embed widget

Drop this script on any page for a floating Ask button. The widget loads the bot name, welcome line, and suggested questions from GET /api/v1/widget, then chats through the same /api/v1/chat route as the dashboard playground — including citations, follow-up chips, and a typing state. The key is treated as a publishable widget key.

<script
  src="https://covetechnologies.vercel.app/embed.js"
  data-api-key="cove_live_..."
  data-base-url="https://covetechnologies.vercel.app"
  data-title="Support"
  data-position="right"
></script>

Optional attributes: data-title overrides the header, data-position is right or left, and data-accent sets the bubble color (default #c9843a).

Optional LLM

Cove answers from your articles with a retrieval engine so the demo works without a model key. Set AI_GATEWAY_API_KEY or OPENAI_API_KEY to generate replies with an LLM while still grounding on the same knowledge base.

Accounts and plans

Creating and editing bots requires a signed-in Cove account. Chat, search, and MCP still authenticate with the bot API key so agents and widgets do not need a user session. Free includes one bot, eight articles, and 200 chats per month. Pro is $19/month.