• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

shaikhspeare / wanderlog-mcp / 29289716425
73%

Build:
DEFAULT BRANCH: main
Ran 13 Jul 2026 10:23PM UTC
Jobs 1
Files 39
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

13 Jul 2026 10:23PM UTC coverage: 72.674%. First build
29289716425

push

github

web-flow
feat: add add_section, update_section and delete_section tools (#31)

* feat: add wanderlog_add_section and wanderlog_update_section tools

Adds two new MCP mutation tools:

- wanderlog_add_section: inserts a new custom normal/placeList section
  via a ShareDB li op. Supports optional heading and after_section
  (insert after a named section, or append at end by default).

- wanderlog_update_section: renames a section heading via od+oi op.
  Accepts the current heading as a natural-language reference and
  exits early with no-op if the heading is unchanged.

Shared helpers added to src/tools/shared.ts:
- buildSectionObject(heading): constructs the section shape matching
  the Wanderlog UI's wire format (#3498db marker, empty blocks, etc.)
- findSectionByRef(trip, ref): resolves "places to visit"/"places"
  aliases and case-insensitive heading matches to a section index.

13 new unit tests in tests/unit/add-update-section.test.ts cover
builder shape, ID uniqueness, findSectionByRef resolution, and
applyOp round-trips for both li insert and od+oi heading update.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DJcEMJ3vcwK7KmQYGkjkzK

* feat: allow wanderlog_add_place to target a custom section

Adds an optional `section` parameter to wanderlog_add_place. When
provided, the place is inserted into the named custom section (resolved
via findSectionByRef). When combined with `day`, the tool submits two
independent sets of ShareDB ops — one per target — so the place appears
in both locations.

Key implementation detail: entry.snapshot is read fresh on each loop
iteration because applyLocalOp replaces the snapshot object after every
submitOp. This ensures blocks.length is accurate for the second insert
even when both targets happen to be the same section.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DJcEMJ3vcwK7KmQYGkjkzK

* feat: add wand... (continued)

873 of 1304 branches covered (66.95%)

Branch coverage included in aggregate %.

34 of 64 new or added lines in 3 files covered. (53.13%)

1252 of 1620 relevant lines covered (77.28%)

20.82 hits per line

Uncovered Changes

Lines Coverage ∆ File
27
9.18
src/tools/add-place.ts
3
72.92
src/tools/update-section.ts
Jobs
ID Job ID Ran Files Coverage
1 29289716425.1 13 Jul 2026 10:23PM UTC 39
72.67
GitHub Action Run
Source Files on build 29289716425
  • Tree
  • List 39
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #29289716425
  • 37e5e28c on github
  • Next Build on main (#29289801631)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc