{"ok":true,"service":"wolf-bot-ai-mcp","name":"wolf-bot-ai","version":"1.0.0","description":"Wolf Bot Ai MCP — LinkedIn outreach (campaigns, leads, search, messaging) for one workspace. Cursor: X-API-Key. Claude / ChatGPT: OAuth Sign in after Connect.","auth":{"header":"X-API-Key","oauth":true,"requiredForToolCalls":true,"lazyAuth":true,"obtainKeyAt":"https://linkedin.wolfbot.ai/api-mcp","claude":"Add custom connector with URL https://li-mcp.wolfbot.ai (prefer this host root, not /mcp). Authentication: Required when the server asks. Skip Advanced Client ID/Secret. Connect → Sign in with Wolf Bot Ai → Allow."},"connect":{"url":"https://li-mcp.wolfbot.ai","headers":{"X-API-Key":"sk_live_YOUR_KEY"},"oauth":{"authorizationServer":"https://li-mcp.wolfbot.ai/.well-known/oauth-authorization-server","protectedResource":"https://li-mcp.wolfbot.ai/.well-known/oauth-protected-resource"}},"tools":[{"name":"get_credits","summary":"Check remaining lead credits, Lookalike balance, and plan."},{"name":"get_setup_status","summary":"Workspace readiness: LinkedIn account counts, templates, campaigns by status, and credits."},{"name":"list_accounts","summary":"List connected LinkedIn accounts and today's usage/limits."},{"name":"list_campaigns","summary":"List campaigns with performance stats."},{"name":"get_campaign","summary":"Get one campaign by id."},{"name":"get_insights_overview","summary":"Workspace highlights: last reply, top campaigns by reply/acceptance rate (recent sample)."},{"name":"get_recent_activity","summary":"Recent outreach events (replies, accepts, messages, agent handoffs)."},{"name":"start_campaign","summary":"Start or resume outreach for a campaign (agent must be assigned)."},{"name":"pause_campaign","summary":"Pause an in-progress campaign."},{"name":"create_lookalike_campaign","summary":"Create or extend a Lookalike campaign from a LinkedIn profile (Lookalike allowance). Schema allows titles/countries and up to 10000 leads, but the active provider may reject filters or enforce a lower cap (seed-only mode: max 25). Extending with a different profile returns alternate_seed_requires_new_campaign — create a new campaign instead."},{"name":"list_leads","summary":"List leads in a campaign (filter by tag / replied / needsReply / excluded=true; optional sort)."},{"name":"get_lead","summary":"Get one lead (includes role history)."},{"name":"add_lead","summary":"Add a lead by LinkedIn URL (1 credit on create)."},{"name":"add_leads_batch","summary":"Add up to 100 leads by LinkedIn URL (1 credit per create)."},{"name":"update_lead","summary":"Update a lead's tag or excluded flag."},{"name":"update_leads_batch","summary":"Update tag/excluded for up to 100 leads (0 credits; exclude is immediate/global)."},{"name":"delete_leads_batch","summary":"Permanently delete up to 100 leads (irreversible; no credit refund)."},{"name":"send_message","summary":"Send a LinkedIn DM to a campaign lead (irreversible — confirm first)."},{"name":"lookup_profile","summary":"Look up a LinkedIn profile (uses account daily quota)."},{"name":"search_linkedin","summary":"Search LinkedIn (uses account daily quota)."},{"name":"search_linkedin_until","summary":"Search LinkedIn until a target count (paced pages; uses account daily quota)."},{"name":"list_templates","summary":"List AI agents / templates (manual and full_auto, read-only summary)."},{"name":"get_template","summary":"Get one agent / template by id (allowlisted fields; follow-up delay {value,unit}; truncation flags; no knowledge blob)."},{"name":"assign_template","summary":"Assign an agent to a campaign, or clear with templateId null (overwrites assignment; pause first if running)."},{"name":"list_tags","summary":"List built-in and custom reply tags."},{"name":"create_tag","summary":"Create a custom reply tag (description 20–280 chars; max 20 active)."},{"name":"update_tag","summary":"Overwrite a custom tag description and color."},{"name":"create_manual_campaign","summary":"Create an empty manual campaign ready for leads and an agent."},{"name":"rename_campaign","summary":"Overwrite a campaign display name."},{"name":"delete_campaign","summary":"Permanently delete a campaign and its leads (irreversible; no credit refund)."},{"name":"delete_lead","summary":"Permanently delete one lead (irreversible; no credit refund)."},{"name":"create_template","summary":"Create a manual outreach agent (schedule, connected accounts, pitch, static or AI message). No Full Auto."},{"name":"update_account_limits","summary":"Overwrite an account's daily connection-request and/or message caps (0–30)."},{"name":"create_linkedin_connect_link","summary":"Mint a LinkedIn connect URL for the user to open in a browser; then poll list_accounts."},{"name":"disconnect_linkedin_for_reconnect","summary":"Soft-disconnect a LinkedIn account so it can be reconnected (may pause campaigns; no-op if already disconnected/failed)."},{"name":"create_linkedin_reconnect_link","summary":"Mint a LinkedIn reconnect URL for a disconnected or failed account."},{"name":"delete_account","summary":"Permanently delete a LinkedIn account connection (irreversible)."},{"name":"preview_lead","summary":"Dry-run static invite note and first message for a lead (no send; AI agents return generated_at_send)."},{"name":"update_template","summary":"Overwrite a manual agent (echo-all: GET then PATCH the full writable set; same follow-up delay shape). Rejects Full Auto, empty or disconnected accounts."},{"name":"delete_template","summary":"Permanently delete an agent / template (unassigns campaigns; irreversible)."}],"note":"Short overview only. MCP tools/list needs no key (schemas). Every tools/call needs X-API-Key or OAuth — HTTP 401 + WWW-Authenticate until signed in. No workspace data here."}