Repository navigation
chore: release every package as 1.0.0, pin installs to @1 - #33
Merged
Merged
Conversation
Fixes:
- name_search with a domain failed on Odoo 19 ("unexpected keyword
argument 'args'"): name and domain are now sent positionally, which
works on 18 (`args`) and 19 (`domain`).
- The request timeout was cleared once headers arrived, so a stalled
body hung forever. AbortSignal.timeout now bounds the body read too.
Changes:
- Move to McpServer.registerTool with strict zod schemas as the single
source of truth; drop the hand-written JSON Schemas, parseOrThrow and
the dispatch switch.
- Collapse the error hierarchy into one OdooError whose message carries
the [CODE] prefix.
- search_read defaults to limit 100 and returns limit_reached: true on a
full page.
- Add readOnlyHint / destructiveHint tool annotations.
- Trim descriptions and instructions (~5.8k -> ~3.3k tokens per session);
instructions now fit under the ~2 KB hosts truncate at.
- Remove dead code: validators.js, clientRegistry.js, index.d.ts,
clearFieldsCache, shutdown handlers.
- Require zod ^3.25 (MCP SDK 1.29 peer range).
BREAKING CHANGE: ODOO_INPUT_INVALID is gone; invalid arguments now
return the SDK's "Input validation error: ..." text. search_read without
a limit now returns at most 100 records.
- Add major changesets for @unclecat/mcp-multi-db and @unclecat/mcp-obsidian. Neither package changed since its last release (0.0.8 / 0.0.2), so the summaries only mark the stable API and the strict semver policy. odoo's major changeset comes from the refactor. - Pin every install command in the READMEs (root, each package, en and vi) to the current major: `npx -y @unclecat/mcp-<x>@1` and `"args": ["-y", "@unclecat/mcp-<x>@1"]`. obsidian moves off `@latest`. - CONTRIBUTING: describe the post-1.0 state instead of "still 0.0.x".
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Every package ships
1.0.0together with the Odoo refactor (#31), and from then on the semver table in CONTRIBUTING applies strictly. Pinning install commands to the major (@1) lets users pick up every fix and feature on restart without ever landing on a breaking release.Stacked on #31 (branch
refactor/odoo-review). Merge #31 first; this PR then shows only its own commit.What changes
@unclecat/mcp-multi-db0.0.8majorchangeset →1.0.0. No code changes since 0.0.8, so the summary only marks the stable API and the semver policy@unclecat/mcp-obsidian0.0.2majorchangeset →1.0.0, same as db (no changes since 0.0.2)@unclecat/mcp-odoo0.0.31.0.0via the existing major changeset from #31 (unchanged here)README.md/README.vi.md)npx -y @unclecat/mcp-<x>, obsidian@latestnpx -y @unclecat/mcp-<x>@1, in both theclaude mcp add ... -- npxlines and the JSON"args"@latest@1: newest 1.x on start, never a breaking 2.00.0.x, 1.0.0 is planned"The
.env.examplefiles and CONTRIBUTING snippets have no install commands, so they didn't need changes.Verification
pnpm changeset status: db, obsidian, odoo all bump at major.git log @unclecat/mcp-multi-db@0.0.8..HEAD -- dband@unclecat/mcp-obsidian@0.0.2..HEAD -- obsidianare both empty, so neither package has breaking changes to list.3.0.0/3.0.1were unpublished; the registry lists only0.0.x), so1.0.0publishes cleanly.libnpmexecre-resolves a range spec like@1against the registry instead of reusing a cached match, sonpx -y …@1picks up new 1.x releases.pnpm -r test(db 203, odoo 50, obsidian 41),pnpm lint, andpnpm formatin each package pass.After merge
Merge the "chore(release): version packages" PR right away. Until
1.0.0is on npm,npx -y @unclecat/mcp-<x>@1from the GitHub README has nothing to resolve to.