jcfischer / jcfischer/supertag-cli

tana_sync MCP tool crashes supertag-mcp process after successful completion

Open
#97 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
49
Forks
7
PR merge metrics
No merged PRs in 30d

Description

Version: 2.5.10

Description

Calling the tana_sync MCP tool causes the supertag-mcp process to crash immediately after the tool completes successfully. The tool itself runs to completion (the sync succeeds and is logged as successful), but the process then emits a malformed response that terminates the MCP connection. All subsequent tool calls on that session fail.

Steps to reproduce

  1. Connect to supertag-mcp via an MCP client (tested via agentgateway proxying stdio)
  2. Call the tana_sync tool
  3. Tool completes and logs success
  4. supertag-mcp process exits/crashes

Observed behaviour

The agentgateway transport layer logs:

Error reading from stream: serde error expected value at line 1 column 1

All subsequent calls on the session return upstream closed on receive. The supertag-mcp process is dead.

Expected behaviour

tana_sync completes and the process remains alive and responsive.

Notes

  • The sync itself succeeds — data is indexed correctly. This is purely a post-completion crash in the MCP response serialisation.
  • supertag-mcp's own logs confirm Tool executed successfully before the crash — the error is in the final response write, not the sync logic itself.
  • The serde error (expected value at line 1 column 1) indicates supertag-mcp is closing stdout or exiting without writing a valid JSON response after the tool completes.
  • This is reproducible through agentgateway (stdio transport) but the root cause is in supertag-mcp, not the transport layer — stdio is standard MCP transport.
  • Workaround: kill the process and reconnect — the new session works normally.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the tana_sync MCP tool entry point and trace the response written after the successful sync, using the stdio transport and the serde error expected value at line 1 column 1 failure as the signal. Reproduce through an MCP client or agentgateway, then verify that a valid response is emitted and the process remains available for a second tool call.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
api
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.