Skip to content

Releases: shck-dev/notion-mcp

v0.4.0 — credential-free startup, npx, interactive init, prompts/resources

30 May 14:31
e5c2dea

Choose a tag to compare

Credential-free startup, npx support, interactive init, prompts & resources

Validation & runtime

  • Server boots and enumerates tools/prompts/resources with no credentials (lazy config) — marketplace validators can connect.
  • Compiled to a node bundle: npx @shck-dev/notion-mcp works without Bun (node ≥18).

Interactive setup

  • npx @shck-dev/notion-mcp init (CLI) and the notion_init tool: paste a browser "Copy as cURL" → token/user/workspace extracted → saved to ~/.notion-mcp/config.json (0600).

New surface

  • MCP prompts: notion_setup, notion_search_export.
  • MCP resources: notion://guide, notion://recent.

Fixes

  • Sub-pages export as markdown links; pages with no extractable text return an explanatory note instead of empty output.

Full diff: v0.3.0...v0.4.0

v0.3.0 — to-do/strikethrough, append tool, auth errors

30 May 14:24
a7250f9

Choose a tag to compare

Backfilled release for 0.3.0 (already published to npm).

  • notion_append_to_page / notion_append_to_page_from_file — non-destructive append
  • To-do checkboxes (- [ ] / - [x]) and strikethrough (~~…~~) in markdown
  • Actionable error when the token_v2 cookie is expired/invalid

Commits: 23cc441…a7250f9

v0.2.0 — import fix + comments CRUD

22 Apr 19:05
1082408

Choose a tag to compare

Fixes

  • Import/export was returning empty pages. Notion quietly added an extra .value wrapper in recordMap entries, so every tool that read blocks silently parsed nothing. Unwrapped in one place via a new normalizeBlockMap() + unwrapRecord() helper.
  • notion_export_page now throws a real error on unknown / inaccessible pages instead of returning "".
  • Optional NOTION_DEBUG=1 env var logs raw request/response to stderr for troubleshooting (stdout stays clean for JSON-RPC).

New features

  • notion_list_comments — list open discussion threads on a page, including anchor context, author, and timestamps.
  • notion_add_comment — start a new discussion. Pass anchor_text for an inline comment (yellow-highlighted on the matching text span, preserves existing bold/italic/code on that span); omit it for a block-level comment.
  • notion_reply_comment — reply to an existing thread.

Other

  • Fixed stale table unit test to match the native-table shape from 0.1.8.
  • 77 unit + integration tests passing.