open-index/open-npm huggingface dataset:
npm package: @lichao176/mcp-wsmonitor
Description: MCP server for Mattermost WebSocket monitoring (wsmonitor). Supports local/pre/prod environments.
Latest version: 1.0.0

# @anthropic-cses/mcp-wsmonitor

Mattermost WebSocket 监控 MCP 服务。为 AI 助手（Claude Code 等）提供实时 WebSocket 系统状态查询能力。

## 快速使用

在 `.mcp.json` 或 Claude Code 配置中添加：

```json
{
  "mcpServers": {
    "wsmonitor": {
      "command": "npx",
      "args": ["-y", "@anthropic-cses/mcp-wsmonitor@latest", "--env", "local"]
    }
  }
}
```

## 环境配置

通过 `--env` 参数指定目标环境：

| 环境 | 参数 | 目标地址 |
|------|------|----------|
| 本地开发 | `--env local` | `http://localhost:8065` |
| 预发布 | `--env pre` | `http://api-im-pre.jinqidongli.com` |
| 生产环境 | `--env prod` | `http://api-im.jinqidongli.com` |

自定义地址（覆盖 `--env`）：

```json
{
  "args": ["-y", "@anthropic-cses/mcp-wsmonitor@latest", "--base-url", "http://your-server:8065"]
}
```

## 多环境配置示例

```json
{
  "mcpServers": {
    "wsmonitor-local": {
      "command": "npx",
      "args": ["-y", "@anthropic-cses/mcp-wsmonitor@latest", "--env", "local"]
    },
    "wsmonitor-pre": {
      "command": "npx",
      "args": ["-y", "@anthropic-cses/mcp-wsmonitor@latest", "--env", "pre"]
    },
    "wsmonitor-prod": {
      "command": "npx",
      "args": ["-y", "@anthropic-cses/mcp-wsmonitor@latest", "--env", "prod"]
    }
  }
}
```

## 提供的 MCP 工具

| 工具 | 说明 |
|------|------|
| `wsmonitor_snapshot` | 实时系统快照（连接数、Hub 状态、Top 排行） |
| `wsmonitor_events` | 历史广播事件查询（ES） |
| `wsmonitor_connections` | 连接/断连事件历史（ES） |
| `wsmonitor_throughput` | 时序吞吐量聚合（ES） |
| `wsmonitor_hub_status` | Hub 详细状态 |

## 提供的 MCP 资源

| 资源 URI | 说明 |
|----------|------|
| `wsmonitor://status` | 系统状态概要（文本格式） |

## 要求

- Node.js >= 16
- Mattermost 服务需开启 wsmonitor 模块
npm package: @licheng5625/odata-parser
Description: OData query string parser
Author: auth0
Latest version: 1.0.3

OData query string parser for node.js based on [pegjs](http://pegjs.majda.cz/).

Fork with added support for the `IN` filter. Add uuid and `$count=true`for odata v4.0 querys.

## Installation

```
npm install @seamapi/odata-parser
```

## Usage

```javascript
var parser = require("odata-parser");

var ast = parser.parse("$top=10&$skip=5&$select=foo")

util.inspect(ast)
```

will result in:

```javascript
{
  '$top': 10,
  '$skip': 5,
  '$select': [ 'foo' ]
}
```

Filters like:

```javascript
parser.parse("$filter=Name eq 'John' and LastName lt 'Doe'")
```
results in:

```javascript

{
    $filter: {
        type: 'and',
        left: {
            type: 'eq',
            left: {
                type: 'property',
                name: 'Name'
            },
            right: {
                type: 'literal',
                value: 'John'
            }
        },
        right: {
            type: 'lt',
            left: {
                type: 'property',
                name: 'LastName'
            },
            right: {
                type: 'literal',
                value: 'Doe'
            }
        }
    }
}
```

Using functions in filters

```javascript
parser.parse("$filter=substringof('nginx', Servers)")
```

restuls in:

```javascript
{
    $filter: {
        type: 'functioncall',
        func: 'substringof',
        args: [{
            type: 'literal',
            value: 'nginx'
        }, {
            type: 'property',
            name: 'Servers'
        }]
    }
}
```

## Author

[Auth0](auth0.com)

Forked by Seam

## License

This project is licensed under the MIT license. See the [LICENSE](LICENSE) file for more info.
npm package: @lichengsheng/test-plugin
Description: 一个示例NPM插件
Author: Your Name
Latest version: 1.0.0

# my-npm-plugin

一个示例NPM插件，提供简单的数学运算和问候功能。

## 安装

```bash
npm install my-npm-plugin
```

## 使用方法

```javascript
const myPlugin = require('my-npm-plugin');

// 加法运算
const sum = myPlugin.add(5, 3);
console.log('5 + 3 =', sum); // 输出: 5 + 3 = 8

// 减法运算
const difference = myPlugin.subtract(10, 4);
console.log('10 - 4 =', difference); // 输出: 10 - 4 = 6

// 问候
const message = myPlugin.greet('张三');
console.log(message); // 输出: 你好，张三！欢迎使用我的NPM插件
```

## API文档

### add(a, b)
返回两个数字的和。

- `a` {Number} 第一个数字
- `b` {Number} 第二个数字
- 返回: {Number} 两数之和

### subtract(a, b)
返回两个数字的差。

- `a` {Number} 第一个数字
- `b` {Number} 第二个数字
- 返回: {Number} 两数之差

### greet(name)
返回一个带有给定名称的问候语。

- `name` {String} 姓名
- 返回: {String} 问候语

## 许可证

MIT
npm package: @lichin/pico
Description: Photo Editor helper
Latest version: 0.2.1

[![npm(scoped)](https://img.shields.io/npm/v/@lichin/pico.svg)](https://github.com/lichin-lin/pico)
[![npm bundle size](https://img.shields.io/bundlephobia/min/@lichin/pico.svg)](https://github.com/lichin-lin/pico)

<h3 align="center">
  An experimental photo editor<br>library for the web.
</h3>
<br>

## Get started

### Quick start

```
npm install @lichin/pico
```

```jsx
import React, { useEffect } from "react";
import { pico } from "./pico";
import "./styles.css";

export default function App() {
  const handleRotate = deg => {
    const elm = document.querySelector("#canvas");
    pico(elm, {
      rotate: deg
    });
  };
  useEffect(() => {
    let c = document.getElementById("canvas");
    let ctx = c.getContext("2d");
    let img = document.getElementById("source");
    img.onload = () => {
      ctx.drawImage(img, 0, 0, 800, 600);
    };
  }, []);
  return (
    <div className="App">
      <div className="btns">
        <div className="btn rotate-90-pos" onClick={() => handleRotate(-90)}>
          rotate -90deg
        </div>
        <div className="btn rotate-90-neg" onClick={() => handleRotate(90)}>
          rotate 90deg
        </div>
      </div>

      <div className="board">
        <canvas id="canvas" width="800" height="600" />
      </div>
      <div className="board hide">
        <img
          id="source"
          crossOrigin="Anonymous"
          src="https://miro.medium.com/max/1400/1*UktO9Cqfa_M7gv3syxCjRg.jpeg"
          alt="doggy"
        />
      </div>
    </div>
  );
}
```
### Demo
you can play with it through [codesandbox example](https://codesandbox.io/s/pico-sspzc?file=/src/App.js)
### Docs
**Pico API**
<br />
Animate function contain two parameter:
<br />
| Prop | Type | Default | Description |
| -------- | -------- | -------- | ---------------------------------------------------- |
| element  | HTMLElement Object | -             | Single HTMLElement `CANVAS` Object |
| options  | Object             | {}            | Please see next object description for the details |

options object contain several keys (In progress):
| Key | Type | Default | Description |
| --------   | -------- | -------- | ---------------------------------------------------- |
| rotate     | Number   | -        | The value that the element should rotate |

## License

Pico is MIT licensed.