🪲 Bugs
Under Review

Issue with the Capacities integration in ChatGPT that prevents automated maintenance of my Capacities objects

Summary of the issue

The updateObjectViaMD operation in the Capacities MCP connector returns a successful response when updating an existing object's properties. However, the requested changes are not saved.

Subsequent calls to getObjectContent return the original property values, and the object's lastUpdated timestamp remains unchanged.

I have isolated the issue through repeated tests and confirmed that:

  • Manual property updates in the Capacities application work correctly.
  • ChatGPT can read manually updated properties correctly.
  • The connector can successfully add content blocks to an existing object.
  • The connector's structured property updates are acknowledged but do not persist.

Environment

  • Application: Capacities
  • Integration: Capacities MCP connector in ChatGPT
  • Client: ChatGPT web application
  • Operating system: Windows
  • Browser: Chrome
  • Date of testing: October 9, 2026
  • Capacities object type: Image (MediaImage)
  • Affected operation: updateObjectViaMD
  • Verification operation: getObjectContent
  • Additional operation tested: addBlock

I have not independently verified the installed MCP server version or its underlying Capacities API version.

Test object

Object name: Cover_-_Flowers_for_Algernon_-_Daniel_Keyes

Object ID:

01a9be05-7894-404c-930d-31d19e91e54b

Object type ID:

MediaImage

Space ID:

b4f139b8-76d0-4dc0-a42d-8d5ec17103b1

Direct object URL:

https://app.capacities.io/b4f139b8-76d0-4dc0-a42d-8d5ec17103b1/01a9be05-7894-404c-930d-31d19e91e54b

Steps to reproduce

  1. Retrieve the object using getObjectContent and confirm that Category and Description are empty.
  2. Retrieve the authoritative Image object schema using getObjectTypeShape, specifying Image.
  3. Confirm the schema includes:
  4. Call updateObjectViaMD for the test object, supplying YAML frontmatter to update Category and Description.
  5. Observe that the connector returns the object ID and URL without an error.
  6. Call getObjectContent again.
  7. Observe that both properties remain unchanged and lastUpdated has not advanced.

Example request

Operation: updateObjectViaMD

Object ID:

01a9be05-7894-404c-930d-31d19e91e54b

Markdown payload:

---
description: Uploaded artwork associated with Flowers for Algernon; exact edition pending verification.
category: Cover
---

Observed response

The connector acknowledges the operation by returning an object reference:

{
  "id": "01a9be05-7894-404c-930d-31d19e91e54b",
  "structureId": "MediaImage",
  "link": "https://app.capacities.io/b4f139b8-76d0-4dc0-a42d-8d5ec17103b1/01a9be05-7894-404c-930d-31d19e91e54b"
}

No error is returned.

Actual result

A subsequent getObjectContent request showed:

{
  "category": {
    "type": "label",
    "label": []
  },
  "description": {
    "type": "text",
    "text": {
      "value": null
    }
  }
}

The values had not persisted.

This was reproduced using both full YAML frontmatter and frontmatter-only input, as well as separate one-property updates.

Additional diagnostic tests

Test A: Manual update in Capacities

I manually changed the Category property of the same image to Cover through the Capacities application.

Result: Successful.

ChatGPT subsequently retrieved the object through getObjectContent, and the Category property correctly returned Cover.

The object's updated timestamp advanced to:

2026-10-09T23:25:51.066Z

This demonstrates that the property itself is writable and that the connector can retrieve a manually saved property change.

Test B: Add content block through MCP

Operation: addBlock

Object ID:

01a9be05-7894-404c-930d-31d19e91e54b

Content:

"Source identification: Uploaded image filename indicates Flowers for Algernon cover artwork. Visual and edition verification pending."

Result: Successful.

A subsequent getObjectContent call confirmed that the text was saved in the object's body and that the lastUpdated timestamp had advanced.

Test C: Retry structured property update after successful block addition

I repeated updateObjectViaMD after successfully adding the content block.

Result: The operation again returned an acknowledgment, but Category and Description remained unchanged.

Test D: Multiple Image objects

During a cleanup process, five other Image records were submitted for Title, Category and Description changes using updateObjectViaMD.

All five returned acknowledgment responses, but immediate read-back showed unchanged properties.

This suggests the issue is not isolated to a single Image record.

Expected behavior

A successful updateObjectViaMD call should:

  1. Persist the requested property changes.
  2. Preserve unspecified existing properties.
  3. Update the object's modification timestamp.
  4. Make the new property values visible to subsequent getObjectContent calls.
  5. Return an actionable error rather than an apparent success if the update cannot be applied.

Actual behavior

The operation returns a successful-looking object reference, but the requested property values remain unchanged.

Business impact

I'm using ChatGPT and the Capacities connector to maintain an organized personal knowledge library.

My maintenance workflows include:

  • Categorizing and describing images
  • Standardizing filenames and object titles
  • Associating book covers, movie posters and portraits with existing objects
  • Completing metadata for Books, Movies, TV Shows and People
  • Identifying and consolidating duplicate objects
  • Maintaining structured information across multiple object types

During an initial Images cleanup, we inspected 50 records and found that all 50 had empty Category and Description properties.

Because structured updates could not be verified, automated cleanup was stopped to prevent inaccurate completion reporting or unintended changes.

The problem affects the reliability of scheduled knowledge-maintenance operations and may affect other object types that rely on the same update method. However, I have not independently reproduced the issue across every object type.

Questions and requested assistance

Could your technical team please investigate the following?

  1. Is updateObjectViaMD fully supported for updating existing Image object properties through the current ChatGPT MCP connector?
  2. Are category, description and entityTitleName the correct writable frontmatter keys for Image objects?
  3. Is the connector correctly mapping category to media_imageCategory?
  4. Is there a known issue where updateObjectViaMD acknowledges updates but does not persist them?
  5. Could the connector be suppressing API validation errors or returning an object reference even when a write fails?
  6. Is this potentially related to the Capacities API 2.0 migration or differences between older and newer MCP implementations?
  7. Does the ChatGPT integration require any additional permissions, reconnection or configuration for structured property updates?
  8. Is there an alternative supported MCP operation or recommended payload format for reliably updating structured object properties?
  9. Can the operation return explicit confirmation of successfully applied property changes or an error when the write fails?

Requested resolution

Ideally, I would like updateObjectViaMD to reliably update the existing object's structured properties through ChatGPT, with read-back verification.

If this is a known connector defect, I would appreciate confirmation, a recommended workaround and information about the planned fix.

I can reproduce the issue using the existing test object and provide additional request/response details if needed.

Thank you for your assistance.

0 Comments

Sign in to comment

No comments yet. Be the first to share your thoughts!