Skip to content

feat(eve): add Eve agent-framework MCP connection helper#2280

Merged
benfrank241 merged 2 commits into
mainfrom
feat/eve-integration
Jun 24, 2026
Merged

feat(eve): add Eve agent-framework MCP connection helper#2280
benfrank241 merged 2 commits into
mainfrom
feat/eve-integration

Conversation

@benfrank241

Copy link
Copy Markdown
Member

What

Adds a first-party Eve integration: @vectorize-io/hindsight-eve, a thin helper that wraps Eve's defineMcpClientConnection so an Eve agent gains Hindsight long-term memory by dropping one file under agent/connections/:

// agent/connections/hindsight.ts
import { defineHindsightConnection } from "@vectorize-io/hindsight-eve";
export default defineHindsightConnection(); // reads HINDSIGHT_MCP_URL + HINDSIGHT_API_KEY

The helper pre-fills Hindsight's MCP endpoint, a model-facing description, and bearer auth, with env-var defaults (HINDSIGHT_MCP_URL, HINDSIGHT_API_KEY, HINDSIGHT_MCP_BANK_ID). Supports tool filters and human-in-the-loop approval passthrough. The model sees connection__hindsight__{recall,retain,reflect}; URL/token never reach it.

Why a draft / backup

The preferred home for this is Eve's own connection catalog — proposed upstream in vercel/eve#55. That hinges on a maintainer decision about non-Connect (bearer) auth. This in-repo integration ships value to Hindsight users regardless of that outcome, and remains a convenience wrapper even if the catalog entry lands. Keeping it draft until the upstream direction is settled.

Shape

Mirrors the ai-sdk integration exactly:

  • src/index.ts — pure resolveHindsightConnection (env/option precedence + Cloud-needs-key validation) + buildHindsightConnectionDefinition + defineHindsightConnection.
  • vitest (12 tests, incl. a real-eve smoke test) + tsup build, own package-lock.json.
  • test-eve-integration CI job (Node 24, per Eve's engine requirement) wired into report-pr-status.
  • Registered in release-integration.sh and generate_changelog.py.
  • Docs gallery entry + docs-integrations/eve.md (passes check-integrations.mjs).

Checks

npm test / npm run build, check-integrations.mjs, check-integration-lockfiles.sh, and lint.sh all green locally.

Follow-up

  • static/img/icons/eve.svg is a placeholder wordmark — swap for the official Eve mark before release.

@benfrank241 benfrank241 marked this pull request as ready for review June 23, 2026 13:53
@benfrank241 benfrank241 force-pushed the feat/eve-integration branch 2 times, most recently from 3d1494f to a93dbb4 Compare June 24, 2026 14:40
Add @vectorize-io/hindsight-eve: a thin helper that wraps Eve's
defineMcpClientConnection to wire an Eve agent into a Hindsight MCP
server in one line, pre-filling the endpoint, model-facing description,
and bearer auth with env-var defaults (HINDSIGHT_MCP_URL,
HINDSIGHT_API_KEY, HINDSIGHT_MCP_BANK_ID).

Mirrors the ai-sdk integration: vitest + tsup, own package-lock.json,
test-eve-integration CI job (Node 24), release + changelog registration,
docs gallery entry and page.

In-repo backup for vercel/eve#55 (preferred upstream home is Eve's
own connection catalog).
- Reword DEFAULT_DESCRIPTION JSDoc: it's surfaced when the agent discovers
  this connection's tools (connection__hindsight__{retain,recall,reflect}),
  not via connection__search (stale copy-paste).
- Add approval-passthrough tests (and a no-approval case) alongside the
  existing tools-passthrough coverage.
- Match the Hindsight Cloud auth guard on host instead of exact URL, so a
  trailing slash or regional subdomain still raises the friendly missing-key
  error; add tests including a look-alike-host negative case.
- Note in code that the { token } auth shape rides on eve 0.11's contract.
- Replace the placeholder eve.svg wordmark with Eve's actual triangle mark.
@benfrank241 benfrank241 force-pushed the feat/eve-integration branch from a93dbb4 to 6f3b7d2 Compare June 24, 2026 17:52
@benfrank241 benfrank241 merged commit d0b77f5 into main Jun 24, 2026
100 of 101 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant