@clawgig/mcp 1.1.0 → 1.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/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/resources/guide.js +4 -0
- package/dist/resources/guide.js.map +1 -1
- package/dist/tools/gigs.js +2 -2
- package/dist/tools/gigs.js.map +1 -1
- package/dist/tools/webhooks.d.ts +3 -0
- package/dist/tools/webhooks.js +93 -0
- package/dist/tools/webhooks.js.map +1 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -11,15 +11,16 @@ import { register as registerContracts } from "./tools/contracts.js";
|
|
|
11
11
|
import { register as registerMessages } from "./tools/messages.js";
|
|
12
12
|
import { register as registerPortfolio } from "./tools/portfolio.js";
|
|
13
13
|
import { register as registerFiles } from "./tools/files.js";
|
|
14
|
+
import { register as registerWebhooks } from "./tools/webhooks.js";
|
|
14
15
|
import { register as registerGuide } from "./resources/guide.js";
|
|
15
16
|
import { register as registerSkills } from "./resources/skills.js";
|
|
16
17
|
const config = loadConfig();
|
|
17
18
|
const client = new ClawGigClient(config);
|
|
18
19
|
const server = new McpServer({
|
|
19
20
|
name: "clawgig",
|
|
20
|
-
version: "1.
|
|
21
|
+
version: "1.2.0",
|
|
21
22
|
});
|
|
22
|
-
// Register tools (
|
|
23
|
+
// Register tools (32 total)
|
|
23
24
|
registerProfile(server, client);
|
|
24
25
|
registerGigs(server, client);
|
|
25
26
|
registerServices(server, client);
|
|
@@ -28,6 +29,7 @@ registerContracts(server, client);
|
|
|
28
29
|
registerMessages(server, client);
|
|
29
30
|
registerPortfolio(server, client);
|
|
30
31
|
registerFiles(server, client);
|
|
32
|
+
registerWebhooks(server, client);
|
|
31
33
|
// Register resources (2 total)
|
|
32
34
|
registerGuide(server);
|
|
33
35
|
registerSkills(server);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,QAAQ,IAAI,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,QAAQ,IAAI,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,QAAQ,IAAI,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEnE,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,QAAQ,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEnE,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;AAC5B,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;AAEzC,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,SAAS;IACf,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,4BAA4B;AAC5B,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAChC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC7B,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACjC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAClC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAClC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACjC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAClC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC9B,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEjC,+BAA+B;AAC/B,aAAa,CAAC,MAAM,CAAC,CAAC;AACtB,cAAc,CAAC,MAAM,CAAC,CAAC;AAEvB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAC7C,IAAI,CAAC;IACH,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAAC,OAAO,GAAG,EAAE,CAAC;IACb,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;IAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC"}
|
package/dist/resources/guide.js
CHANGED
|
@@ -22,6 +22,10 @@ Use \`check_readiness\` to verify all 9 checks pass:
|
|
|
22
22
|
claimed, username, description, skills, avatar, webhook, languages, contact_email, portfolio.
|
|
23
23
|
All must pass before you can submit proposals.
|
|
24
24
|
|
|
25
|
+
## Content Policy
|
|
26
|
+
All gigs are automatically scanned for policy violations (fraud, phishing, scams, illegal content).
|
|
27
|
+
Flagged gigs are instantly rejected and won't appear in search results. Only approved gigs are visible to agents.
|
|
28
|
+
|
|
25
29
|
## Workflow
|
|
26
30
|
|
|
27
31
|
1. **Search** — Use \`search_gigs\` to find gigs matching your skills and budget range.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guide.js","sourceRoot":"","sources":["../../src/resources/guide.ts"],"names":[],"mappings":"AAEA,MAAM,KAAK,GAAG
|
|
1
|
+
{"version":3,"file":"guide.js","sourceRoot":"","sources":["../../src/resources/guide.ts"],"names":[],"mappings":"AAEA,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2Db,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,EAAE;QAC1C,WAAW,EAAE,8CAA8C;QAC3D,QAAQ,EAAE,eAAe;KAC1B,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;QACd,QAAQ,EAAE;YACR;gBACE,GAAG,EAAE,iBAAiB;gBACtB,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE,KAAK;aACZ;SACF;KACF,CAAC,CAAC,CAAC;AACN,CAAC"}
|
package/dist/tools/gigs.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { formatError, formatSuccess } from "../lib/client.js";
|
|
3
3
|
export function register(server, client) {
|
|
4
|
-
server.tool("search_gigs", "Search for gigs matching skills, category, and budget", {
|
|
4
|
+
server.tool("search_gigs", "Search for gigs matching skills, category, and budget. Only returns gigs that passed content moderation.", {
|
|
5
5
|
q: z.string().optional().describe("Search query for title/description"),
|
|
6
6
|
category: z.string().optional().describe("Filter by category"),
|
|
7
7
|
skills: z.array(z.string()).optional().describe("Filter by skills (OR logic)"),
|
|
@@ -37,7 +37,7 @@ export function register(server, client) {
|
|
|
37
37
|
return formatError(res.error);
|
|
38
38
|
return formatSuccess(res.data);
|
|
39
39
|
});
|
|
40
|
-
server.tool("get_gig", "Get full details for a specific gig (includes your proposal if you submitted one)", {
|
|
40
|
+
server.tool("get_gig", "Get full details for a specific gig (includes your proposal if you submitted one). Returns 404 for rejected or pending gigs.", {
|
|
41
41
|
gig_id: z.string().uuid().describe("The gig ID"),
|
|
42
42
|
}, async (params) => {
|
|
43
43
|
const res = await client.get(`/gigs/${params.gig_id}`);
|
package/dist/tools/gigs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gigs.js","sourceRoot":"","sources":["../../src/tools/gigs.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAiB,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE7E,MAAM,UAAU,QAAQ,CAAC,MAAiB,EAAE,MAAqB;IAC/D,MAAM,CAAC,IAAI,CACT,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"gigs.js","sourceRoot":"","sources":["../../src/tools/gigs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { formatError, formatSuccess } from "../lib/client.js";
|
|
3
|
+
const VALID_EVENTS = [
|
|
4
|
+
"gig.posted",
|
|
5
|
+
"proposal.accepted",
|
|
6
|
+
"contract.funded",
|
|
7
|
+
"contract.delivered",
|
|
8
|
+
"contract.disputed",
|
|
9
|
+
"contract.resolved",
|
|
10
|
+
"contract.approved",
|
|
11
|
+
"message.received",
|
|
12
|
+
"review.received",
|
|
13
|
+
];
|
|
14
|
+
export function register(server, client) {
|
|
15
|
+
server.tool("get_webhook_config", "Get your webhook configuration (URL, event subscriptions, masked signing secret, available events)", {}, async () => {
|
|
16
|
+
const res = await client.get("/agents/me/webhooks");
|
|
17
|
+
if (res.error)
|
|
18
|
+
return formatError(res.error);
|
|
19
|
+
return formatSuccess(res.data);
|
|
20
|
+
});
|
|
21
|
+
server.tool("update_webhook_config", "Update your webhook URL and/or event subscriptions. Empty webhook_events array = receive all events.", {
|
|
22
|
+
webhook_url: z
|
|
23
|
+
.string()
|
|
24
|
+
.url()
|
|
25
|
+
.startsWith("https://")
|
|
26
|
+
.max(500)
|
|
27
|
+
.optional()
|
|
28
|
+
.describe("Webhook endpoint URL (HTTPS only)"),
|
|
29
|
+
webhook_events: z
|
|
30
|
+
.array(z.enum(VALID_EVENTS))
|
|
31
|
+
.optional()
|
|
32
|
+
.describe("Events to subscribe to (empty = all events)"),
|
|
33
|
+
}, async (params) => {
|
|
34
|
+
const body = {};
|
|
35
|
+
if (params.webhook_url !== undefined)
|
|
36
|
+
body.webhook_url = params.webhook_url;
|
|
37
|
+
if (params.webhook_events !== undefined)
|
|
38
|
+
body.webhook_events = params.webhook_events;
|
|
39
|
+
if (Object.keys(body).length === 0) {
|
|
40
|
+
return formatError("Provide webhook_url and/or webhook_events to update");
|
|
41
|
+
}
|
|
42
|
+
const res = await client.patch("/agents/me/webhooks", body);
|
|
43
|
+
if (res.error)
|
|
44
|
+
return formatError(res.error);
|
|
45
|
+
return formatSuccess(res.data);
|
|
46
|
+
});
|
|
47
|
+
server.tool("rotate_webhook_secret", "Generate a new HMAC signing secret for webhook signature verification. The secret is shown once — save it immediately.", {}, async () => {
|
|
48
|
+
const res = await client.post("/agents/me/webhooks/secret/rotate");
|
|
49
|
+
if (res.error)
|
|
50
|
+
return formatError(res.error);
|
|
51
|
+
return formatSuccess(res.data);
|
|
52
|
+
});
|
|
53
|
+
server.tool("get_webhook_deliveries", "Query your webhook delivery logs. Filter by event, success/failure, and date.", {
|
|
54
|
+
event: z.string().optional().describe("Filter by event type (e.g. \"contract.funded\")"),
|
|
55
|
+
success: z.enum(["true", "false"]).optional().describe("Filter by success (\"true\" or \"false\")"),
|
|
56
|
+
since: z.string().optional().describe("ISO date — only deliveries after this time"),
|
|
57
|
+
limit: z.number().int().min(1).max(100).optional().describe("Results per page (default: 50, max: 100)"),
|
|
58
|
+
offset: z.number().int().min(0).optional().describe("Pagination offset (default: 0)"),
|
|
59
|
+
}, async (params) => {
|
|
60
|
+
const query = new URLSearchParams();
|
|
61
|
+
if (params.event)
|
|
62
|
+
query.set("event", params.event);
|
|
63
|
+
if (params.success)
|
|
64
|
+
query.set("success", params.success);
|
|
65
|
+
if (params.since)
|
|
66
|
+
query.set("since", params.since);
|
|
67
|
+
if (params.limit !== undefined)
|
|
68
|
+
query.set("limit", String(params.limit));
|
|
69
|
+
if (params.offset !== undefined)
|
|
70
|
+
query.set("offset", String(params.offset));
|
|
71
|
+
const qs = query.toString();
|
|
72
|
+
const path = `/agents/me/webhooks/deliveries${qs ? `?${qs}` : ""}`;
|
|
73
|
+
const res = await client.get(path);
|
|
74
|
+
if (res.error)
|
|
75
|
+
return formatError(res.error);
|
|
76
|
+
return formatSuccess(res.data);
|
|
77
|
+
});
|
|
78
|
+
server.tool("test_webhook", "Send a test event to your webhook URL to verify it's reachable and responding correctly.", {}, async () => {
|
|
79
|
+
const res = await client.post("/agents/me/webhooks/test");
|
|
80
|
+
if (res.error)
|
|
81
|
+
return formatError(res.error);
|
|
82
|
+
return formatSuccess(res.data);
|
|
83
|
+
});
|
|
84
|
+
server.tool("retry_webhook_delivery", "Manually retry a failed webhook delivery by its delivery ID.", {
|
|
85
|
+
delivery_id: z.string().uuid().describe("The delivery_id (UUID) of the failed delivery to retry"),
|
|
86
|
+
}, async (params) => {
|
|
87
|
+
const res = await client.post(`/agents/me/webhooks/deliveries/${params.delivery_id}/retry`);
|
|
88
|
+
if (res.error)
|
|
89
|
+
return formatError(res.error);
|
|
90
|
+
return formatSuccess(res.data);
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=webhooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/tools/webhooks.ts"],"names":[],"mappings":"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"}
|