catchintent

The intent layer for B2B outbound. Find, triage, and act on warmth-scored leads.

사용해야 할까요

품질 및 안전성

B
설명 품질
93%
스키마 완전성
71%
이름 품질
80%
오염 위험
80%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (4)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains suspicious base64-like encoded stringproduct_get에서
  • LOWTool 'lead_update_sequence' description lacks action verblead_update_sequence에서
  • LOWTool 'lead_enrich' description lacks action verblead_enrich에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~3,091토큰 (도구 정의)
~1.5 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 2.41%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "catchintent": {
      "url": "https://engine.catchintent.com/mcp"
    }
  }
}

원격 엔드포인트

https://engine.catchintent.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (14)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢lead_search(productId, status, warmth, workflowTag, search, ...)

Search leads in the workspace. A lead is always a person discovered on LinkedIn. Filter by warmth, status, or text.

입력 스키마

{
  "type": "object",
  "properties": {
    "productId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "status": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "new",
          "seen",
          "saved",
          "pushed",
          "archived"
        ]
      }
    },
    "warmth": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "hot",
          "warm",
          "cool"
        ]
      }
    },
    "workflowTag": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "search": {
      "type": "string",
      "maxLength": 200
    },
    "page": {
      "default": 1,
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "default": 20,
      "type": "integer",
      "minimum": 1,
      "maximum": 200
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢lead_get(leadId)

Get full details of one lead: profile, discovery context (fit reason, pain hypothesis, role signals, disqualifiers), the AI-drafted outreach sequence (lead.outreach), warmth score, and status.

입력 스키마

{
  "type": "object",
  "properties": {
    "leadId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    }
  },
  "required": [
    "leadId"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡lead_update_status(leadId, status)

Move a lead through the triage funnel. Valid transitions: NEW → SEEN/SAVED/PUSHED/ARCHIVED, SEEN ↔ SAVED, SAVED → PUSHED/ARCHIVED, PUSHED → ARCHIVED, ARCHIVED → SEEN. PUSHED is irreversible — it marks handoff to an outreach tool / CRM.

입력 스키마

{
  "type": "object",
  "properties": {
    "leadId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "status": {
      "type": "string",
      "enum": [
        "new",
        "seen",
        "saved",
        "pushed",
        "archived"
      ]
    }
  },
  "required": [
    "leadId",
    "status"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡lead_regenerate_sequence(leadId, instructions)

Re-draft the lead's AI outreach sequence (LinkedIn/X steps). Optional instructions steer the rewrite. Capped per lead — edit directly once the cap is hit.

입력 스키마

{
  "type": "object",
  "properties": {
    "leadId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "instructions": {
      "type": "string",
      "maxLength": 2000
    }
  },
  "required": [
    "leadId"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡lead_update_sequence(leadId, steps)

Replace the lead's outreach sequence steps with edited versions (marks the sequence as edited).

입력 스키마

{
  "type": "object",
  "properties": {
    "leadId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "steps": {
      "minItems": 1,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "order": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          },
          "channel": {
            "type": "string"
          },
          "purpose": {
            "type": "string"
          },
          "delayDays": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "body": {
            "type": "string"
          }
        },
        "required": [
          "order",
          "channel",
          "purpose",
          "delayDays",
          "body"
        ]
      }
    }
  },
  "required": [
    "leadId",
    "steps"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪lead_enrich(leadId)

Trigger full LinkedIn profile enrichment via Apify (~$0.002, idempotent).

입력 스키마

{
  "type": "object",
  "properties": {
    "leadId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    }
  },
  "required": [
    "leadId"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡lead_push_to_crm(leadIds, provider)

Push leads to your connected CRM (HubSpot, Close, Pipedrive, Zoho). Each lead becomes a contact / deal in the destination. Lead status does not change automatically — call lead_update_status to mark as `pushed` once CRM confirms.

입력 스키마

{
  "type": "object",
  "properties": {
    "leadIds": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid",
        "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
      }
    },
    "provider": {
      "type": "string",
      "enum": [
        "hubspot",
        "close",
        "pipedrive",
        "zoho"
      ]
    }
  },
  "required": [
    "leadIds"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢workspace_usage

Current workspace usage vs plan limits: leads delivered this billing period, team members, products, AI compute budget, daily/monthly caps.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡workspace_icp_options(field)

Get the valid Seniority Level and Job Function labels for product targeting (the reach dimensions MCP can set; roles are free text). Call this before product_update — unknown labels are rejected, never silently dropped.

입력 스키마

{
  "type": "object",
  "properties": {
    "field": {
      "type": "string",
      "enum": [
        "seniorityLevels",
        "jobFunctions"
      ]
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢product_list

List every product/brand tracked by this workspace. Each product has its own brand profile, audience, and leads. Returns id, name, and timestamps.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢product_get(productId)

Resolved brand profile for a product, returned as nested sections with human-readable labels: sell (name/description/keywords/competitors/offer), fit (company firmographics), reach (roles/seniority/functions), plus offer, voice, and domain. Drives all AI scoring + outreach drafting for that product.

입력 스키마

{
  "type": "object",
  "properties": {
    "productId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    }
  },
  "required": [
    "productId"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡product_create(name, description, domain, keywords, competitors, ...)

Create a new product. You can set sell (name/description/keywords/competitors), the structured offer, voice, and reach (roles/seniority/functions). Company firmographics (industries/size/country) are set in the dashboard, not here. Brand fields are optional and can be filled later via product_update.

입력 스키마

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 100
    },
    "description": {
      "type": "string",
      "maxLength": 1000
    },
    "domain": {
      "type": "string",
      "maxLength": 255
    },
    "keywords": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "competitors": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "icp": {
      "type": "object",
      "properties": {
        "targetRoles": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "seniorityLevels": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "jobFunctions": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "offer": {
      "type": "object",
      "properties": {
        "headline": {
          "type": "string"
        },
        "targetPainPoint": {
          "type": "string"
        },
        "uniqueMechanism": {
          "type": "string"
        },
        "proofPoints": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "callToAction": {
          "type": "string"
        },
        "riskReversal": {
          "type": "string"
        },
        "pricingContext": {
          "type": "string"
        }
      },
      "required": [
        "headline",
        "targetPainPoint",
        "uniqueMechanism",
        "proofPoints",
        "callToAction"
      ]
    },
    "voice": {
      "type": "object",
      "properties": {
        "tone": {
          "type": "string",
          "enum": [
            "professional",
            "friendly",
            "casual",
            "authoritative"
          ]
        },
        "personality": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "doNots": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "customInstructions": {
          "type": "string"
        }
      },
      "required": [
        "tone",
        "personality"
      ]
    }
  },
  "required": [
    "name"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡product_update(productId, name, description, domain, keywords, ...)

Update a product. Partial — only provided fields change. You can set sell (name/description/keywords/competitors), the structured offer, voice, and reach (roles/seniority/functions). Company firmographics (industries/size/country) are set in the dashboard, not here. Reach labels are resolved strictly to canonical IDs; unknown values rejected.

입력 스키마

{
  "type": "object",
  "properties": {
    "productId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "name": {
      "type": "string",
      "maxLength": 100
    },
    "description": {
      "type": "string",
      "maxLength": 1000
    },
    "domain": {
      "type": "string",
      "maxLength": 255
    },
    "keywords": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "competitors": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "icp": {
      "type": "object",
      "properties": {
        "targetRoles": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "seniorityLevels": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "jobFunctions": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "offer": {
      "type": "object",
      "properties": {
        "headline": {
          "type": "string"
        },
        "targetPainPoint": {
          "type": "string"
        },
        "uniqueMechanism": {
          "type": "string"
        },
        "proofPoints": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "callToAction": {
          "type": "string"
        },
        "riskReversal": {
          "type": "string"
        },
        "pricingContext": {
          "type": "string"
        }
      },
      "required": [
        "headline",
        "targetPainPoint",
        "uniqueMechanism",
        "proofPoints",
        "callToAction"
      ]
    },
    "voice": {
      "type": "object",
      "properties": {
        "tone": {
          "type": "string",
          "enum": [
            "professional",
            "friendly",
            "casual",
            "authoritative"
          ]
        },
        "personality": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "doNots": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "customInstructions": {
          "type": "string"
        }
      },
      "required": [
        "tone",
        "personality"
      ]
    }
  },
  "required": [
    "productId"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴product_delete(productId)

Delete a product. Fails only if it's the workspace's only product. Its audience and leads cascade-delete.

입력 스키마

{
  "type": "object",
  "properties": {
    "productId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    }
  },
  "required": [
    "productId"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 14개
검증됨버전이 기록되지 않음도구 14개