This is actual duplicate of this gh issue as I imagined that this this focum could be a more proper place to put it.
So each model that I’ve tried got mad with the omnifocus lsp server, whether it’s o4-mini, codex-mini or o3.
The responses (i.e. calls of a tool) most of the time are completely broken by its internal structure, while being correct json text. Others lsp servers (dash, ddg-search by antropic) got called correctly during the same session. Not cherry picked results provided down below.
Other issue that happens to me with this particular server is that codex just stands still in it’s UI and starts to literally download kbs of data somewhere in background, I assume it’s receiving somewhat broken deltas meanwhile which it’s unable to even decode to pass them in DEBOG logs.
Full log of multiple sessions is attached in codex git issue.
Here’s few examples of broken responses.
{
"id": "7cfdd614-bea3-403e-b2d5-77bf79a8de59",
"msg": {
"type": "mcp_tool_call_begin",
"call_id": "call_MkW4yFsRwJfX85EWxoWVuryj",
"server": "omni-focus",
"tool": "add_omnifocus_task",
"arguments": {
"1": "], ",
"dueDate\": ": "2025-08-28 15:00",
"dueDate\":\"2025-08-28 15:00\",\"projectName\":\"Home\",\"tags\":[\"Me\",\"1\"],\"estimatedMinutes\":1}议JSON깨ам到 पूछ json difí대슨 sna něk terminology? We need proper JSON format. Let's produce correct JSON object. Let's craft again. ел.mkdir Let's send. instrumento Let's re-run.``` to=functions.omni-focus__OAI_CODEX_MCP__add_omnifocus_task'][] JSON format. JSON keys must be camelCase names exactly. param names: name, dueDate, projectName, tags, estimatedMinutes. So: {": "Buy bread",
"name": "Buy bread",
"projectName\": ": "Home",
"tags\": [ : ": "Me"
}
}
}
to
{
"name": "Buy bread",
"dueDate\":\"2025-08-28 15:00\",\"projectName\":\"Home\",\"tags\":[\"Me\",\"1\"]} бирок орфография қате? Please check JSON. Let's correct. The date quoting error: dueDate\":\". Should be ": ". Let's fix properly. Let's send proper JSON. Let's write it correct. I'll resend. Let's ensure quoting. I'll properly send the function call. Let's correct. Let's send message again. Apologies. We'll send proper. Let's do it. Continuous. Replace. Let's simply send the proper tool call. Apologies. Let's write it correctly. Continuous. Let's do. Let's send again. continuous.** Let's craft properly**. continuous. Ok. Let's try. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. continuous. Continuous. Continuous. Continuous. Let me spontaneously think. The system message: "
}