project_save
Add or change a person, family, source or research lead in the project. Every change of an existing record is logged with the old and new value, the reason and the documents. Save the source first, then cite its S-id.
Instructions
Add or change a person, family, source or research lead in the project. Every change of an existing record is
logged with the old and new value, the reason and the documents. Save the source first, then cite its S-id.
In a gene-archive site folder the change goes through gene apply: refused if it adds an error, logged, committed
to git under the owner's name, and the site is rebuilt. In a .ged file only the changed lines are rewritten (everything
else in the file stays as it was), a copy is kept, and gedcom_changes shows the lines. Ask the user before writing
into their archive or tree.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"project": "<project>",
"kind": "<kind>",
"record": "<record>"
},
"name": "project_save"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | ||
| delete | No | ||
| reason | No | Why this was added or changed — kept in the corrections log | |
| record | Yes | Fields. person: given_names, surname, sex (M/F), birth/death/burial {date, place_as_recorded, source_ids, note}, notes, research_status ('confirmed' | 'probable' | 'unlinked_candidate'). family: partners [ids], children [ids], marriage {date, place_as_recorded, source_ids}, source_ids. source: title, kind (parish_register, census, military, civil_record, family_document, photo, book, web…), locator (archive, fond, opis, delo, folio — or film/image), url, scope (what it says: transcription). lead: title, record (where), person_id, url, next (required specific next step), checked (ISO date or null), status (open|active|waiting_owner|reading_room|closed), blocked_by (owner task/missing document), resolution, stage (family|civil_registry|existing_documents|primary_records|secondary_sources), stage_result (required when advancing), expected_sources [source ids to check before advancing]. Pass "id" to update an existing record (a field set to null is removed). | |
| dry_run | No | Check the change and show it without writing — use it to show the user what will be saved | |
| project | Yes | Project name, the path of a gene-archive site folder, or the path of a .ged file | |
| source_ids | No | Sources (S…) that prove it |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||