@agentistics/mcp 2.72.0 → 2.75.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.
package/README.md CHANGED
@@ -4,7 +4,7 @@ MCP server that exposes your [Claude Code](https://claude.ai/code) analytics as
4
4
 
5
5
  ## What it does
6
6
 
7
- Reads data from `~/.claude/` (the same data [agentistics](https://github.com/blpsoares/agentistics) visualizes) and exposes it as 13 structured MCP tools.
7
+ Reads data from `~/.claude/` (the same data [agentistics](https://github.com/agentistics/agentistics) visualizes) and exposes it as 13 structured MCP tools.
8
8
 
9
9
  ## Usage
10
10
 
@@ -57,4 +57,4 @@ Requires a running agentistics server (`agentop server` or the Windows desktop a
57
57
 
58
58
  ## License
59
59
 
60
- MIT — part of the [agentistics](https://github.com/blpsoares/agentistics) project.
60
+ FSL-1.1-ALv2 — part of the [agentistics](https://github.com/agentistics/agentistics) project.
@@ -678,6 +678,81 @@ var ANTHROPIC_EDIT_POLICY = Object.freeze({
678
678
  status: "declared-unverified",
679
679
  source: "CM §7 (docs/superpowers/specs/2026-09-25-runtime-context-manager-design.md), citing " + "Anthropic's documentation that editing earlier turns can invalidate later reasoning blocks " + "(signed signature_delta, R12 §1.3); assistant-text immutability is a product rule (CM §7 line 227)."
680
680
  });
681
+ // ../core/src/agentToolPolicy.ts
682
+ var TASKS = { capability: "localShell", host: true, central: "refuse", allowance: null };
683
+ var GROUPS = TASKS;
684
+ var DATA = { host: false, central: "allow", allowance: null };
685
+ var PREFS = DATA;
686
+ var AGENT_TOOL_POLICY = {
687
+ agentistics_tasks: { ...TASKS, risk: "R", routes: ["GET /api/tasks"], reason: "lists the board; changes nothing" },
688
+ agentistics_task: { ...TASKS, risk: "R", routes: ["GET /api/tasks/:ref"], reason: "reads one task (its comments are untrusted text, §4.8)" },
689
+ agentistics_task_create: { ...TASKS, risk: "W", routes: ["POST /api/tasks"], reason: "adds a card; undone by closing or deleting it" },
690
+ agentistics_task_status: { ...TASKS, risk: "W", routes: ["POST /api/tasks/:ref"], reason: "moves a card between statuses; moved back by the same call" },
691
+ agentistics_task_statuses: { ...TASKS, risk: "R", routes: ["GET /api/tasks/statuses"], reason: "reads the status vocabulary" },
692
+ agentistics_task_status_edit: {
693
+ ...TASKS,
694
+ risk: "W",
695
+ routes: ["DELETE /api/tasks/statuses/:id", "POST /api/tasks/statuses/:id", "POST /api/tasks/statuses"],
696
+ reason: "status vocabulary is configuration; the server refuses to remove a protected status (§3.5)"
697
+ },
698
+ agentistics_task_comment: { ...TASKS, risk: "W", routes: ["POST /api/tasks/:ref/comments"], reason: "appends a note; additive, destroys nothing" },
699
+ agentistics_task_subtask: { ...TASKS, risk: "W", routes: ["POST /api/tasks/:ref/subtasks"], reason: "adds or edits a subtask; reversible by another edit" },
700
+ agentistics_task_link: { ...TASKS, risk: "W", routes: ["POST /api/tasks/:ref/links"], reason: "adds or removes a link; reversible by the inverse call" },
701
+ agentistics_task_blocked_by: { ...TASKS, risk: "W", routes: ["POST /api/tasks/:ref"], reason: "sets a blocker; cleared by the same call" },
702
+ agentistics_task_next: { ...TASKS, risk: "R", routes: ["GET /api/tasks/next"], reason: "asks what is ready; claims nothing" },
703
+ agentistics_task_claim: { ...TASKS, risk: "W", routes: ["POST /api/tasks/:ref/claim"], reason: "a lease that expires on its own and can be released" },
704
+ agentistics_task_activity: { ...TASKS, risk: "R", routes: ["GET /api/tasks/activity"], reason: "reads the board activity log" },
705
+ agentistics_task_edit: { ...TASKS, risk: "W", routes: ["POST /api/tasks/:ref"], reason: "edits task fields; reversible by another edit" },
706
+ agentistics_task_session: {
707
+ ...TASKS,
708
+ risk: "W",
709
+ routes: ["POST /api/tasks/x/sessions", "POST /api/tasks/:ref/sessions"],
710
+ reason: "files or detaches a session under a task; filing is reversible"
711
+ },
712
+ agentistics_task_delete: {
713
+ ...TASKS,
714
+ risk: "D",
715
+ routes: ["DELETE /api/tasks/:ref"],
716
+ reason: "destroys a task with its history; re-classed D by the spec (§3.5), moves behind an intent in P2.6"
717
+ },
718
+ agentistics_session_groups: { ...GROUPS, risk: "R", routes: ["GET /api/session-groups"], reason: "lists the session folders" },
719
+ agentistics_session_group_create: { ...GROUPS, risk: "W", routes: ["POST /api/session-groups"], reason: "creates a folder; removed by delete" },
720
+ agentistics_session_group_edit: {
721
+ ...GROUPS,
722
+ risk: "W",
723
+ routes: [
724
+ "POST /api/session-groups/:group/sessions",
725
+ "POST /api/session-groups/ungroup",
726
+ "POST /api/session-groups/:group",
727
+ "DELETE /api/session-groups/:group"
728
+ ],
729
+ reason: "folders are labels: deleting one ungroups its sessions and touches no session (§5 defect 3: W, not D)"
730
+ },
731
+ agentistics_summary: { ...DATA, risk: "R", routes: ["GET /api/data"], reason: "reads computed metrics" },
732
+ agentistics_harnesses: { ...DATA, risk: "R", routes: ["GET /api/data"], reason: "reads computed metrics per harness" },
733
+ agentistics_projects: { ...DATA, risk: "R", routes: ["GET /api/data"], reason: "reads computed metrics per project" },
734
+ agentistics_sessions: { ...DATA, risk: "R", routes: ["GET /api/data"], reason: "reads session metadata (first_prompt is untrusted text, §4.8)" },
735
+ agentistics_costs: { ...DATA, risk: "R", routes: ["GET /api/data"], reason: "reads computed costs" },
736
+ agentistics_repos: { ...DATA, risk: "R", routes: ["GET /api/data"], reason: "reads computed metrics per repository" },
737
+ agentistics_component_catalog: { ...DATA, risk: "R", routes: [], reason: "returns a static list; calls nothing" },
738
+ agentistics_get_layouts: { ...PREFS, risk: "R", routes: ["GET /api/preferences"], reason: "reads the saved layouts" },
739
+ agentistics_create_layout: { ...PREFS, risk: "W", routes: ["GET /api/preferences", "PUT /api/preferences"], reason: "adds a layout; removed by delete_layout" },
740
+ agentistics_add_component: { ...PREFS, risk: "W", routes: ["GET /api/preferences", "PUT /api/preferences"], reason: "adds a widget; removed by remove_component" },
741
+ agentistics_remove_component: { ...PREFS, risk: "W", routes: ["GET /api/preferences", "PUT /api/preferences"], reason: "removes a widget; re-added by add_component" },
742
+ agentistics_set_active_layout: { ...PREFS, risk: "W", routes: ["GET /api/preferences", "PUT /api/preferences"], reason: "switches the active layout; switched back by the same call" },
743
+ agentistics_delete_layout: {
744
+ ...PREFS,
745
+ risk: "W",
746
+ routes: ["GET /api/preferences", "PUT /api/preferences"],
747
+ reason: "a layout is a saved arrangement of widgets, no data goes with it (§5 defect 3: W, not D)"
748
+ },
749
+ agentistics_build_layout: { ...PREFS, risk: "W", routes: ["GET /api/preferences", "PUT /api/preferences"], reason: "writes a layout; reversible by another build or delete" },
750
+ agentistics_export_pdf: { ...DATA, risk: "R", routes: [], reason: "composes a local dashboard URL; calls nothing and exports nothing itself" },
751
+ agentistics_tags: { ...DATA, risk: "R", routes: ["GET /api/tags"], reason: "reads aggregate-only tag cards" },
752
+ agentistics_tag_detail: { ...DATA, risk: "R", routes: ["GET /api/tags", "GET /api/tags/:id"], reason: "reads one tag aggregate (counts and sums only)" },
753
+ agentistics_team_status: { ...PREFS, risk: "R", routes: ["GET /api/preferences"], reason: "reads mode and connection endpoints; returns no token" },
754
+ agentistics_team_members: { ...DATA, central: "only", risk: "R", routes: ["GET /api/team/members"], reason: "reads the member list; central only" }
755
+ };
681
756
  // session-tokens.ts
682
757
  function sessionHarness(s) {
683
758
  return s.harness ?? "claude";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentistics/mcp",
3
- "version": "2.72.0",
3
+ "version": "2.75.0",
4
4
  "description": "Agentistics MCP server — Claude Code analytics for Claude Desktop and Claude Code",
5
5
  "type": "module",
6
6
  "main": "./dist/agentistics-mcp.js",
@@ -32,8 +32,8 @@
32
32
  "license": "FSL-1.1-ALv2",
33
33
  "repository": {
34
34
  "type": "git",
35
- "url": "git+https://github.com/blpsoares/agentistics.git",
35
+ "url": "git+https://github.com/agentistics/agentistics.git",
36
36
  "directory": "packages/mcp"
37
37
  },
38
- "homepage": "https://github.com/blpsoares/agentistics"
38
+ "homepage": "https://github.com/agentistics/agentistics"
39
39
  }