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

lps-mcp-server

v1.2.1

Published

一个基于 LPS(直播分发系统)实现的 MCP 服务。

Readme

LPS MCP 服务(mlps-mcp-server)

一个基于 LPS(直播分发系统)实现的 MCP 服务。

关于LPS

LPS(直播分发系统)的核心功能:支持把客户的推流或拉流分发至任意支持RTMP协议的国内外直播平台,最终实现一处推流处处观看的效果。支持RTMP、SRT、HLS、FLV、WEBRTC等多种直播推流/播放协议。

关于本服务

本服务基于LPS,以"工程"为核心,提供对直播推流、拉流、分发的管理和直播质量数据获取等能力,统一暴露为 MCP 工具以便客户端调用。

运行环境

  • Node.js 20+(推荐与 Dockerfile 一致使用 Node 22)
  • NPM 9+

依赖(关键):

  • @modelcontextprotocol/sdk
  • zod

安装与启动

本地运行

npm install
npm run start
# 或
node app_stdio.js

MCP服务配置(NPX启动)

{
    "mcpServers": {
        "lps-mcp-server": {
            "command": "npx",
            "args": [
                "-y",
                "lps-mcp-server"
            ],
            "env": {
                "ACCESS_ID": "<YOUR_ACCESS_ID>",
                "ACCESS_KEY": "<YOUR_ACCESS_KEY>"
            }
        }
    }
}

认证

认证信息通过环境变量提供:

  • ACCESS_ID:访问ID
  • ACCESS_KEY:访问密钥

在启动服务前,请确保设置了这些环境变量。

获取 API 密钥

请参考 奥点云 APAAS 平台 API 密钥获取指南 获取您的 ACCESS_IDACCESS_KEY

工具列表

🔧 工程管理工具

| 工具名称 | 功能 | 必需参数 | 说明 | |---------|------|----------|------| | project_list | 获取工程列表 | 无 | 支持分页和搜索 | | project_create | 创建工程 | title | 创建新工程 | | project_start | 启动工程 | id + projectId | 需要两个参数 | | project_stop | 停止工程 | id + projectId | 需要两个参数 | | project_delete | 删除工程 | id + projectId | 需要两个参数 | | project_modify | 修改工程 | projectId + title | 修改工程标题 | | project_get_info | 获取工程详情 | projectId | 查询工程信息 |

📡 分发管理工具

| 工具名称 | 功能 | 必需参数 | 说明 | |---------|------|----------|------| | publish_to_add | 添加分发 | projectId + url | 添加分发地址 | | publish_to_modify | 修改分发 | projectId + publishToId + url | 修改分发配置 | | publish_to_remove | 删除分发 | projectId + publishToId | 删除指定分发 | | publish_to_start | 启动分发 | projectId + publishToId | 启动指定分发 | | publish_to_stop | 停止分发 | projectId + publishToId | 停止指定分发 | | publish_to_start_all | 启动所有分发 | projectId | 启动所有分发 | | publish_to_stop_all | 停止所有分发 | projectId | 停止所有分发 | | publish_to_remove_all | 删除所有分发 | projectId | 删除所有分发 | | publish_to_get_detail | 获取分发详情 | projectId | 获取分发详情 |

📊 数据分析工具

| 工具名称 | 功能 | 必需参数 | 说明 | |---------|------|----------|------| | analytics_fluency_history | 获取流畅度历史 | projectId | 推流流畅度数据 | | analytics_fps_history | 获取帧率历史 | projectId | 推流帧率数据 | | analytics_bitrate_history | 获取码率历史 | projectId | 推流码率数据 |

🔄 拉流管理工具

| 工具名称 | 功能 | 必需参数 | 说明 | |---------|------|----------|------| | pull_stream_set | 设置拉流地址 | projectId + url | 设置拉流地址 | | pull_stream_remove | 删除拉流地址 | projectId | 删除拉流地址 | | pull_stream_get | 查询拉流地址 | projectId | 查询拉流地址 |

ℹ️ 其他工具

| 工具名称 | 功能 | 必需参数 | 说明 | |---------|------|----------|------| | about | 获取工具相关信息 | 无 | 工具相关信息 |

重要参数说明

关键参数关系

  • id: 平台分配ID,用于工程操作时标识具体工程
  • projectId: 工程ID,用于标识工程

参数组合要求

⚠️ 特别注意: 启动/停止/删除工程时需要同时提供 idprojectId 两个参数

使用示例

创建并启动工程

// 步骤1: 创建工程
{
  "name": "project_create",
  "arguments": {
    "title": "我的直播工程"
  }
}

// 步骤2: 获取工程列表(获取id和projectId)
{
  "name": "project_list",
  "arguments": {}
}

// 步骤3: 启动工程(需要同时提供id和projectId)
{
  "name": "project_start",
  "arguments": {
    "id": "从步骤2获取的id值",
    "projectId": "从步骤2获取的projectId值"
  }
}

添加分发地址

{
  "name": "publish_to_add",
  "arguments": {
    "projectId": "工程ID",
    "url": "rtmp://example.com/live/stream",
    "serviceName": "example",
    "liveName": "stream"
  }
}

详细文档

常见问题

Q: 为什么启动工程时需要同时提供id和projectId?

A: 这是系统设计的要求:

  • projectId 用于标识具体的工程
  • id 是平台分配的唯一标识符
  • 两个参数配合使用确保操作的准确性和安全性

Q: 如何获取正确的参数值?

A:

  1. 使用 project_list 工具获取工程列表
  2. 从返回结果中提取 idprojectId 字段
  3. 在后续操作中同时使用这两个值