@assetlab/mcp-server 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +112 -0
  3. package/package.json +2 -2
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 AssetLab
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,112 @@
1
+ # @assetlab/mcp-server
2
+
3
+ Connect [Claude](https://claude.ai) to your [AssetLab](https://assetlab.ca) account via the [Model Context Protocol](https://modelcontextprotocol.io). Ask Claude questions about your assets, work orders, PM schedules, and more — in plain language.
4
+
5
+ ## Prerequisites
6
+
7
+ - [Node.js](https://nodejs.org) 18 or later
8
+ - An AssetLab account with an API key (create one in **Settings → API Keys**)
9
+ - [Claude Desktop](https://claude.ai/download) or [Claude Code](https://claude.ai/code)
10
+
11
+ ## Setup
12
+
13
+ ### Claude Desktop
14
+
15
+ 1. Open your Claude Desktop config file:
16
+ - **Mac:** `~/Library/Application Support/Claude/claude_desktop_config.json`
17
+ - **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
18
+
19
+ 2. Add the following to the `mcpServers` object (replace `al_live_...` with your API key):
20
+
21
+ ```json
22
+ {
23
+ "mcpServers": {
24
+ "assetlab": {
25
+ "command": "npx",
26
+ "args": ["-y", "@assetlab/mcp-server"],
27
+ "env": {
28
+ "ASSETLAB_API_KEY": "al_live_...",
29
+ "ASSETLAB_API_URL": "https://mxxqgiqimawzeoajiklw.supabase.co/functions/v1/api-gateway"
30
+ }
31
+ }
32
+ }
33
+ }
34
+ ```
35
+
36
+ > **Tip:** The easiest way to get the correct config is to click **Copy Claude Config** directly on your API key in AssetLab Settings — it pre-fills your key and API URL automatically.
37
+
38
+ 3. Restart Claude Desktop. You should see the AssetLab tools available.
39
+
40
+ ### Claude Code
41
+
42
+ ```bash
43
+ claude mcp add assetlab npx @assetlab/mcp-server \
44
+ -e ASSETLAB_API_KEY=al_live_... \
45
+ -e ASSETLAB_API_URL=https://mxxqgiqimawzeoajiklw.supabase.co/functions/v1/api-gateway
46
+ ```
47
+
48
+ ## Example prompts
49
+
50
+ Once connected, you can ask Claude things like:
51
+
52
+ - *"Show me all overdue work orders"*
53
+ - *"List critical assets at Site A"*
54
+ - *"What PM schedules are due this month?"*
55
+ - *"Summarize the current state of our facilities"*
56
+ - *"Which projects are at risk or delayed?"*
57
+ - *"Show me all assets linked to the HVAC system in Building 3"*
58
+ - *"List open corrective work orders at all sites"*
59
+
60
+ ## Available tools
61
+
62
+ | Tool | Description |
63
+ |------|-------------|
64
+ | `list_assets` | List assets with filters for site, building, system, and search |
65
+ | `get_asset` | Get full details for a specific asset |
66
+ | `list_work_orders` | List work orders filtered by status, priority, type, or site |
67
+ | `get_work_order` | Get full details for a specific work order |
68
+ | `list_sites` | List all sites in your organization |
69
+ | `get_site` | Get details for a specific site |
70
+ | `list_buildings` | List buildings, optionally filtered by site |
71
+ | `list_locations` | List rooms and areas, optionally filtered by building |
72
+ | `list_systems` | List systems (HVAC, plumbing, electrical, etc.) |
73
+ | `list_system_groups` | List system groups |
74
+ | `list_system_classes` | List top-level system classifications |
75
+ | `list_pm_schedules` | List PM schedules filtered by status, frequency, or site |
76
+ | `get_pm_schedule` | Get a PM schedule including tasks and linked assets |
77
+ | `list_pm_templates` | List reusable PM templates |
78
+ | `list_projects` | List capital projects filtered by status or health |
79
+ | `get_project` | Get project details including budget and progress |
80
+ | `list_contracts` | List vendor contracts |
81
+ | `list_compliance_items` | List compliance/regulatory items |
82
+ | `get_compliance_item` | Get a compliance item with linked PM schedules |
83
+ | `get_dashboard_summary` | Get aggregated stats across assets, work orders, and sites |
84
+
85
+ ## Scopes
86
+
87
+ API keys use scopes to control what Claude can access. Grant only the scopes you need:
88
+
89
+ | Scope | Access |
90
+ |-------|--------|
91
+ | `assets:read` | Assets |
92
+ | `work_orders:read` | Work orders |
93
+ | `sites:read` | Sites and buildings |
94
+ | `locations:read` | Locations |
95
+ | `systems:read` | Systems, system groups, system classes |
96
+ | `pm_schedules:read` | PM schedules and templates |
97
+ | `projects:read` | Capital projects |
98
+ | `contracts:read` | Vendor contracts |
99
+ | `compliance:read` | Compliance items |
100
+ | `dashboard:read` | Dashboard summary stats |
101
+ | `*:*` | All resources |
102
+
103
+ ## Security
104
+
105
+ - The MCP server runs **locally** on your machine via stdio — no network server is exposed
106
+ - Your API key is scoped to your organization only
107
+ - All data access is read-only and logged in AssetLab's audit log
108
+ - API keys can be revoked at any time in **Settings → API Keys**
109
+
110
+ ## Support
111
+
112
+ Questions or issues? Email [support@assetlab.ca](mailto:support@assetlab.ca).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@assetlab/mcp-server",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "MCP server for AssetLab — connect Claude to your asset management data",
5
5
  "type": "module",
6
6
  "bin": {
@@ -13,7 +13,7 @@
13
13
  "start": "node dist/index.js"
14
14
  },
15
15
  "keywords": ["mcp", "assetlab", "asset-management", "claude"],
16
- "license": "UNLICENSED",
16
+ "license": "MIT",
17
17
  "files": [
18
18
  "dist"
19
19
  ],