beeswax-mcp 0.2.0 → 0.2.1

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
@@ -80,6 +80,7 @@ longer use from the same settings page.
80
80
  | `list_events`, `get_event` | `/events` (visibility-filtered) |
81
81
  | `list_milestones`, `get_milestone` | `/milestones` |
82
82
  | `get_project` | `/active_account/projects/:id` |
83
+ | `list_task_files`, `list_task_file_versions` | `/tasks/:id/files` (+ per-file version history) |
83
84
  | `list_products_services`, `get_product_service` | `/transaction_templates` |
84
85
  | `list_manual_journals`, `get_manual_journal`, `create_manual_journal` (write), `finalise_manual_journal` (write) | `/raw_journal_entries` |
85
86
  | `list_tax_returns`, `get_tax_return`, `get_tax_return_field_transactions`, `list_tax_return_findings`, `update_tax_return_field` (write), `confirm_tax_return_section` (write) | `/tax_returns` |
package/dist/index.js CHANGED
@@ -14,7 +14,7 @@ if (!token) {
14
14
  }
15
15
  const client = new BeeswaxClient(baseUrl, token);
16
16
  const toolsByName = new Map(TOOLS.map((tool) => [tool.name, tool]));
17
- const server = new Server({ name: "beeswax-mcp", version: "0.2.0" }, { capabilities: { tools: {} } });
17
+ const server = new Server({ name: "beeswax-mcp", version: "0.2.1" }, { capabilities: { tools: {} } });
18
18
  server.setRequestHandler(ListToolsRequestSchema, async () => ({
19
19
  tools: TOOLS.map(({ name, description, inputSchema }) => ({ name, description, inputSchema })),
20
20
  }));
package/dist/tools.js CHANGED
@@ -160,6 +160,23 @@ export const TOOLS = [
160
160
  inputSchema: { type: "object", properties: { id: { type: "integer" } }, required: ["id"] },
161
161
  handler: (client, args) => client.getOne(`/active_account/projects/${args.id}`, "project"),
162
162
  },
163
+ // ── Task files & version history ───────────────────────────────────────
164
+ {
165
+ name: "list_task_files",
166
+ description: "List the files attached to a task, including version info: current_version_number and versions_count (files with versions_count > 0 have history readable via list_task_file_versions).",
167
+ inputSchema: { type: "object", properties: { task_id: { type: "integer" } }, required: ["task_id"] },
168
+ handler: (client, args) => client.getList(`/tasks/${args.task_id}/files`, "files"),
169
+ },
170
+ {
171
+ name: "list_task_file_versions",
172
+ description: "Version history of a task file (read-only). Returns { file, versions }: `file` is the current head; each `versions` entry is a replacement event — the archived file as it was BEFORE that replacement, with version_number, filename, size, the uploader, and their optional change note. History is append-only; restores appear as new versions.",
173
+ inputSchema: {
174
+ type: "object",
175
+ properties: { task_id: { type: "integer" }, file_id: { type: "integer" } },
176
+ required: ["task_id", "file_id"],
177
+ },
178
+ handler: (client, args) => client.getOne(`/tasks/${args.task_id}/files/${args.file_id}/versions`, ""),
179
+ },
163
180
  // ── Products & services catalogue (transaction templates) ──────────────
164
181
  {
165
182
  name: "list_products_services",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "beeswax-mcp",
3
- "version": "0.2.0",
3
+ "version": "0.2.1",
4
4
  "description": "Official MCP server for Beeswax (beeswaxapp.com) — query invoices, quotes, expenses, payments, journals, time entries, projects and tax returns from Claude and other MCP clients.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://www.beeswaxapp.com/support/mcp-setup",