Skip to content

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

Open
benfrank241 wants to merge 2 commits into
mainfrom
feat/eve-integration
Open

feat(eve): add Eve agent-framework MCP connection helper#2280
benfrank241 wants to merge 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.

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).
@benfrank241 benfrank241 marked this pull request as ready for review June 23, 2026 13:53
@benfrank241 benfrank241 force-pushed the feat/eve-integration branch from 37f8bab to 6301025 Compare June 23, 2026 13:53
- 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.
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