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

scrapbox-cosense-mcp

v0.7.3

Published

MCP server for cosense

Readme

scrapbox-cosense-mcp

日本語ドキュメント / Japanese

Overview

MCP server for Cosense (formerly Scrapbox).

| Tool | Description | Auth Required | |------|-------------|:---:| | get_page | Get page content, metadata, and links | For private projects | | list_pages | Browse pages with sorting and pagination (max 1000) | For private projects | | search_pages | Full-text search with keyword highlighting (max 100 results) | For private projects | | create_page | Create a page via WebSocket API with Markdown/Scrapbox body | Yes | | get_page_url | Generate direct URL for a page | No | | insert_lines | Insert text after a specified line in a page | Yes | | get_smart_context | Get a page and its linked pages (1-hop/2-hop) in AI-optimized format | Yes |

create_page and insert_lines support a format parameter ("markdown" or "scrapbox") to control content conversion.

Quick Start

Desktop Extension (.mcpb) — Easiest

  1. Download scrapbox-cosense-mcp.mcpb from GitHub Releases
  2. Double-click — Claude Desktop opens an install dialog
  3. Enter your project name (and Session ID for private projects)

Claude Code Plugin

  1. Add the marketplace:
    /plugin marketplace add worldnine/scrapbox-cosense-mcp
  2. Install the plugin:
    /plugin install scrapbox-cosense@worldnine-scrapbox-cosense-mcp
    Installs globally by default. Use --scope project or --scope local for other scopes.
  3. Set environment variables in your settings file:
    {
      "env": {
        "COSENSE_PROJECT_NAME": "your_project_name",
        "COSENSE_SID": "your_sid"
      }
    }
    | File | Scope | |------|-------| | ~/.claude/settings.json | All projects (global) | | .claude/settings.local.json | This project only (gitignored) |

The plugin includes MCP server configuration and a /cosense skill for CLI operations.

Claude Code (Manual MCP Setup)

If you prefer manual configuration over the plugin:

claude mcp add scrapbox-cosense-mcp \
  -e COSENSE_PROJECT_NAME=your_project \
  -e COSENSE_SID=your_sid \
  -- npx -y scrapbox-cosense-mcp

Claude Desktop / Other MCP Clients

Add to your config file:

| Client | Config File | |--------|-------------| | Claude Desktop (macOS) | ~/Library/Application Support/Claude/claude_desktop_config.json | | Claude Desktop (Windows) | %APPDATA%/Claude/claude_desktop_config.json | | Cursor | .cursor/mcp.json (project root) | | Windsurf | ~/.codeium/windsurf/mcp_config.json |

{
  "mcpServers": {
    "scrapbox-cosense-mcp": {
      "command": "npx",
      "args": ["-y", "scrapbox-cosense-mcp"],
      "env": {
        "COSENSE_PROJECT_NAME": "your_project_name",
        "COSENSE_SID": "your_sid"
      }
    }
  }
}

Build from Source

git clone https://github.com/worldnine/scrapbox-cosense-mcp.git
cd scrapbox-cosense-mcp
npm install && npm run build

Configuration

Required

| Variable | Description | |----------|-------------| | COSENSE_PROJECT_NAME | Your Scrapbox/Cosense project name | | COSENSE_SID | Session ID (connect.sid cookie) for private projects — How to get it |

Optional

| Variable | Default | Description | |----------|---------|-------------| | API_DOMAIN | scrapbox.io | API domain | | SERVICE_LABEL | cosense (scrapbox) | Display name in tool descriptions | | COSENSE_PAGE_LIMIT | 100 | Initial page fetch limit (1–1000) | | COSENSE_SORT_METHOD | updated | Initial sort: updated, created, accessed, linked, views, title | | COSENSE_TOOL_SUFFIX | — | Tool name suffix for multiple instances (e.g. mainget_page_main) | | COSENSE_CONVERT_NUMBERED_LISTS | false | Convert numbered lists to bullet lists in Markdown conversion | | COSENSE_EXCLUDE_PINNED | false | Exclude pinned pages from initial resource list |

CLI Usage

The same binary also works as a standalone CLI:

scrapbox-cosense-mcp get "Page Title"
scrapbox-cosense-mcp search "keyword"
scrapbox-cosense-mcp list --sort=updated --limit=20
scrapbox-cosense-mcp create "New Page" --body="Markdown content"
scrapbox-cosense-mcp insert "Page" --after="target line" --text="new text"
scrapbox-cosense-mcp url "Page Title"

| Flag | Description | |------|-------------| | --compact | Token-efficient compact output (recommended for AI agents) | | --project=NAME | Override project name | | --json | Output as JSON | | --help | Show help (supports <command> --help for details) |

Multiple Projects

All tools accept an optional projectName parameter to target a different project from a single server. For multiple private projects with different credentials, run separate server instances with COSENSE_TOOL_SUFFIX.

See docs/multiple-projects.md for detailed configuration examples.

Development

| Command | Description | |---------|-------------| | npm run build | Build (TypeScript → JavaScript) | | npm run watch | Auto-rebuild during development | | npm test | Run test suite | | npm run lint | Run ESLint | | npm run inspector | Debug with MCP Inspector |

Contributing

  1. Create a feature branch from main
  2. Add tests for your changes
  3. Run npm run lint && npm test
  4. Create a pull request — CI runs automatically

License

MIT


MseeP.ai Security Assessment Badge