Migrate public MCP V1 to V2
Connect to https://api-v2.hive-loop.com/mcp, refresh the cached catalog and replace old direct calls with domain discover, describe and invoke actions. Existing OAuth grants retain their current permissions; request additional consent only for additional authority.
/mcp/legacy returns 410. V1 names and the old search/describe/run helpers are rejected, including with valid tokens. Direct V2 tool calls also move inside domain wrappers. /mcp/core is a root alias; focused domain URLs expose one domain tool.
Reconcile in-flight writes with their original run, invocation and operation IDs before changing names. Never replay an uncertain V1 write as V2: idempotency identities differ. Existing jobs continue; poll their original job_id through domain.workspace.v2 and jobs.status.get.v2. Re-describe pending or expired proposals and obtain required approval.
General imports belong to Accounts; Partner network imports require Partner context. Merge splits into preview and execute. Do not blindly rename transformed discovery-start or merge payloads. Resources retain their unversioned URIs and dispatch through V2. Workflow prompts accept a details argument and guide domain discovery.
| Retired V1 operation | V2 replacement |
|---|---|
accounts.archive.v1 | |
accounts.buyer_groups.get.v1 | |
accounts.classify_buyers.v1 | |
accounts.delete.v1 | |
accounts.discover.get.v1 | |
accounts.discover.start.v1 | |
accounts.duplicates.dismiss.v1 | |
accounts.duplicates.list.v1 | |
accounts.get.v1 | |
accounts.import.preview.v1 | |
accounts.import.v1 | |
accounts.merge.v1 | |
accounts.research.v1 | |
accounts.search.v1 | |
accounts.tags.apply.v1 | |
accounts.tags.list.v1 | |
accounts.update.v1 | |
analytics.campaigns.get.v1 | |
analytics.outcomes.get.v1 | |
analytics.overview.get.v1 | |
analytics.readiness.get.v1 | |
analytics.relationships.coverage.v1 | |
analytics.signals.geography.v1 | |
analytics.tiers.get.v1 | |
campaigns.accounts.reassign_owner.v1 | |
campaigns.archive.v1 | |
campaigns.audience.add.v1 | |
campaigns.audience.preview.v1 | |
campaigns.audience.remove.v1 | |
campaigns.create.preview.v1 | |
campaigns.draft.create.v1 | |
campaigns.get.v1 | |
campaigns.hiveloop.preflight.v1 | |
campaigns.hiveloop.prepare.v1 | |
campaigns.launch.v1 | |
campaigns.linkedin_readiness.get.v1 | |
campaigns.list.v1 | |
campaigns.monitoring.preview.v1 | |
campaigns.monitoring.update.v1 | |
campaigns.pause.v1 | |
campaigns.playbook.bind.v1 | |
campaigns.resume.v1 | |
campaigns.signals.list.v1 | |
campaigns.summary.v1 | |
campaigns.update.v1 | |
connectors.health.v1 | |
contacts.delete.v1 | |
contacts.move.v1 | |
contacts.search.v1 | |
contacts.timeline.get.v1 | |
contacts.update.v1 | |
contacts.verify_employment.preview.v1 | |
contacts.verify_employment.status.get.v1 | |
contacts.verify_employment.v1 | |
drafts.approve.v1 | |
drafts.generate.v1 | |
drafts.get.v1 | |
drafts.list.v1 | |
drafts.update.v1 | |
events.assignments.confirm.v1 | |
events.assignments.get.v1 | |
events.assignments.preview.v1 | |
events.attendance.list.v1 | |
events.enrich.v1 | |
events.enrichment_status.get.v1 | |
events.import.preview.v1 | |
events.import.v1 | |
events.list.v1 | |
events.participant.discover_contacts.v1 | |
events.participant.promote.v1 | |
events.roster.list.v1 | |
events.score.v1 | |
events.scoring_status.get.v1 | |
evidence.resolve.v1 | |
hiveloops.auto_draft.approve.v1 | |
icp.account.breakdown.get.v1 | |
icp.account.history.get.v1 | |
icp.clients.suggest.v1 | |
icp.clients.validation.get.v1 | |
icp.crm.suggest.v1 | |
icp.get.v1 | |
icp.grade.v1 | |
icp.rubric.details.get.v1 | |
icp.rubric.pin.v1 | |
icp.rubrics.list.v1 | |
icp.scope.facets.v1 | |
icp.scope.preview.v1 | |
icp.score.v1 | |
imports.status.get.v1 | |
inbox.item.get.v1 | |
inbox.list.v1 | |
inbox.state.update.v1 | |
inbox.thread.v1 | |
library.buying_role.upsert.v1 | |
library.committee.seed.v1 | |
library.icp.propose.v1 | |
library.icp.save.v1 | |
library.list.v1 | |
library.messaging.upsert.v1 | |
library.overview.v1 | |
library.persona.upsert.v1 | |
library.product.upsert.v1 | |
library.resolve_context.v1 | |
library.signal_type.propose.v1 | |
library.signal_type.save.v1 | |
linkedin.account.get.v1 | |
linkedin.action.preview.v1 | |
linkedin.action.schedule.v1 | |
linkedin.capacity.get.v1 | |
linkedin.playbook.validate.v1 | |
linkedin.relationships.get.v1 | |
loops.activation.preview.v1 | |
loops.draft.create.v1 | |
loops.pause.v1 | |
loops.propose.v1 | |
loops.resume.v1 | |
loops.sendability.get.v1 | |
loops.start.v1 | |
loops.status.get.v1 | |
loops.timeline.get.v1 | |
memory.accepted.list.v1 | |
messages.context.v1 | |
notes.create.v1 | |
notes.delete.v1 | |
notes.list.v1 | |
notes.update.v1 | |
pages.analytics.get.v1 | |
pages.brief.update.v1 | |
pages.draft.create.v1 | |
pages.generate.v1 | |
pages.get.v1 | |
pages.list.v1 | |
pages.templates.list.v1 | |
pipeline.comparison.get.v1 | |
pipeline.dates.get.v1 | |
pipeline.summary.v1 | |
prospects.import.preview.v1 | |
prospects.import.v1 | |
relationships.batch.get.v1 | |
replies.send.v1 | |
signals.feedback.set.v1 | |
signals.search.v1 | |
suppression.check.v1 | |
templates.archive.v1 | |
templates.create.v1 | |
templates.duplicate.v1 | |
templates.get.v1 | |
templates.list.v1 | |
templates.propose.v1 | |
templates.update.v1 | |
workspace.operations.summary.v1 |