Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MCP_LOG_LEVELNoLog level: info or debug
PLS_MYSQL_HOSTYesMySQL server address
PLS_MYSQL_PORTNoMySQL port, default 33063306
PLS_MYSQL_USERYesMySQL username
PLS_API_BASE_URLYesPLS Java application URL
PLS_MYSQL_DATABASEYesDatabase name
PLS_MYSQL_PASSWORDYesMySQL password

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_tagsA

【📊 查询】获取定位标签列表,可按地图或类型筛选。

参数:

  • mapId: 地图ID(可选),不传则返回全部地图

  • tagType: 标签类型(可选),UWB/Bluetooth/GPS/UWB+GPS/惯性导航

  • pageSize: 每页数量,默认100

  • page: 页码,默认1

返回: 带分页的标签列表,包含编码、类型、状态、电量、绑定状态

提示: 使用 tagType 和 mapId 缩小范围。适合巡检和批量查看。

get_tag_locationA

【📊 查询】按标签编码查询实时位置。

参数:

  • tagCode: 标签编码(必填),如 UWB001

返回: 实时位置信息,含坐标(x/y)、地图编码/名称、时间戳、电量、绑定人员、所在区域

提示: 标签不在线或无位置数据时会返回清晰错误。

list_personnelA

【📊 查询】获取人员列表,可按部门或关键词筛选。

参数:

  • departmentId: 部门ID(可选),不传则返回全部部门

  • keyword: 姓名关键词(可选),模糊搜索

  • pageSize: 每页数量,默认100

  • page: 页码,默认1

返回: 带分页的人员列表,含姓名、部门、电话、绑定标签

提示: 用 keyword 模糊搜索人名。

get_personnel_locationA

【📊 查询】按人员姓名或ID查询实时位置。

参数:

  • nameOrId: 人员姓名或ID(必填),如 "张三" 或 "1001"

返回: 人员实时位置信息,含姓名、坐标、地图、区域

提示: 内部使用 Promise.all 并行查询多人位置。

get_tag_bindingsA

【📊 查询】查询标签与人员/车辆/货物的绑定关系。

参数:

  • tagCode: 标签编码(可选),不传则返回全部绑定关系

返回: 绑定关系列表,含tagCode、bindName、bindType、bindId

提示: 不传 tagCode 返回全部绑定。

list_areasA

【📊 查询】获取区域列表,可按地图筛选。

参数:

  • mapId: 地图ID(可选),不传返回全部地图

返回: 区域列表,含名称、类型、地图ID

提示: 最多返回 2000 条。

get_area_personnelA

【📊 查询】查询某区域内当前的人员。

参数:

  • areaId: 区域ID(必填)

返回: 区域内人员列表,含标签编码、绑定名称、坐标、进入时间

提示: 数据来自 Java 实时 API。

list_alarmsA

【📊 查询】查询告警记录,可按标签、告警类型、时间范围、已读状态筛选。

参数:

  • tagCode: 标签编码(可选)

  • alarmType: 告警类型(可选),如"超时"、"越界"、"低电量"

  • isUnread: 只看未读告警(可选),true=未读, false=已读

  • timeRange: 时间范围(可选),单日"2026-07-09"或范围"2026-07-01,2026-07-09"

  • pageSize: 每页数量,默认50

  • page: 页码,默认1

返回: 告警记录列表,含类型、时间、区域、内容、已读状态

提示: 处理告警时设 isUnread=true 只看未读。

get_system_statsA

【🔍 诊断】获取系统统计概览。

参数: 无需参数。

返回: 标签总数/在线/离线、人员总数/在场/外出、区域数、基站在线/离线、今日告警数

提示: 适合快速了解系统整体状态。调用 Java API,有重试保护。

get_in_and_out_recordsA

【📊 查询】查询进出区域记录,可按区域或时间范围筛选。

参数:

  • areaId: 区域ID(可选),不传则返回全部区域

  • timeRange: 时间范围(可选),单日或范围

  • pageSize: 每页数量,默认100

  • page: 页码,默认1

返回: 进出记录列表,含tagCode、区域、进入/离开时间、状态(在场/已离开)

提示: 用 timeRange 查某天进出情况。

list_anchorsA

【📊 查询】获取基站列表,可按状态或地图筛选。

参数:

  • status: 基站状态(可选),如"在线"、"离线"

  • mapId: 地图ID(可选)

返回: 基站列表,含编码、坐标、状态、安装位置

提示: 最多返回 2000 条。

list_mapsA

【📊 查询】获取地图列表。

参数: 无需参数。

返回: 地图列表,含编码、名称、所属楼栋。

提示: 最多返回 2000 条。

list_realtime_mapA

【📊 查询】获取指定地图上所有标签的实时位置快照。

参数:

  • mapCode: 地图编码(必填),如 "map_001"

返回: 地图上所有标签的实时位置,含坐标、绑定名称、电量

提示: mapCode 会传至 Java API 端过滤,仅返回该地图数据。bindings 有 30 秒缓存。

get_trajectoryA

【📊 查询】查询标签的历史位置轨迹(基于 location_data 表)。

参数:

  • tagCode: 标签编码(必填)

  • startTime: 开始时间(可选),格式 "2026-07-09 08:00:00"

  • endTime: 结束时间(可选)

  • limit: 最多返回点数,默认 500,最大 5000

返回: totalCount(匹配总数) + pointCount(实际返回) + 轨迹点列表

提示: 先 COUNT 再 LIMIT。若 totalCount > limit,说明有数据未返回,请缩小时间范围或调大 limit。

list_carsA

【📊 查询】获取车辆列表,可按类型、关键词、绑定状态筛选。

参数:

  • carType: 车辆类型(可选),0-夹包车, 1-转运车, 2-正面吊

  • keyword: 搜索关键词(可选),匹配车牌/编号/品牌

  • isBound: 绑定状态(可选),true=已绑定, false=未绑定

  • pageSize: 每页数量,默认100

  • page: 页码,默认1

返回: 车辆列表,含类型、品牌、型号、车牌号、绑定标签

提示: 用 keyword 模糊搜索车牌或品牌。

list_goodsA

【📊 查询】获取物品/货物列表,可按名称或绑定状态筛选。

参数:

  • keyword: 搜索关键词(可选),匹配名称或编号

  • isBound: 绑定状态(可选),true=已绑定, false=未绑定

  • pageSize: 每页数量,默认100

  • page: 页码,默认1

返回: 物品列表,含编号、名称、绑定标签

提示: 用 keyword 模糊搜索物品名。

list_alarm_rulesA

【📊 查询】获取告警规则列表,可按告警类型或名称筛选。

参数:

  • alarmType: 告警类型(可选),0-入侵 ~ 6-超速

  • keyword: 规则名称关键词(可选)

返回: 告警规则列表,含名称、类型、阈值、受控时段

提示: 最多返回 2000 条。

list_area_rulesA

【📊 查询】获取区域规则(算法规则)列表,可按名称或拟合方式筛选。

参数:

  • keyword: 规则名称关键词(可选),模糊搜索

  • fittingMethod: 拟合方式(可选),0-无, 1-重心, 2-散点, 3-环绕, 4-直线

返回: 区域规则列表,含名称、进出基准点数、拟合方式

提示: 最多返回 2000 条。

list_departmentsA

【📊 查询】获取部门树状组织结构。

参数:

  • keyword: 部门名称关键词(可选)

返回: 部门树结构,含名称、编码、负责人、电话、子部门

提示: 最多返回 2000 条。返回为嵌套树结构。

pls_send_sos_alarmA

【🔧 管理】发送 SOS 紧急告警。触发指定标签的紧急告警通知。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • tagCodes: 标签编码列表(必填),如 ["UWB001", "UWB002"]

返回: 操作是否成功

提示: 会触发真实告警通知,请谨慎使用!仅紧急情况调用。最多 100 个标签。

pls_batch_update_anchorsA

【🔧 管理】批量更新基站信息,包括状态、IP、型号等。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • anchors: 基站更新列表(必填),每项含:

    • code: 基站编码(必填)

    • ip: 基站 IP(可选)

    • model: 基站型号(可选)

    • mapId: 地图ID(可选)

    • status: 状态(可选)0-在线, 1-离线

返回: 成功更新的基站数量

提示: 只更新提供的字段,未提供的字段保持不变。最多支持 500 条。

pls_batch_update_tagsA

【🔧 管理】批量更新标签信息,包括电量和状态。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • tags: 标签更新列表(必填),每项含:

    • code: 标签编码(必填)

    • battery: 电量(可选)

    • status: 状态(可选)0-在线, 1-离线

返回: 成功更新的标签数量

提示: 只更新提供的字段,未提供的字段保持不变。最多支持 500 条。

pls_bind_tag_to_personA

【🔧 管理】将标签绑定到人员。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • entityId: 人员ID(必填)

  • tagId: 标签ID(必填)

返回: 操作结果

提示: 确认绑定关系后再执行

注意: 必须传 confirm: "确认" 才能执行

pls_unbind_tag_from_personA

【🔧 管理】解除人员与标签的绑定。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • entityId: 人员ID(必填)

返回: 操作结果

提示: 解绑后人员失去定位能力

注意: 必须传 confirm: "确认" 才能执行

pls_bind_tag_to_carB

【🔧 管理】将标签绑定到车辆。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • entityId: 车辆ID(必填)

  • tagId: 标签ID(必填)

返回: 操作结果

提示: 确认绑定关系后再执行

注意: 必须传 confirm: "确认" 才能执行

pls_unbind_tag_from_carA

【🔧 管理】解除车辆与标签的绑定。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • entityId: 车辆ID(必填)

返回: 操作结果

提示: 解绑后车辆失去定位能力

注意: 必须传 confirm: "确认" 才能执行

pls_bind_tag_to_goodsA

【🔧 管理】将标签绑定到物品/货物。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • entityId: 物品ID(必填)

  • tagId: 标签ID(必填)

返回: 操作结果

提示: 确认绑定关系后再执行

注意: 必须传 confirm: "确认" 才能执行

pls_unbind_tag_from_goodsA

【🔧 管理】解除物品/货物与标签的绑定。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • entityId: 物品ID(必填)

返回: 操作结果

提示: 解绑后物品失去定位能力

注意: 必须传 confirm: "确认" 才能执行

pls_create_tagB

【🔧 管理】创建标签实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传必填字段

pls_update_tagB

【🔧 管理】更新标签实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传需改字段

pls_delete_tagA

【🔧 管理】删除标签实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • ids: ID数组(必填),要删除的实体ID列表

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 删除不可撤销!

pls_create_personA

【🔧 管理】创建人员实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传必填字段

pls_update_personB

【🔧 管理】更新人员实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传需改字段

pls_delete_personB

【🔧 管理】删除人员实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • ids: ID数组(必填),要删除的实体ID列表

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 删除不可撤销!

pls_create_carA

【🔧 管理】创建车辆实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传必填字段

pls_update_carA

【🔧 管理】更新车辆实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传需改字段

pls_delete_carA

【🔧 管理】删除车辆实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • ids: ID数组(必填),要删除的实体ID列表

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 删除不可撤销!

pls_create_goodsA

【🔧 管理】创建物品实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传必填字段

pls_update_goodsA

【🔧 管理】更新物品实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传需改字段

pls_delete_goodsB

【🔧 管理】删除物品实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • ids: ID数组(必填),要删除的实体ID列表

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 删除不可撤销!

pls_create_areaB

【🔧 管理】创建区域实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传必填字段

pls_update_areaA

【🔧 管理】更新区域实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传需改字段

pls_delete_areaA

【🔧 管理】删除区域实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • ids: ID数组(必填),要删除的实体ID列表

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 删除不可撤销!

pls_create_anchorB

【🔧 管理】创建基站实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传必填字段

pls_update_anchorA

【🔧 管理】更新基站实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传需改字段

pls_delete_anchorA

【🔧 管理】删除基站实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • ids: ID数组(必填),要删除的实体ID列表

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 删除不可撤销!

pls_create_alarm_ruleB

【🔧 管理】创建告警规则实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传必填字段

pls_update_alarm_ruleA

【🔧 管理】更新告警规则实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传需改字段

pls_delete_alarm_ruleB

【🔧 管理】删除告警规则实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • ids: ID数组(必填),要删除的实体ID列表

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 删除不可撤销!

pls_create_buildingB

【🔧 管理】创建楼栋实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传必填字段

pls_update_buildingA

【🔧 管理】更新楼栋实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传需改字段

pls_delete_buildingB

【🔧 管理】删除楼栋实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • ids: ID数组(必填),要删除的实体ID列表

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 删除不可撤销!

pls_create_mapB

【🔧 管理】创建地图实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传必填字段

pls_update_mapA

【🔧 管理】更新地图实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传需改字段

pls_delete_mapA

【🔧 管理】删除地图实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • ids: ID数组(必填),要删除的实体ID列表

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 删除不可撤销!

pls_create_area_ruleC

【🔧 管理】创建区域规则实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传必填字段

pls_update_area_ruleA

【🔧 管理】更新区域规则实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 确认+只传需改字段

pls_delete_area_ruleA

【🔧 管理】删除区域规则实体。

参数:

  • confirm: 二次确认(必填),必须传 "确认"

  • ids: ID数组(必填),要删除的实体ID列表

  • 根据实体类型传入对应字段

返回: {success: true/false, entity: 实体名称, action: 操作类型}

提示: 删除不可撤销!

pls_health_checkA

【🔍 诊断】服务健康检查。检测 MySQL 连接、Java API 连通性、工具注册状态。

参数: 无需参数。

返回: 各组件状态(healthy/unhealthy/unknown)+ 服务信息 + 运行时长

提示: 排查问题时首先调用此工具确认各组件是否正常。

get_batch_tag_locationsA

【⚡ 批量】批量查询多个标签的实时位置。一次请求返回所有标签的位置信息。

参数:

  • tagCodes: 标签编码数组(必填),最多 100 个

返回: 批量位置结果,含坐标、绑定名称、电量、在线状态统计

提示: 比逐个查询快 5-10 倍。内部按 20 个一批并行查询。

get_low_power_tagsA

【📊 查询】筛选低电量标签,按电量阈值过滤。

参数:

  • threshold: 电量阈值(可选),默认 20,低于此值视为低电

  • mapCode: 地图编码(可选),仅查指定地图

返回: 低电量标签列表,含编码、电量百分比、绑定名称、坐标

提示: threshold 范围 1-99。结合 mapCode 可定位特定区域低电设备。

search_personnelA

【📊 查询】按姓名、工号或部门搜索人员。

参数:

  • keyword: 搜索关键词(必填),匹配姓名/工号/部门

  • departmentId: 部门ID(可选),限定部门内搜索

  • limit: 最大返回数,默认 100

返回: 人员列表,含姓名、工号、部门、电话、绑定标签、实时位置

提示: 传入纯数字时优先按工号精确匹配。结果包含实时位置信息(bindings 有 30 秒缓存)。

get_alarm_trendA

【📊 查询】告警趋势统计,按时间段查看告警数量和类型分布。

参数:

  • days: 统计天数(可选),默认 7

  • alarmType: 告警类型(可选),0-入侵 ~ 6-超速

  • tagCode: 标签编码(可选),按标签筛选

返回: 按日/按类型聚合的告警趋势数据

提示: days 范围 1-90。适合用于周报/月报分析。

get_personnel_distributionA

【🔍 诊断】人员区域分布分析,查看各区域在场人数。

参数:

  • mapId: 地图ID(可选),仅查指定地图

  • areaId: 区域ID(可选),仅查指定区域

返回: 区域列表,含名称、在场人数、人员列表

提示: 基于进出记录+实时位置判断在场状态。

export_alarm_csvA

【⚡ 批量】导出告警记录为 CSV 文本,可直接复制粘贴到 Excel。

参数:

  • startTime: 开始时间(可选),格式 "2026-07-01 00:00:00"

  • endTime: 结束时间(可选)

  • alarmType: 告警类型(可选),0-入侵 ~ 6-超速

  • limit: 最大行数,默认 2000

返回: CSV 格式文本(含表头)

提示: 复制返回的文本粘贴到 .csv 文件即可在 Excel 打开。

get_unread_alarmsA

【📊 查询】查询未读告警列表(isRead=0)。

参数:

  • alarmType: 告警类型(可选),0-入侵 ~ 6-超速

  • limit: 最大返回数,默认 100

返回: 未读告警列表,含标签编码、告警类型、时间、描述

提示: 适合安全监控场景,快速定位未处理告警。

Prompts

Interactive templates invoked by user choice

NameDescription
pls_analyze_alarm分析告警事件,结合实时位置和绑定关系给出告警上下文和处置建议
pls_personnel_report生成人员在场/离岗报告,结合进出记录和实时位置
pls_area_safety评估区域安全状况,结合告警记录、人员进出和区域规则

Resources

Contextual data attached and managed by the client

NameDescription
pls_schemaPLS 定位系统数据库表结构说明,包含所有核心表的字段信息
pls_alarm_rules告警规则配置列表,包含所有告警类型和阈值设置

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sweet-dog-cyber/pls-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server