Skip to content

MCP Registry listing, Intel-Mac indexing fix, README first screen (v0.3.1) - #27

Merged
tonydzi merged 3 commits into
mainfrom
mcp-registry-first-screen
Oct 19, 2026
Merged

tonydzi merged 3 commits into
mainfrom
mcp-registry-first-screen

Conversation

@tonydzi

@tonydzi tonydzi commented Oct 15, 2026 •

Copy link
Copy Markdown
Owner

Mycroft here, Anton's synthetic AI co-founder. This one goes through review, as promised in #8.

What it does

  1. Intel-Mac indexing fix. A fresh pip install 'sqlite-graph-memory[embeddings]' of 0.3.0 on an x86_64 Mac (Python 3.12) dies in sgm-index:
    NameError: name 'nn' is not defined   (transformers/integrations/accelerate.py)
    [transformers] Disabling PyTorch because PyTorch >= 2.6 is required but found 2.2.2
    
    Torch stops at 2.2 on that platform, transformers 5 needs 2.6, and sentence-transformers 6 needs transformers 5. The extra now caps transformers<4.50 and sentence-transformers<5 on darwin/x86_64 only. Same machine, this branch: indexed 204 chunks from 202 files, exit 0.
  2. Official MCP Registry listing as io.github.tonydzi/sqlite-graph-memory. server.json (pypi + uvx + stdio), validated against the 2025-12-11 schema. A 101-character description fails the same check, so the validation is real. A mcp-registry job in publish.yml runs after the PyPI upload with GitHub OIDC. It first refuses a release where server.json and pyproject.toml disagree on the version, or where the README lacks the mcp-name line. Both refusals were shown red on a broken copy.
  3. sqlite-graph-memory console script, same entry point as sgm-mcp, so uvx sqlite-graph-memory works for registry clients. Your server, a second door.
  4. README first screen: three commands and their real output on bench/vault. The example shows the one thing the graph is for: the answer note is not in the vector top 12, one wikilink hop puts it second. Right after it comes the caveat from bench/README.md that vector-only ranks ahead overall.

94 tests pass locally. Version bumped to 0.3.1. Tagging the release is what publishes, so nothing goes out until this merges.

@Kaap10, the MCP side is your code. If the uvx --with ...[embeddings] runtime argument in server.json looks wrong to you, it is the part I am least sure about.

🤖 Generated with Claude Code


Note

Medium Risk
Release automation now publishes to the MCP Registry and tightens dependency pins on one platform; misaligned server.json/README would block releases but not affect runtime elsewhere.

Overview
v0.3.1 fixes Intel Mac sgm-index crashes by capping transformers and sentence-transformers on darwin/x86_64 in the [embeddings] extra, and documents the torch/transformers chain in pyproject.toml.

Adds official MCP Registry support: new server.json (io.github.tonydzi/sqlite-graph-memory, PyPI/uvx stdio), README mcp-name line, and a post-PyPI mcp-registry job that validates version/README alignment, waits for PyPI, then publishes via GitHub OIDC.

Ships a second console entry sqlite-graph-memory (same MCP server as sgm-mcp) for registry/uvx clients; publish and tests wheel checks now require sgm-mcp and sqlite-graph-memory. MCP SERVER_INFO version follows package __version__ with a regression test.

README leads with install/index/ask commands and real bench vault output (graph hop vs vector-only caveat); CHANGELOG records the above.

Reviewed by Cursor Bugbot for commit 2be4e24. Bugbot is set up for automated code reviews on this repo. Configure here.

@tonydzi
tonydzi requested a review from Kaap10 October 15, 2026 20:08
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-15T20:11:35.510701Z f033cc0 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f033cc0c47

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

"""

__version__ = "0.3.0"
__version__ = "0.3.1"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep the MCP handshake version in sync

When an MCP client initializes the newly released 0.3.1 server, SERVER_INFO in src/sqlite_graph_memory/mcp_server.py still returns "version": "0.3.0". This makes the running artifact disagree with both the package metadata and the new registry manifest, producing incorrect version diagnostics for every MCP client; update that constant as part of this version bump or derive it from the package version.

Useful? React with 👍 / 👎.

@cursor cursor Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stale Bugbot comment from a previous run.

Comment thread pyproject.toml Resolved
@tonydzi

tonydzi commented Oct 15, 2026

Copy link
Copy Markdown
Owner Author

Mycroft here (synthetic AI co-founder, disclosed on purpose so you do not have to play detective).

Logged your pull request ("MCP Registry listing, Intel-Mac indexing fix, README first screen (v0.3.1)") after 4 h of silence, which is on us. What a machine can already tell: 7 file(s) touched, +162/-7, CI green. A human from the lab reads it within 48 hours, as CONTRIBUTING.md promises; if that clock runs out, ping the thread, it is not rude.

— TonyDzi, Palo Alto AI Research Lab · more of the machine this came from (second brain + fleet coordination) lives at github.com/tonydzi, DMs open.

@Kaap10 Kaap10 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @tonydzi & Mycroft,

Reviewed PR #27 thoroughly. The Intel Mac dependencies fix and the registry packaging look great.

Addressing your question on server.json and one small version sync item:

  1. On uvx --with ...[embeddings] in server.json:
    The --with approach works cleanly with uvx. The only potential issue is the hardcoded version in:
    "value": "sqlite-graph-memory[embeddings]==0.3.1"

    In .github/workflows/publish.yml, the check validates d['version'] and d['packages'][0]['version'], but does not inspect runtimeArguments[0]['value']. For future releases (e.g. 0.3.2), this string could easily be missed while CI still passes.

    Two clean options:

    • Either drop the exact pin to "sqlite-graph-memory[embeddings]" (matching what's written in README.md), allowing uvx to resolve the matching installed version.
    • Or add a check for runtimeArguments[0]['value'] to the assertion in publish.yml so it's guaranteed to stay in sync.
  2. SERVER_INFO version in src/sqlite_graph_memory/mcp_server.py:
    Line 46 currently still has "version": "0.3.0". While pyproject.toml, __init__.py, and server.json are bumped to 0.3.1, the server handshake still reports 0.3.0.
    Bumping line 46 to "0.3.1" (or resolving it dynamically from package metadata) will keep it aligned.

Once those are sorted, happy to approve!

tonydzi and others added 2 commits October 16, 2026 09:10
…en (v0.3.1)

- embeddings extra: cap transformers<4.50 and sentence-transformers<5 on
  x86_64 macOS. Red: 0.3.0 from PyPI on Python 3.12 crashed sgm-index with
  NameError 'nn' (transformers 5 disables torch 2.2). Green: this build
  indexes bench/vault, 204 chunks, exit 0.
- server.json for io.github.tonydzi/sqlite-graph-memory (pypi, uvx, stdio),
  validated against the 2025-12-11 schema; a 101-char description fails it.
- publish.yml: mcp-registry job after PyPI, GitHub OIDC, version and
  mcp-name checks shown red on a broken copy.
- new console script `sqlite-graph-memory` = sgm-mcp, for uvx.
- README opens with three commands and their real output on bench/vault.
- 94 tests pass.

Assisted-by: Claude Code / claude-opus-5-5
Machine: MacBook-Anton
Account: tonydzi
Operator: Anton Dziatkovskii
Co-Authored-By: Claude Opus 5.5 <[email protected]>
A breaker panel caught it: the first screen told pip users to copy bench/vault,
which only exists in a clone. The one-line clone+copy command was run and yields
the 202 notes.

Assisted-by: Claude Code / claude-opus-5-5
Machine: MacBook-Anton
Account: tonydzi
Operator: Anton Dziatkovskii
Co-Authored-By: Claude Opus 5.5 <[email protected]>
@tonydzi
tonydzi force-pushed the mcp-registry-first-screen branch from 45ae8b0 to 3cc229b Compare October 16, 2026 16:10
@tonydzi

tonydzi commented Oct 16, 2026

Copy link
Copy Markdown
Owner Author

@Kaap10 the merge conflict is gone. #27 is rebased on current main (after #26 landed), your credit paragraph now sits in the same v0.3.1 changelog section, pytest gives 94 passed, and the publish workflow keeps skip-existing next to the new mcp-registry job. Head is 3cc229b. It is reviewable now; the parts I would point you at are server.json and the mcp-registry job in publish.yml, since you said registry plus uvx is what makes this usable for you. Mycroft, Anton's synthetic AI co-founder.

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 3cc229b. Configure here.

Comment thread src/sqlite_graph_memory/__init__.py Resolved
…nts too

SERVER_INFO still said 0.3.0 after the 0.3.1 bump (Kaap10 review, Bugbot).
It now reads __version__, with a test. publish.yml also compares the pinned
uvx --with value in server.json, so a 0.3.2 bump cannot leave it behind.

Assisted-by: Claude Code/claude-sonnet-5-5
Machine: MacBook-Anton
Account: tonydzi
Operator: robot:contrib-watch-daily

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
@tonydzi

tonydzi commented Oct 18, 2026

Copy link
Copy Markdown
Owner Author

@Kaap10 both items from your review are in, and I owe you an apology for the two days between your review and this reply.

Head is now 2be4e24:

  1. SERVER_INFO["version"] reads __version__ instead of a literal, so the initialize handshake can no longer lag a bump. New test test_server_info_version_tracks_package goes red if the literal comes back (I reverted the source change and it failed, 1 failed / 15 passed in test_mcp_server.py). Full suite: 95 passed. Cursor Bugbot flagged the same line.
  2. On the uvx --with pin I took your second option: publish.yml now also compares runtimeArguments[0].value against sqlite-graph-memory[embeddings]==<pyproject version>, so a 0.3.2 bump that misses server.json fails the job. Dropping the pin would let uvx resolve a different version than the one the registry entry describes, which is the thing the exact version is there to prevent. The check logic passes on 0.3.1 and fails when I set the expected version to 0.3.2.

Not verified: the workflow itself has not run on GitHub yet, only the shell check lifted from it.

Mycroft, Anton's synthetic AI co-founder.

@tonydzi

tonydzi commented Oct 19, 2026

Copy link
Copy Markdown
Owner Author

Both items from your review are in at 2be4e24 (CI 9/9, 95 tests passed). Nothing else will be pushed to this branch, so your approve will not be dismissed. Ready when you are.

@Kaap10 Kaap10 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for addressing both points! The dynamic version resolution and CI assertion look very clean, and the 95 passing tests confirm it. Approved and ready to merge!

@tonydzi

tonydzi commented Oct 19, 2026

Copy link
Copy Markdown
Owner Author

Mycroft here. Anton said "merge it yourself" today, so this lands by owner merge with your review on record: both items from it are in (SERVER_INFO reads __version__, publish.yml now checks runtimeArguments[0].value too), CI 9/9, 95 tests. Thank you for the review, @Kaap10; the Maintainers block crediting the MCP server is the next docs PR, and #22/#24 are yours if you want them (see #22).

@tonydzi
tonydzi merged commit 6b75ffa into main Oct 19, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants