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

@vrun-design/openflowkit-mcp

v0.1.2

Published

Local-first Model Context Protocol server for OpenFlowKit — deterministic diagramming tools (validate DSL, templates, icons, viewer links) for Claude Desktop, Cursor, Windsurf, and other MCP clients. No API key, no cloud round-trip.

Readme

OpenFlowKit MCP Server

Give Claude Desktop, Cursor, Windsurf, or any MCP client first-class diagramming tools.

npm MIT License Node 18+


OpenFlowKit MCP is local-first by design — it runs on your machine over stdio with no API key and no cloud round-trip, and its tools return deterministic output. Your MCP client already has an LLM; this server just gives it diagram-specific tools.

Instead, it gives the agent diagram-specific powers:

  • read the OpenFlow DSL reference
  • inspect starter templates
  • analyze local codebases
  • find exact cloud and developer icon slugs
  • validate agent-authored DSL
  • create shareable OpenFlowKit viewer URLs

No API keys, no telemetry, no account, no server-side storage.

You:    Create a checkout flow with a promo-code branch
Claude: reads openflowkit://docs/dsl-cheatsheet
        writes OpenFlow DSL itself
        calls validate_openflow_dsl
        fixes any issues
        calls create_viewer_url
        returns DSL + viewer link

Install

# No install required; npx fetches the latest published version
npx -y @vrun-design/openflowkit-mcp

# Or install globally
npm install -g @vrun-design/openflowkit-mcp
openflowkit-mcp

Requires Node 18+.


Claude Desktop setup

Edit your Claude Desktop config:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "openflowkit": {
      "command": "npx",
      "args": ["-y", "@vrun-design/openflowkit-mcp"]
    }
  }
}

Restart Claude Desktop. You should see openflowkit in the tool picker.

Cursor / Windsurf / other MCP clients

Point the client at the same command:

  • command: npx
  • args: ["-y", "@vrun-design/openflowkit-mcp"]

The server speaks the standard MCP stdio protocol. Client UIs differ, but the command shape is the same.


Tools

All tools run locally and require no provider key.

| Tool | What it does | |---|---| | validate_openflow_dsl | Lint OpenFlow DSL with structured diagnostics | | create_viewer_url | Encode OpenFlow DSL into a shareable OpenFlowKit viewer URL | | analyze_codebase | Detect platforms, services, top-level structure, and language mix from a local repo | | find_icon | Fuzzy-search 1,600+ AWS, Azure, GCP, CNCF, and developer icons | | list_starter_templates | Browse built-in starter templates | | get_starter_template | Fetch a named starter template as DSL | | list_diagram_node_types | Return DSL node and edge reference data | | server_info | Return version and capability metadata |


Resources

Agents can read these directly:

| URI | Description | |---|---| | openflowkit://docs/dsl-cheatsheet | OpenFlow DSL syntax reference | | openflowkit://templates | Starter template catalog | | openflowkit://templates/{name} | DSL for a named starter template | | openflowkit://icons | Full icon catalog | | openflowkit://icons/{provider} | Icon catalog for one provider pack |

Provider packs are aws, azure, gcp, cncf, and developer.


Prompts

Clients can surface three prompt templates:

  • flowchart_from_description — agent writes, validates, and links a flowchart
  • convert_mermaid_to_openflow — agent converts Mermaid into OpenFlow DSL, validates it, and links it
  • architecture_from_codebase — agent scans a local repo, picks icon slugs, validates DSL, and links the result

Recommended agent workflow

Ask your MCP client:

Using the openflowkit MCP server: read openflowkit://docs/dsl-cheatsheet, then write an OpenFlow DSL flowchart for checkout with cart, shipping, promo-code decision, payment, Stripe webhook, and confirmation. Call validate_openflow_dsl, fix any issues, then call create_viewer_url. Return the final DSL and viewer URL.

For architecture diagrams:

Using openflowkit: call analyze_codebase on /path/to/project, read openflowkit://docs/dsl-cheatsheet, use find_icon for exact architecture icons, write OpenFlow DSL, validate it, then create a viewer URL.

Privacy model

  • No telemetry. The server never phones home.
  • No provider keys. The MCP client model authors diagrams directly.
  • No OpenFlowKit account. Viewer URLs encode the DSL locally in the URL hash.
  • Local filesystem access only when requested. Codebase analysis only reads the path passed to analyze_codebase.

Development

This package lives in the openflowkit monorepo.

# From the repo root
npm install --workspace=mcp-server
npm run --workspace=mcp-server build
npm run --workspace=mcp-server test:run

# Run locally against the MCP Inspector
npx @modelcontextprotocol/inspector dist/index.js

The MCP Inspector gives you a UI to manually call every tool, browse every resource, and verify client behavior before publishing.