Bug: MCP server schema forces ARRAY for note content, resulting in literal JSON array formatting in notes #1122
Amirmohammadomidi
started this conversation in
Questions or requests about Poznote
Replies: 1 comment 3 replies
|
Hello, Can you tell me which MCP clients do you use? I don't reproduce this issue with Copilot. Do you use Hermes? |
3 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Since the 6.29.0 update, creating or updating standard note or markdown notes via the MCP server results in the literal JSON array syntax being saved into the note's body.
The tool description for create_note and update_note states that content accepts (string, or JSON array for task lists). However, the actual JSON schema exposed by the MCP server strictly enforces the content field to be of type ARRAY.
Because MCP clients (like Hermes Agent / Claude) strictly follow the schema, they are forced to wrap string content in an array to pass validation (e.g., ["# My Note Content"]). The backend then receives this array and writes its literal stringified JSON representation into the note, bracket characters and all.
Steps to Reproduce:
Expected Behavior:
The MCP server should accept a plain STRING for standard notes, or the MCP handler should unpack/join the array elements into a raw string before passing it to the Poznote backend API when the note_type is not tasklist.
Actual Behavior:
The schema enforces an array, and the backend dumps the serialized array literal into the note body.
Environment:
All reactions