---
title: "Mcp Propose Duplicate Merge Plan"
method: POST
path: "/v1/mcp/projects/{project_id}/source-duplicates/propose-plan"
tags: ["mcp"]
---

# Mcp Propose Duplicate Merge Plan

`POST /v1/mcp/projects/{project_id}/source-duplicates/propose-plan`

## Request

- Base URL: `https://api.sonenta.dev`
- URL: `https://api.sonenta.dev/v1/mcp/projects/{project_id}/source-duplicates/propose-plan`
- Auth: none declared

'Let AI decide' (task 1385): server-side LLM PROPOSES a merge_plan for a
duplicate group + a reason. PROPOSE-ONLY — apply via set_merge_plan +
apply-cluster / set_status.

## Path parameters

- `project_id` string, required

## Query parameters

- `version_id` string, nullable

## Request body

- ProposePlanIn
  - `source_value` string, required
  - `namespace_slug` string, nullable
  - `regenerate` boolean

## Response `200`

Successful Response

- ProposedPlanOut
  - `source_value` string, required
  - `namespace_slug` string, required
  - `recommendation` string, required
  - `merge_plan` MergePlan
    - `clusters` MergeCluster[], required
      - `canonical_key_uuid` string, nullable
      - `new_key` NewCanonicalKey
        - `name` string, required
        - `namespace` string, required
      - `new_key_created` boolean
      - `redundant_key_uuids` string[], required
      - `applied` boolean
    - `survivor_outcome` string, required
  - `reason` string, required
  - `model` string, nullable
  - `charged` boolean
  - `cost` integer
  - `cached` boolean

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/sonenta/apis/sonenta-api.md) · [All operations](https://skmtc.dev/sonenta/apis/sonenta-api/llms.txt) · [OpenAPI document](https://skmtc.dev/sonenta/apis/sonenta-api/revisions/f853ea49fb05?raw)
