npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

little-compass-mcp

v0.1.2

Published

Authenticated Little Compass travel CRM MCP connection for desktop assistants

Readme

Little Compass MCP

Connect Claude Desktop, Claude Code, Codex, and other stdio MCP clients to your Little Compass travel CRM. Requires Node.js 22.14 or later and a Little account with access to an agency workspace.

Connect

npx --yes [email protected] login

Sign into Little, select your agency, enter the connection purpose and review access. Default access covers identity and CRM reads. For advisors, team leaders and owners, request CRM drafts, ordinary booking reminder lifecycle, agency submission reporting, reviewed proposal publication and personal onboarding controls with:

npx --yes [email protected] login --scopes advisor

Review these permissions in Little. Existing connections gain no new scopes; run login again to consent to newly supported workflow commands.

Proposal publication needs separate proposals:publish plus records:read consent. Join every preview JSON chunk; only the terminal chunk returns the publication reviewHash. Publishing creates the native invitation and sends no email. Bearer links stay outside MCP; use native reviewed invitation recovery to share later.

Owners can update existing contact name, phone and private notes with separate client-details:manage and records:read consent. Read the current stateVersion from get_client or get_record_context summary, then retry the exact UUID/input after uncertain results. Changed email addresses require reviewed native reassociation. Existing credentials gain no permission automatically.

Agency owners can review all currently enabled tools, including owner operations:

npx --yes [email protected] login --scopes all
npx --yes [email protected] status

Add this to your assistant's MCP configuration:

{
  "mcpServers": {
    "little-compass": {
      "command": "npx",
      "args": ["--yes", "[email protected]"]
    }
  }
}

For Claude Code:

claude mcp add little-compass -- npx --yes [email protected]

For Codex:

codex mcp add little-compass -- npx --yes [email protected]

Restart the assistant connection after login. MCP tool discovery comes directly from Little: your reviewed scopes, role, agency membership, feature availability and current record permissions determine the tools and records you can access. The package does not keep a second tool catalog or bypass the CRM's write rules. Full consent does not grant roles or turn on unavailable product features.

Vacation supplier searches use that same connection and the records:read scope. After the backend change is deployed, get_vacation_search_status reports this agency's resort coverage and search_vacation_stays searches verified properties when production supplier access is configured. Missing credentials or brand coverage return an explicit unavailable result. Provider keys stay on the backend; they are never added to your assistant configuration. Disney Cruise Line price research uses search_latest_cruises with company: "disney". These tools do not make reservations or payments. See the repository's provider setup notes for activation requirements and the pending Traveltek and Trisept integrations.

The all preset includes owner scopes and cannot be authorized by staff. Staff should use advisor or an explicit list of scopes their role permits.

Complete evidence reads

The package exports readComplete(client, discoveredTool, arguments) for direct payout-invoice, coaching-policy, cost-allocation, receipt-review, statement-intake, supplier-collection, published-performance, private financial-performance, reporting-definition, goal, authored compensation, financial-close, insurance-finance and agency program billing reads. Pass the tool definition returned by current discovery. It requires readOnlyHint: true and a supported snapshot.continuation protocol; it never automates writes. Complete evidence reads require the corresponding backend continuation protocol to be deployed before they are available through the published npm connection.

import { readComplete } from 'little-compass-mcp';
const evidence = await readComplete(client, discoveredTool, originalArguments);
// JSON: evidence.value; directories: evidence.rows and complete evidence.pages.

Protocol version 1 uses the existing cursor argument. kind: "json" joins exact jsonChunk values in offset order, verifies a fixed evidence hash and length, and parses only on action: "done". Native fixedArguments preserve a generated coaching review deadline across chunks. kind: "directory" uses advance, split, retry or done. A split drains (cursor, splitCursor] and (splitCursor, continueCursor] through endCursor, recursively, before resuming the original range; terminal splits also drain both children. Retry preserves the same range at limit 1. Empty nonterminal pages still advance. Cursor values remain in their existing fields; metadata duplicates no tokens. Whole JSON reads start without a cursor; resume a partial artifact through the original tool and its guide. Directory cursor/endCursor inputs select the exact range to complete.

Every call retains original filters and rechecks current native authority. Failures and the default 1,000-call budget return no partial success. Pass { maxCalls, signal } as the fourth argument to bound or cancel a read. Restart after tool, filter, authority or evidence changes. Directory pages remain live views, rather than frozen population totals. Complete reads do not supply human approval, domain authorization or evidence omitted by the native tool. Nested cursor readers retain their canonical guide and existing protocol.

Connection lifetime and privacy

New Little MCP connections last up to 365 days. You or your agency owner can revoke them at any time; current membership and permissions are checked on every call. Existing connections keep their original expiration and require one new login to receive the longer lifetime. After expiration, log in again and restart the assistant connection. There is no automatic replay of failed writes; check Little and keep the original operation/request ID before retrying.

Credentials are stored in ~/.config/little-compass-mcp/session.json, accessible only to your OS user. They are not printed or included in assistant settings. The callback listens only on 127.0.0.1:54876 while logging in and closes after completion or five minutes. Only one login can use that port at a time.

npx --yes [email protected] logout

Logout removes local credentials. To revoke server access immediately, use Little's Settings → Connections page; agency owners can also revoke access. Do not share session files, private consent links, tokens or authorization codes. For a terminal without automatic browser launch, use login --no-browser and open the displayed private link yourself.

Hosted connection

Default server: https://industrious-clownfish-714.convex.site/mcp. The public npm package is a stdio connection to this authenticated hosted server; CRM data remains behind Little's account and agency authorization. An alternate Little deployment can be selected with --server https://host/mcp, but it must register client little-compass-mcp with the exact callback http://127.0.0.1:54876/callback. Sessions are bound to the server they authorize.

Support: [email protected]. Website: Little Compass.

Releasing the 365-day connection update

Publish package 0.1.1 before deploying the backend lifetime change and the updated connection setup UI. Version 0.1.0 rejects token lifetimes over one hour; users of that version must update their assistant's package entry to 0.1.1 and run login again. Existing tokens keep their recorded expiration. This release does not extend existing consent, create refresh tokens or replay tool calls.

Security update in 0.1.2

Version 0.1.2 updates the MCP SDK to 1.32.2 and Zod to 4.6.7, and refreshes the dependency lockfile to patched transitive versions. Update any assistant configuration pinned to 0.1.1 to 0.1.2 and restart the MCP connection. Existing valid sessions remain usable; this update adds no scopes.