@wolpertingerlabs/drawlatch 1.0.0-alpha.35 → 1.0.0-alpha.37
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/CONNECTIONS.md +3 -0
- package/dist/connections/ai/exa.json +24 -0
- package/package.json +1 -1
package/CONNECTIONS.md
CHANGED
|
@@ -29,6 +29,7 @@ Connection templates are loaded when a caller's session is established. Custom c
|
|
|
29
29
|
| `devin` | [Devin AI API](https://docs.devin.ai/api-reference/overview) | `DEVIN_API_KEY` | Bearer token header |
|
|
30
30
|
| `discord-bot` | [Discord Bot API](https://discord.com/developers/docs/intro) | `DISCORD_BOT_TOKEN` | Bot token header (see note) |
|
|
31
31
|
| `discord-oauth` | [Discord OAuth2 API](https://discord.com/developers/docs/topics/oauth2) | `DISCORD_OAUTH_TOKEN` | Bearer token header (see note) |
|
|
32
|
+
| `exa` | [Exa Search API](https://docs.exa.ai/reference/getting-started) | `EXA_API_KEY` | x-api-key header (see note) |
|
|
32
33
|
| `github` | [GitHub REST API](https://docs.github.com/en/rest) | `GITHUB_TOKEN`, `GITHUB_WEBHOOK_SECRET` | Bearer token header (see note) |
|
|
33
34
|
| `google` | [Google APIs](https://developers.google.com/apis-explorer) | `GOOGLE_API_TOKEN` | Bearer token header (see note) |
|
|
34
35
|
| `google-ai` | [Google AI Gemini API](https://ai.google.dev/api) | `GOOGLE_AI_API_KEY` | x-goog-api-key header (see note) |
|
|
@@ -55,6 +56,8 @@ Connection templates are loaded when a caller's session is established. Custom c
|
|
|
55
56
|
|
|
56
57
|
> **Discord note:** Discord has two connection types. `discord-bot` uses the `Bot` authorization prefix for bot tokens, which have full access to most API routes (guilds, channels, messages, etc.). `discord-oauth` uses a standard `Bearer` token obtained via OAuth2, which provides user-scoped access limited to the authorized scopes (identity, guilds list, email, etc.). Both target the same v10 API base URL.
|
|
57
58
|
|
|
59
|
+
> **Exa note:** The Exa Search API uses a custom `x-api-key` header instead of the standard `Authorization: Bearer` pattern. All endpoints are POST requests to `https://api.exa.ai` with a JSON body — the main ones are `/search` (neural or keyword web search), `/contents` (fetch cleaned page text, highlights, and summaries), `/findSimilar` (semantically similar pages), and `/answer` (a sourced answer to a question). Create an API key in the [Exa Dashboard](https://dashboard.exa.ai/api-keys).
|
|
60
|
+
|
|
58
61
|
> **Google AI note:** The Google AI (Gemini) API uses a custom `x-goog-api-key` header instead of the standard `Authorization: Bearer` pattern. This is separate from the `google` connection — use `google` for Workspace APIs (Sheets, Drive, etc.) and `google-ai` for Gemini LLM endpoints. The endpoint is not version-pinned (`generativelanguage.googleapis.com/**`) to allow access to both `v1` and `v1beta` paths.
|
|
59
62
|
|
|
60
63
|
> **Google APIs note:** Google Workspace APIs span many subdomains (sheets.googleapis.com, drive.googleapis.com, etc.). The `google` connection allowlists the most common domains. If you need additional subdomains, add a custom route with the same `GOOGLE_API_TOKEN` secret. For Google AI / Gemini, use the `google-ai` connection instead.
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "Exa Search API",
|
|
3
|
+
"stability": "beta",
|
|
4
|
+
"category": "ai",
|
|
5
|
+
"description": "Exa AI search API — neural and keyword web search, page content retrieval, similarity search, and LLM-grounded answers. Endpoints include /search (find pages by meaning or keyword), /contents (fetch cleaned page text, highlights, and summaries), /findSimilar (semantically similar pages), and /answer (a sourced answer to a question). All calls are POST with a JSON body. Auth is handled automatically via the EXA_API_KEY environment variable, injected as the x-api-key header.",
|
|
6
|
+
"docsUrl": "https://docs.exa.ai/reference/getting-started",
|
|
7
|
+
"headers": {
|
|
8
|
+
"x-api-key": "${EXA_API_KEY}",
|
|
9
|
+
"Content-Type": "application/json"
|
|
10
|
+
},
|
|
11
|
+
"secrets": {
|
|
12
|
+
"EXA_API_KEY": "${EXA_API_KEY}"
|
|
13
|
+
},
|
|
14
|
+
"allowedEndpoints": ["https://api.exa.ai/**"],
|
|
15
|
+
"testConnection": {
|
|
16
|
+
"method": "POST",
|
|
17
|
+
"url": "https://api.exa.ai/search",
|
|
18
|
+
"body": {
|
|
19
|
+
"query": "drawlatch connection test",
|
|
20
|
+
"numResults": 1
|
|
21
|
+
},
|
|
22
|
+
"description": "Runs a minimal search query to verify the Exa API key"
|
|
23
|
+
}
|
|
24
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wolpertingerlabs/drawlatch",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.37",
|
|
4
4
|
"description": "Encrypted MCP proxy with mutual authentication. Local MCP server forwards requests through an encrypted channel to a remote secrets-holding server.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"workspaces": [
|