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

@licentium/compass-mcp

v1.0.1

Published

MCP server for Compass: ground your LLM in EU financial, crypto and AI regulation, verbatim and cited.

Readme

compass-mcp

An MCP server that grounds your LLM in EU financial, crypto and AI regulation via Compass. Add it to Claude Desktop, Cursor, or any MCP host, and the model can pull the governing EU provisions, verbatim and article-cited, before it answers.

It exposes two tools over Compass's public grounding API:

  • compass_retrieve: a question in, the top governing provisions out (verbatim text, article-level citations, cross-references) from the core EU acts (MiCA, DORA, MiFID II, the AML package, the AI Act, GDPR and more).
  • compass_verify: check that a quote is a verbatim span of a specific provision, so the model never misquotes the law.

1. Get an API key

Create a key at compass.licentium.ai/developers. It looks like ck_live_.... The first calls are free; after that, usage is metered against your Compass credits. Keep the key secret.

2. Install and build

git clone <this-repo> compass-mcp
cd compass-mcp
npm install
npm run build

This produces dist/index.js. (Once published to npm, hosts can run it with npx -y @licentium/compass-mcp and skip the clone/build.)

3. Configure your MCP host

Set COMPASS_API_KEY to your key in the server's environment.

Claude Desktop

Edit claude_desktop_config.json (Settings → Developer → Edit Config):

{
  "mcpServers": {
    "compass": {
      "command": "node",
      "args": ["/absolute/path/to/compass-mcp/dist/index.js"],
      "env": { "COMPASS_API_KEY": "ck_live_your_key_here" }
    }
  }
}

Restart Claude Desktop. You should see compass_retrieve and compass_verify in the tools list.

Cursor

Add to ~/.cursor/mcp.json (or the project's .cursor/mcp.json):

{
  "mcpServers": {
    "compass": {
      "command": "node",
      "args": ["/absolute/path/to/compass-mcp/dist/index.js"],
      "env": { "COMPASS_API_KEY": "ck_live_your_key_here" }
    }
  }
}

Any other MCP host

Run the binary over stdio with COMPASS_API_KEY set:

COMPASS_API_KEY=ck_live_your_key_here node dist/index.js

Tools

compass_retrieve

| Param | Type | Notes | | ------- | ------ | -------------------------------------------------------- | | query | string | A regulatory question in plain language. | | top_k | number | Optional. Provisions to return, 1 to 20 (default 8). |

Returns the governing provisions as verbatim text, each with its reference (e.g. MiCA, Article 59), a node_id, and any cross-references. Feed a node_id into compass_verify to confirm a quote.

compass_verify

| Param | Type | Notes | | --------- | ------ | -------------------------------------------------- | | node_id | string | The node_id of a provision from compass_retrieve. | | quote | string | The exact text you intend to attribute to it. |

Returns whether the quote is a verbatim span of that provision.

Configuration

| Env var | Required | Default | Notes | | ------------------ | -------- | -------------------------------- | ---------------------------------------- | | COMPASS_API_KEY | yes | (none) | Your ck_live_ key. | | COMPASS_API_URL | no | https://compass.licentium.ai | Override only for self-hosted endpoints. |

Notes

Compass returns primary-law text only. It is a research and scoping tool, not legal advice. When the corpus does not govern a question, compass_retrieve returns nothing rather than guessing, so instruct your model not to assert an ungrounded answer.

Logs go to stderr so they never corrupt the stdio JSON-RPC stream.