connacto
Back to Decision Log

Decision Log tools

Every tool in this module, with its full description, parameters, and return value. All of them require the module to be active first. See the Decision Log overview for how to turn it on.

CRUD

Core tools

Create, read, update, and delete entries. Every module has exactly these four.

decision_log_add_entry

Add an entry to the user's Decision Log module. Requires the module to be active — see create_database.

Parameters

NameTypeRequiredNotes
decisionstringYesWhat was decided.
contextstringNoThe situation or background that prompted the decision.
options_consideredstringNoThe alternatives that were weighed before deciding.
reasonstringNoWhy this option was chosen over the others.
expected_outcomestringNoWhat was predicted to happen as a result of the decision.
actual_outcomestringNoWhat actually happened after the decision was made.
domaincareer | financial | relationship | health | otherNoDomain for this decision: career, financial, relationship, health, or other.

Returns

The created entry as JSON, including its id.

decision_log_list_entries

List entries in the user's active Decision Log module.

Parameters

NameTypeRequiredNotes
limitnumberNoMax entries to return (default 100, max 500).

Returns

Every entry in the active database, as a JSON array.

decision_log_update_entry

Update fields on an existing Decision Log entry.

Parameters

NameTypeRequiredNotes
entryIdstringYesThe id of the Decision Log entry to update.
decisionstringNoWhat was decided.
contextstringNoThe situation or background that prompted the decision.
options_consideredstringNoThe alternatives that were weighed before deciding.
reasonstringNoWhy this option was chosen over the others.
expected_outcomestringNoWhat was predicted to happen as a result of the decision.
actual_outcomestringNoWhat actually happened after the decision was made.
domaincareer | financial | relationship | health | otherNoDomain for this decision: career, financial, relationship, health, or other.

Returns

The updated or deleted entry as JSON. Returns an error if entryId does not belong to an entry in the active database.

decision_log_delete_entry

Delete an entry from the user's active Decision Log module.

Parameters

NameTypeRequiredNotes
entryIdstringYesThe id of the Decision Log entry to delete.

Returns

The updated or deleted entry as JSON. Returns an error if entryId does not belong to an entry in the active database.

Specialized

Purpose-built tools

Shortcuts and queries shaped around how Decision Log is actually used, so your agent doesn't have to fetch every entry and filter them itself.

decision_log_attach_photo

Attach a photo to an existing Decision Log entry (replacing any photo already on it). If you have the image's raw bytes, pass photo_base64. If the user attached the image in a chat client (e.g. claude.ai), you cannot read its bytes: call this WITHOUT photo_base64 to get a one-time upload link, and give that link to the user so they can upload the photo themselves. The link expires in 30 minutes. Photos are stored privately; the returned viewPath is only viewable signed into the connacto web app as this user.

Parameters

NameTypeRequiredNotes
entryIdstringYesID of the Decision Log entry to attach the photo to.
photo_base64stringNoThe photo, base64-encoded (no data: URI prefix). Omit when you cannot read the image bytes — the tool then returns an upload link for the user instead.
photo_content_typeimage/jpeg | image/png | image/webp | image/heicNoMIME type of the photo, if photo_base64 is set. Defaults to image/jpeg.

Returns

JSON with a private viewPath when photo_base64 was given, or an uploadUrl to hand the user when it was not.

decision_log_list_pending_outcomes

List entries in the user's active Decision Log module whose actual outcome has not yet been recorded.

Parameters

None. Call it with an empty object.

Returns

Entries with an empty or missing actual_outcome, as a JSON array.

decision_log_record_outcome

Convenience tool to record the actual outcome of an existing Decision Log entry without a full update_entry call.

Parameters

NameTypeRequiredNotes
entryIdstringYesThe id of the Decision Log entry to record an outcome for.
actual_outcomestringYesWhat actually happened after the decision was made.

Returns

The updated or deleted entry as JSON. Returns an error if entryId does not belong to an entry in the active database.

decision_log_by_domain

Group all entries in the user's active Decision Log module by domain, returning the number of decisions and the number still awaiting an outcome in each domain. Entries with no domain are grouped under "uncategorized".

Parameters

None. Call it with an empty object.

Returns

One row per domain with its decision count and pending outcome count, as a JSON array.