io.github.setluca/luca-mcp
NPM · @SETLUCA/MCP · 2 COMPONENTS
SetLuca DM sales from any MCP client: 208 API tools and 15 task tools for leads, replies, calls.
Available components
Last scanned (14 hours ago)
Scores higher than 93% of npm servers
Category CRM and Sales
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security100
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 0 of 4 dependencies flagged as unhealthy. View diagnostics → Pass
Provenance & Transparency100
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to setluca/luca-mcp). View diagnostics → Pass
- Clear OSI-approved license (Apache-2.0).Pass
- Actively maintained (last published 11 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability75
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 39879 tokens (~176/item across 226 items; 223 tools + 3 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management62
- Stability check failed: the tool surface changed between 0.2.1 and 0.6.0: 73 tool removals, 3 breaking changes, 98 additions. See how to fix → Fail
Tool Coverage92
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 74% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety98
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 13 of 14 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "luca_conversations_send_status" implies "send" and declares readOnlyHint instead, contradicting what its own name says it does. See how to fix → Partial
- An AI judge read all 225 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 25 Oct 26 +26
- Malware scan: unverified → pass ▲ security
- Known CVEs: unverified → pass ▲ security
- Dependency health: unverified → 1.00 ▲ functional
- 24 Oct 26 −12
- Known CVEs: pass → unverified ▼ security
- Malware scan: unverified → pass ▲ security
- Dependency health: 1.00 → unverified ▼ functional
- Package version: 0.5.2 → 0.6.0 functional
- 23 Oct 26 −4
- Malware scan: pass → unverified ▼ security
- Known CVEs: unverified → pass ▲ security
- Dependency health: unverified → 1.00 ▲ functional
- Package version: 0.5.1 → 0.5.2 functional
- 22 Oct 26 −6
- Known CVEs: pass → unverified ▼ security
- Stability: fail → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- Source repository: fail → pass ▲ security
- Schema quality: 35121 → 39994 ▼ functional
- Schema quality: 35121 → 40034 ▼ functional
- Dependency health: 1.00 → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Capabilities: pass → unverified ▼ functional
- Schema quality: 100 → unverified ▼ functional
- Destructive annotations: 13 of 14 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "luca_conversations_send_status" implies "send" and declares readOnlyHint instead, contradicting what its own name says it does. functional
- Package version: 0.4.0 → 0.5.1 functional
- Package version: 0.4.0 → 0.5.0 functional
- 19 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 60 to 63.
- 17 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 53 to 56.
- 15 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 46 to 50.
- 14 Oct 26 +37
- Stability: unverified → fail ▼ security
- Injection markers: unverified → pass ▲ security
- Judged manipulation: unverified → pass ▲ security
- Schema quality: 151 → 170 ▼ functional
- Tool coverage: 92% → 100% ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- Schema quality: unverified → 100 ▲ functional
- MCP protocol: unverified → pass ▲ functional
- Package version: 0.2.1 → 0.4.0 functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Analysed npm/@setluca/mcp@0.6.0
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | npm |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | setluca/luca-mcp |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/setluca/luca-mcp/.github/workflows/publish-mcp.yml@refs/tags/mcp-v0.6.0 |
| Rekor log index | 3437389699 |
| Predicate type | SLSA build provenance https://slsa.dev/provenance/v1 |
| Subject digest | sha512:8a88197a6a88d369331b3b23d0112097d6bd678e1a3823ca7a6158f079d41f81855c75cd0439b19d785eee85d3c80035ec73726dbd8d26231deecbc50 |
Background: How many MCP packages publish verified provenance →
Dependencies 4 packages
| Packages resolved | 4 |
|---|---|
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
luca_review_queue_objection_variant Record an objection variant choice ~195
Record which objection-specialist variant was picked for one queued draft. It is how the objection tests learn which handling works, so record the variant the coach actually chose. Luca operation: POST /api/review-queue/{id}/objection-variant Required scopes: review_queue:write Required OAuth scope: luca:queue_ops; data sensitivity: redacted Requires Idempotency-Key. Provide idempotencyKey for safe retries, or the server will generate one. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| body | object | yes | – |
| id | string | yes | – |
| idempotencyKey | string | – | Stable key for safe retries. If omitted, the MCP server generates a unique key for this call. |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_review_queue_regenerate Redraft a queued reply ~321
Replace a pending draft by having Luca draft its turn again, with an optional hint on what to change. An approved or sent draft can't be replaced, and a turn restarts at most 3 times across retry and regenerate. With auto-send on for the channel, the new draft can send without review. Luca operation: POST /api/review-queue/{id}/regenerate Required scopes: review_queue:write Required OAuth scope: luca:queue_ops; data sensitivity: redacted Requires Idempotency-Key. Provide idempotencyKey for safe retries, or the server will generate one. Destructive: has a real-world side effect. You must pass confirm: true; the call is rejected without it. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| body | object | – | – |
| confirm | boolean | – | This tool has a real-world side effect: it messages real leads, books, moves, or cancels a call, changes a lead's consent, imports leads, writes to a connected calendar or CRM, sends workspace events… |
| id | string | yes | – |
| idempotencyKey | string | – | Stable key for safe retries. If omitted, the MCP server generates a unique key for this call. |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_review_queue_reject Reject a queued draft ~183
Reject a pending review-queue draft so it never sends. Stops any related booking-recovery cadence and emits review.rejected. Luca operation: POST /api/review-queue/{id}/reject Required scopes: review_queue:write Required OAuth scope: luca:queue_ops; data sensitivity: redacted Requires Idempotency-Key. Provide idempotencyKey for safe retries, or the server will generate one. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| body | object | – | – |
| id | string | yes | – |
| idempotencyKey | string | – | Stable key for safe retries. If omitted, the MCP server generates a unique key for this call. |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_review_queue_restore Restore a rejected draft ~174
Restore a rejected review-queue item back to pending. Fails if it's a booking message whose recovery window already passed. Luca operation: POST /api/review-queue/{id}/restore Required scopes: review_queue:write Required OAuth scope: luca:queue_ops; data sensitivity: redacted Requires Idempotency-Key. Provide idempotencyKey for safe retries, or the server will generate one. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | – |
| idempotencyKey | string | – | Stable key for safe retries. If omitted, the MCP server generates a unique key for this call. |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_review_queue_sla Check the review queue's response times ~119
Read median first-response time and its daily trend. Tells you whether the queue is being cleared fast enough. Luca operation: GET /api/review-queue/sla Required scopes: review_queue:read Required OAuth scope: luca:read; data sensitivity: full_content Does not require idempotency. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| provenance | object | – | – |
| result | object | yes | – |
No examples provided.
luca_review_queue_summary Summarize the review queue ~127
Read how many drafts are pending and the newest few, with lead names and hot-lead flags but no draft text. Cheaper than listing the queue. Luca operation: GET /api/review-queue/summary Required scopes: review_queue:read Required OAuth scope: luca:read; data sensitivity: full_content Does not require idempotency. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| provenance | object | – | – |
| result | object | yes | – |
No examples provided.
luca_safety_accounts Check connected account safety ~107
Read each connected channel account's safety status and 24-hour send count. Luca operation: GET /api/account-safety Required scopes: safety:read Required OAuth scope: luca:read; data sensitivity: redacted Does not require idempotency. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_triage_inbox Triage the review queue ~168
Return the coach's prioritized reply queue: pending drafts with lead context and, for the top items, why Luca drafted what it drafted. With a redacted OAuth grant, lead names and draft text can be blanked; describe them as unavailable rather than empty. Start a review session here: it reads the queue and sends nothing. Example: call with { explainTop: 3 } to get the queue plus explanations for the three most urgent drafts.
| Name | Type | Req | Description |
|---|---|---|---|
| explainTop | integer | – | How many of the top items to attach a full explanation to (default 3). |
| limit | integer | – | Max queue items to return (default 20). |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| provenance | object | – | – |
| result | object | yes | – |
No examples provided.
luca_usage_messages Read this period's message count ~116
Read the message pool: used, allowed, and remaining for the period. Check this before starting work that drafts in bulk. Luca operation: GET /api/usage/messages Required scopes: usage:read Required OAuth scope: luca:read; data sensitivity: redacted Does not require idempotency. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_usage_spend Read this period's spend ~119
Read model spend for the period, rolled up by agent and by day, against the plan's cap. Luca operation: GET /api/usage Required scopes: usage:read Required OAuth scope: luca:read; data sensitivity: redacted Does not require idempotency. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| query | object | – | – |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_voice_corpus Read the coach's voice corpus ~132
List the coach's voice corpus: the writing every draft is matched against. Entry id, source, channel, and age always come back; the writing itself is blanked for a redacted-tier key. Luca operation: GET /api/voice Required scopes: voice:read Required OAuth scope: luca:read; data sensitivity: redacted Does not require idempotency. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_voice_profile Read the coach's voice fingerprint ~114
Read a non-verbatim voice-fingerprint summary: version, example count, and last refresh. No corpus text. Luca operation: GET /api/voice/profile Required scopes: voice:read Required OAuth scope: luca:read; data sensitivity: redacted Does not require idempotency. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_webhooks_deliveries_list List webhook deliveries ~112
List webhook deliveries. Luca operation: GET /api/webhook-subscriptions/deliveries Required scopes: webhooks:read Required OAuth scope: luca:read; data sensitivity: redacted Does not require idempotency. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| query | object | – | – |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_webhooks_deliveries_replay Replay a webhook delivery ~280
Replay one webhook delivery without changing the event id. Re-triggers the subscriber's downstream automation. Luca operation: POST /api/webhook-subscriptions/deliveries/{deliveryId}/replay Required scopes: webhooks:write Required OAuth scope: luca:full; data sensitivity: redacted Requires Idempotency-Key. Provide idempotencyKey for safe retries, or the server will generate one. Destructive: has a real-world side effect. You must pass confirm: true; the call is rejected without it. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| confirm | boolean | – | This tool has a real-world side effect: it messages real leads, books, moves, or cancels a call, changes a lead's consent, imports leads, writes to a connected calendar or CRM, sends workspace events… |
| deliveryId | string | yes | – |
| idempotencyKey | string | – | Stable key for safe retries. If omitted, the MCP server generates a unique key for this call. |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_webhooks_events_bulk_replay Replay a batch of webhook events ~271
Bulk replay webhook events by type and time range. Re-triggers downstream automations at scale. Luca operation: POST /api/webhook-subscriptions/events/replay Required scopes: webhooks:write Required OAuth scope: luca:full; data sensitivity: redacted Requires Idempotency-Key. Provide idempotencyKey for safe retries, or the server will generate one. Destructive: has a real-world side effect. You must pass confirm: true; the call is rejected without it. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| body | object | – | – |
| confirm | boolean | – | This tool has a real-world side effect: it messages real leads, books, moves, or cancels a call, changes a lead's consent, imports leads, writes to a connected calendar or CRM, sends workspace events… |
| idempotencyKey | string | – | Stable key for safe retries. If omitted, the MCP server generates a unique key for this call. |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_webhooks_events_list List webhook events ~132
List canonical webhook events of one type, newest first, in the delivered payload fields. Falls back to a documented sample payload when the workspace has none yet. Luca operation: GET /api/webhook-events Required scopes: webhooks:read Required OAuth scope: luca:read; data sensitivity: redacted Does not require idempotency. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| query | object | yes | – |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_webhooks_events_replay Replay a webhook event ~278
Replay one canonical webhook event. Re-triggers subscribers' downstream automations. Luca operation: POST /api/webhook-subscriptions/events/{eventId}/replay Required scopes: webhooks:write Required OAuth scope: luca:full; data sensitivity: redacted Requires Idempotency-Key. Provide idempotencyKey for safe retries, or the server will generate one. Destructive: has a real-world side effect. You must pass confirm: true; the call is rejected without it. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| body | object | – | – |
| confirm | boolean | – | This tool has a real-world side effect: it messages real leads, books, moves, or cancels a call, changes a lead's consent, imports leads, writes to a connected calendar or CRM, sends workspace events… |
| eventId | string | yes | – |
| idempotencyKey | string | – | Stable key for safe retries. If omitted, the MCP server generates a unique key for this call. |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_webhooks_signature_guide Read the webhook signature guide ~106
Describe Luca webhook HMAC verification. Luca operation: GET /api/webhook-subscriptions/signature-guide Required scopes: webhooks:read Required OAuth scope: luca:read; data sensitivity: redacted Does not require idempotency. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_webhooks_subscriptions_create Create a webhook subscription ~210
Create an outbound webhook subscription. Luca operation: POST /api/webhook-subscriptions Required scopes: webhooks:write Required OAuth scope: luca:full; data sensitivity: redacted Does not require idempotency. Destructive: has a real-world side effect. You must pass confirm: true; the call is rejected without it. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| body | object | yes | – |
| confirm | boolean | – | This tool has a real-world side effect: it messages real leads, books, moves, or cancels a call, changes a lead's consent, imports leads, writes to a connected calendar or CRM, sends workspace events… |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_webhooks_subscriptions_delete Delete a webhook subscription ~133
Delete an outbound webhook subscription. Terminal, idempotent soft delete: delivery history stays queryable and the subscription can never be resurrected. Luca operation: DELETE /api/webhook-subscriptions/{id} Required scopes: webhooks:write Required OAuth scope: luca:full; data sensitivity: redacted Does not require idempotency. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | – |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_webhooks_subscriptions_list List webhook subscriptions ~108
List outbound webhook subscriptions. Luca operation: GET /api/webhook-subscriptions Required scopes: webhooks:read Required OAuth scope: luca:read; data sensitivity: redacted Does not require idempotency. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| query | object | – | – |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_webhooks_subscriptions_update Update a webhook subscription ~263
Update an outbound webhook subscription. Luca operation: PATCH /api/webhook-subscriptions/{id} Required scopes: webhooks:write Required OAuth scope: luca:full; data sensitivity: redacted Requires Idempotency-Key. Provide idempotencyKey for safe retries, or the server will generate one. Destructive: has a real-world side effect. You must pass confirm: true; the call is rejected without it. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| body | object | – | – |
| confirm | boolean | – | This tool has a real-world side effect: it messages real leads, books, moves, or cancels a call, changes a lead's consent, imports leads, writes to a connected calendar or CRM, sends workspace events… |
| id | string | yes | – |
| idempotencyKey | string | – | Stable key for safe retries. If omitted, the MCP server generates a unique key for this call. |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
luca_webhooks_test_delivery Send a test webhook ~257
Queue a canonical test webhook event. Luca operation: POST /api/webhook-subscriptions/test-delivery Required scopes: webhooks:write Required OAuth scope: luca:full; data sensitivity: redacted Requires Idempotency-Key. Provide idempotencyKey for safe retries, or the server will generate one. Destructive: has a real-world side effect. You must pass confirm: true; the call is rejected without it. Use workspaceId or workspaceSlug to override the default workspace configured by environment.
| Name | Type | Req | Description |
|---|---|---|---|
| body | object | – | – |
| confirm | boolean | – | This tool has a real-world side effect: it messages real leads, books, moves, or cancels a call, changes a lead's consent, imports leads, writes to a connected calendar or CRM, sends workspace events… |
| idempotencyKey | string | – | Stable key for safe retries. If omitted, the MCP server generates a unique key for this call. |
| workspaceId | string | – | Optional Luca workspace id override. |
| workspaceSlug | string | – | Optional Luca workspace slug override. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | object | yes | – |
No examples provided.
How do I install the io.github.setluca/luca-mcp server?
io.github.setluca/luca-mcp runs locally as an npm package, launched with npx -y @setluca/mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · @setluca/mcp
claude mcp add setluca-luca-mcp -- npx -y @setluca/mcp
What is the io.github.setluca/luca-mcp server?
io.github.setluca/luca-mcp is listed in the public MCP registry as io.github.setluca/luca-mcp. SetLuca DM sales from any MCP client: 208 API tools and 15 task tools for leads, replies, calls. This page covers its npm package (@setluca/mcp).
Is the io.github.setluca/luca-mcp server safe to use?
io.github.setluca/luca-mcp scores 89 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the io.github.setluca/luca-mcp server expose?
io.github.setluca/luca-mcp exposes 223 tools: luca_capabilities_get, luca_leads_list, luca_leads_get, luca_leads_explain, luca_leads_create, and 218 more. Their descriptions and schemas cost roughly 39,605 tokens of context every time the server is loaded.
Is the io.github.setluca/luca-mcp server still maintained?
io.github.setluca/luca-mcp is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the io.github.setluca/luca-mcp server under?
io.github.setluca/luca-mcp declares the Apache-2.0 licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.