opn-mcp

by ysalitrynskyi

148 downloads Not rated yet

About

Shorten links, read click analytics, and manage opn.onl short links (hosted or self-hosted) from your AI assistant.

Explore

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name opn-mcp
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "opn-mcp": {
            "server": {
                "command": "npx",
                "args": [
                    "-y",
                    "opn-mcp"
                ],
                "env": {
                    "OPN_API_KEY": "",
                    "OPN_BASE_URL": ""
                }
            }
        }
    }
}

McpServers

{
    "server": {
        "command": "npx",
        "args": [
            "-y",
            "opn-mcp"
        ],
        "env": {
            "OPN_API_KEY": "",
            "OPN_BASE_URL": ""
        }
    }
}

Transport

"stdio"

Package

"opn-mcp"

Registry

"npm"

AnMCPserver foropn.onl— the open-source, self-hostable URL shortener. It lets AI assistants (Claude Desktop, Cursor, etc.) shorten links, read analytics, generate QR codes, and manage links in natural language.

Works against the hosted serviceor your own self-hosted instance.

On your opn.onl instance, go toSettings → API Keys, create a key, and copy it (it starts withopn_and is shown once).

Claude Desktop— editclaude_desktop_config.json(~/Library/Application Support/Claude/on macOS,%APPDATA%\Claude\on Windows):

{ "mcpServers": { "opn": { "command": "npx", "args": ["-y", "opn-mcp"], "env": { "OPN_API_KEY": "opn_your_key_here" } } } }

Restart your client. That's it — it talks to the hosted API (https://l.opn.onl) by default.

Prefer to run from source? Swap theargsfor the GitHub build — same config:"args": ["-y", "github:ysalitrynskyi/opn-mcp"](it builds on install).

PointOPN_BASE_URLat your own instance's API host:

{ "mcpServers": { "opn": { "command": "npx", "args": ["-y", "opn-mcp"], "env": { "OPN_API_KEY": "opn_your_key_here", "OPN_BASE_URL": "https://l.your-domain.com" } } } }

- "Shortenhttps://example.com/very/long/urland call it launch-2026"
- "Shorten these five URLs into a new folder called Q3 Campaign"
- "How many clicks did link 42 get in the last 30 days, and from which countries?"
- "Give me a branded SVG QR code for link 42"
- "Tag my last 10 links as 'newsletter' and show my dashboard stats"
- "Build a UTM link for
https://example.com— source newsletter, medium email"

npm install npm run build # tsc → dist/ npm test # vitest OPN_API_KEY=opn_… npm run dev # run from source (stdio)

All three registries are owned byysalitrynskyi(npm user, GitHub user, and theio.github.ysalitrynskyiMCP-registry namespace), so publishing must be done while signed in as that account.
- Bump the version inthreeplaces and keep them identical:package.json,server.json(top-levelandthepackages
[0].version), andSERVER_VERSIONinsrc/server.ts.
- Land it: commit tomainand push. CI (.github/workflows/ci.yml) runsbuild+test— it doesnotpublish.
- Publish to npm (as npm userysalitrynskyi):

npm login npm publish # prepublishOnly runs the build
mcp-publisher validate # optional, offline check mcp-publisher login github # interactive browser OAuth mcp-publisher publish

Smithery(smithery.yaml) andGlama(glama.json) track the npm/registry release automatically — no separate step.

MIT © ysalitrynskyi. Part of theopn.onlproject.

Marketing insights and audience analysis from Audiense reports, covering demographic, cultural, influencer, and content engagement analysis.

Official Dadan MCP server for AI access to videos, transcripts, analytics, and capture leads.

Centralized management of RePricing for Amazon, eBay, and Kaufland, Lost & Found for Amazon FBA, and integrated HelpDesk.

Get clear, reliable and actionable Customer Insights with AI.

Honeydew semantic layer provides a governed, business-friendly data model that unifies metrics, dimensions, and relationships across sources, enabling consistent self-service analytics and AI-powered data access

Bring Kubit into your AI workflow - query your warehouse with natural language

An MCP server for ActivityWatch, allowing interaction with your personal time tracking data.

Provides structured access to ActivityWatch time tracking data for AI assistants.

Manage digital advertising campaigns with AI-powered insights from Adspirer.com.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.