@signal4/s4 2.5.0 → 2.6.0

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 (60) hide show
  1. package/README.md +15 -0
  2. package/bin/signal4-mcp-http.js +2 -0
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +582 -98
  5. package/dist/cli.js.map +1 -1
  6. package/dist/client.d.ts +18 -0
  7. package/dist/client.d.ts.map +1 -1
  8. package/dist/client.js +53 -7
  9. package/dist/client.js.map +1 -1
  10. package/dist/format.d.ts +67 -18
  11. package/dist/format.d.ts.map +1 -1
  12. package/dist/format.js +637 -358
  13. package/dist/format.js.map +1 -1
  14. package/dist/handler_types.d.ts +4 -0
  15. package/dist/handler_types.d.ts.map +1 -1
  16. package/dist/handler_types.js +8 -1
  17. package/dist/handler_types.js.map +1 -1
  18. package/dist/handlers/ads.d.ts.map +1 -1
  19. package/dist/handlers/ads.js +11 -0
  20. package/dist/handlers/ads.js.map +1 -1
  21. package/dist/handlers/bookmarks.js +4 -4
  22. package/dist/handlers/bookmarks.js.map +1 -1
  23. package/dist/handlers/claims.d.ts.map +1 -1
  24. package/dist/handlers/claims.js +57 -17
  25. package/dist/handlers/claims.js.map +1 -1
  26. package/dist/handlers/explore.d.ts +2 -1
  27. package/dist/handlers/explore.d.ts.map +1 -1
  28. package/dist/handlers/explore.js +64 -10
  29. package/dist/handlers/explore.js.map +1 -1
  30. package/dist/handlers/registry.d.ts.map +1 -1
  31. package/dist/handlers/registry.js +2 -1
  32. package/dist/handlers/registry.js.map +1 -1
  33. package/dist/handlers/reports.d.ts.map +1 -1
  34. package/dist/handlers/reports.js +53 -31
  35. package/dist/handlers/reports.js.map +1 -1
  36. package/dist/handlers/search.d.ts.map +1 -1
  37. package/dist/handlers/search.js +60 -37
  38. package/dist/handlers/search.js.map +1 -1
  39. package/dist/handlers/timeline.d.ts.map +1 -1
  40. package/dist/handlers/timeline.js +12 -1
  41. package/dist/handlers/timeline.js.map +1 -1
  42. package/dist/http.d.ts +16 -0
  43. package/dist/http.d.ts.map +1 -0
  44. package/dist/http.js +132 -0
  45. package/dist/http.js.map +1 -0
  46. package/dist/index.d.ts +3 -1
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +12 -149
  49. package/dist/index.js.map +1 -1
  50. package/dist/provenance.d.ts +41 -0
  51. package/dist/provenance.d.ts.map +1 -0
  52. package/dist/provenance.js +65 -0
  53. package/dist/provenance.js.map +1 -0
  54. package/dist/server_core.d.ts +40 -0
  55. package/dist/server_core.d.ts.map +1 -0
  56. package/dist/server_core.js +174 -0
  57. package/dist/server_core.js.map +1 -0
  58. package/dist/types.d.ts +55 -0
  59. package/dist/types.d.ts.map +1 -1
  60. package/package.json +6 -2
package/README.md CHANGED
@@ -214,6 +214,21 @@ For Claude Desktop, Cursor, or other MCP clients:
214
214
 
215
215
  Tool definitions are loaded dynamically from the API based on your key's access level. The MCP server uses the same handlers as the CLI for formatting responses.
216
216
 
217
+ ### Remote server (streamable-http)
218
+
219
+ The same server is also deployable as a remote streamable-http service (this replaced the retired Python MCP server in `core/src/mcp/`):
220
+
221
+ ```bash
222
+ node dist/http.js --host 127.0.0.1 --port 7998
223
+ ```
224
+
225
+ - **Env**: `SIGNAL4_API_URL` — backend base URL (default `https://api.signal4.ca`; PM2 deployments set `http://localhost:7999`)
226
+ - **MCP endpoint**: `POST /mcp`
227
+ - **Auth**: the client's own Signal4 API key (`sk_...`), sent as `X-API-Key: <key>` or `Authorization: Bearer <key>`. The server needs no service key and no database access — the key passes through to the backend, which validates it, enforces scopes/projects, rate-limits, and records usage.
228
+ - **Health check**: `GET /health` → `{"status": "ok", "service": "signal4-mcp", "transport": "http"}`
229
+
230
+ In production it runs under PM2 as `signal4-mcp` (on-prem: `core/ecosystem.config.js`, bound `0.0.0.0:7998`; VPS: `~/signal4/start-mcp.sh` synced from the parent repo's `scripts/start-mcp.vps.sh`, bound `127.0.0.1:7998`).
231
+
217
232
  ## Requirements
218
233
 
219
234
  - Node.js 18+
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import "../dist/http.js";
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAmkC7E,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAwD1C"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAqgD7E,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CA6E1C"}