@freelancercom/phabricator-mcp 2.0.14 → 2.0.15

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.
@@ -51,7 +51,6 @@ export function registerManiphestTools(server, client) {
51
51
  projectPHIDs: z.array(z.string()).optional().describe('Project PHIDs to tag'),
52
52
  subscriberPHIDs: z.array(z.string()).optional().describe('Subscriber PHIDs'),
53
53
  status: z.string().optional().describe('Initial status'),
54
- subtype: z.string().optional().describe('Task subtype (e.g. "default", "incident")'),
55
54
  parentPHIDs: z.array(z.string()).optional().describe('Parent task PHIDs'),
56
55
  subtaskPHIDs: z.array(z.string()).optional().describe('Subtask PHIDs'),
57
56
  commitPHIDs: z.array(z.string()).optional().describe('Commit PHIDs to associate'),
@@ -81,9 +80,6 @@ export function registerManiphestTools(server, client) {
81
80
  if (params.status !== undefined) {
82
81
  transactions.push({ type: 'status', value: params.status });
83
82
  }
84
- if (params.subtype !== undefined) {
85
- transactions.push({ type: 'subtype', value: params.subtype });
86
- }
87
83
  if (params.parentPHIDs !== undefined) {
88
84
  transactions.push({ type: 'parents.set', value: params.parentPHIDs });
89
85
  }
@@ -118,7 +114,6 @@ export function registerManiphestTools(server, client) {
118
114
  ownerPHID: z.string().nullable().optional().describe('New owner PHID (null to unassign)'),
119
115
  priority: z.string().optional().describe('New priority'),
120
116
  status: z.string().optional().describe('New status: open, resolved, wontfix, invalid, spite, duplicate'),
121
- subtype: z.string().optional().describe('Task subtype (e.g. "default", "incident")'),
122
117
  addProjectPHIDs: z.array(z.string()).optional().describe('Project PHIDs to add'),
123
118
  removeProjectPHIDs: z.array(z.string()).optional().describe('Project PHIDs to remove'),
124
119
  addSubscriberPHIDs: z.array(z.string()).optional().describe('Subscriber PHIDs to add'),
@@ -151,9 +146,6 @@ export function registerManiphestTools(server, client) {
151
146
  if (params.status !== undefined) {
152
147
  transactions.push({ type: 'status', value: params.status });
153
148
  }
154
- if (params.subtype !== undefined) {
155
- transactions.push({ type: 'subtype', value: params.subtype });
156
- }
157
149
  if (params.addProjectPHIDs !== undefined) {
158
150
  transactions.push({ type: 'projects.add', value: params.addProjectPHIDs });
159
151
  }
@@ -7,6 +7,7 @@ export function registerPhameTools(server, client) {
7
7
  constraints: jsonCoerce(z.object({
8
8
  ids: z.array(z.coerce.number()).optional().describe('Blog IDs'),
9
9
  phids: z.array(z.string()).optional().describe('Blog PHIDs'),
10
+ statuses: z.string().optional().describe('Blog status: "active" or "archived"'),
10
11
  subscribers: z.array(z.string()).optional().describe('Subscriber user/project PHIDs'),
11
12
  projects: z.array(z.string()).optional().describe('Project PHIDs'),
12
13
  query: z.string().optional().describe('Full-text search query'),
@@ -2,7 +2,8 @@ import { z } from 'zod';
2
2
  import { jsonCoerce } from './coerce.js';
3
3
  export function registerTransactionTools(server, client) {
4
4
  server.tool('phabricator_transaction_search', 'Search transactions (comments, status changes, etc.) on any Phabricator object (e.g., "D123", "T456")', {
5
- objectIdentifier: z.string().describe('Object ID (e.g., "D123", "T456") or PHID'),
5
+ objectIdentifier: z.string().optional().describe('Object ID (e.g., "D123", "T456") or PHID. Provide this or objectType, not both.'),
6
+ objectType: z.string().optional().describe('Object type group to query (e.g., "TASK", "DREV", "CMIT"). Queries all transactions of that type. Provide this or objectIdentifier, not both.'),
6
7
  constraints: jsonCoerce(z.object({
7
8
  phids: z.array(z.string()).optional().describe('Transaction PHIDs'),
8
9
  authorPHIDs: z.array(z.string()).optional().describe('Author PHIDs'),
@@ -11,9 +12,10 @@ export function registerTransactionTools(server, client) {
11
12
  after: z.string().optional().describe('Cursor for next-page pagination'),
12
13
  before: z.string().optional().describe('Cursor for previous-page pagination'),
13
14
  }, async (params) => {
14
- const { objectIdentifier, ...searchParams } = params;
15
+ const { objectIdentifier, objectType, ...searchParams } = params;
15
16
  const result = await client.call('transaction.search', {
16
17
  objectIdentifier,
18
+ objectType,
17
19
  ...searchParams,
18
20
  });
19
21
  return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
@@ -19,6 +19,7 @@ export function registerUserTools(server, client) {
19
19
  isBot: z.boolean().optional().describe('Filter by bot status'),
20
20
  isMailingList: z.boolean().optional().describe('Filter by mailing list status'),
21
21
  needsApproval: z.boolean().optional().describe('Filter to users awaiting admin approval'),
22
+ mfa: z.boolean().optional().describe('Filter by MFA enrollment status (admin-only)'),
22
23
  createdStart: z.coerce.number().optional().describe('Created after (epoch timestamp)'),
23
24
  createdEnd: z.coerce.number().optional().describe('Created before (epoch timestamp)'),
24
25
  query: z.string().optional().describe('Full-text search query'),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@freelancercom/phabricator-mcp",
3
- "version": "2.0.14",
3
+ "version": "2.0.15",
4
4
  "description": "MCP server for Phabricator Conduit API - manage tasks, code reviews, repositories, and more",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",