Keap MCP Server

Keap MCP Server

Complete Model Context Protocol server for Keap (formerly Infusionsoft) with 111 tools and 22 React apps.

Category
访问服务器

README

Keap MCP Server

Complete Model Context Protocol server for Keap (formerly Infusionsoft) with 111 tools and 22 React apps.

Features

🛠️ Comprehensive Tool Coverage (111 tools)

  • Contacts: Full CRUD, search, tagging, custom fields, bulk operations, merge, email opt status
  • Companies: CRUD, search, company-contact associations
  • Opportunities: Complete sales pipeline (CRUD, stages, stage moves, search, bulk operations)
  • Tasks: CRUD, completion tracking, search, bulk updates
  • Appointments: CRUD, scheduling, calendar integration, search
  • Campaigns: CRUD, sequence management, contact additions, achievement tracking
  • Tags: CRUD, category management, contact tagging/untagging, bulk operations
  • Notes: CRUD, contact/opportunity associations, search
  • Emails: Send transactional and marketing emails, templates, tracking, opt status
  • Files: Upload, retrieve, associate with contacts/companies
  • E-commerce: Products, orders, subscriptions, payments, refunds, transaction history
  • Automations: Campaign builder sequences, goal tracking, link triggers
  • Settings: Account info, user management, custom fields, settings configuration
  • Affiliates: Program management, commissions, payouts, clawbacks, summaries

🎨 MCP Apps (22 React Apps)

  1. Contact Dashboard - Contact list with metrics and search
  2. Contact Detail - Comprehensive contact profile view
  3. Contact Grid - Data grid with filtering and bulk actions
  4. Contact Timeline - Activity timeline and interaction history
  5. Company Dashboard - Company overview and metrics
  6. Company Detail - Detailed company information
  7. Company Grid - Companies data grid with search
  8. Deal Dashboard - Sales pipeline overview
  9. Deal Detail - Opportunity details and stage tracking
  10. Pipeline Kanban - Visual drag-and-drop pipeline management
  11. Pipeline Funnel - Conversion funnel visualization
  12. Task Manager - Task list with priorities and due dates
  13. Appointment Calendar - Calendar view with scheduling
  14. Campaign Dashboard - Campaign performance metrics
  15. Campaign Detail - Campaign sequence and analytics
  16. Email Composer - Rich email composition interface
  17. Tag Manager - Tag organization and bulk tagging
  18. Automation Dashboard - Campaign builder overview
  19. Product Catalog - E-commerce product management
  20. Order Dashboard - Order tracking and fulfillment
  21. Order Detail - Detailed order information
  22. Revenue Dashboard - Revenue analytics and reporting

Installation

npm install @mcpengine/keap

Configuration

Environment Variables

KEAP_API_KEY=your_personal_access_token

Personal Access Token Setup

  1. Log in to your Keap account
  2. Navigate to AdminSettingsApplication
  3. Click on API tab
  4. Generate a new Personal Access Token
  5. Copy the token and use it as KEAP_API_KEY

MCP Settings (Claude Desktop)

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "keap": {
      "command": "npx",
      "args": ["-y", "@mcpengine/keap"],
      "env": {
        "KEAP_API_KEY": "your_personal_access_token"
      }
    }
  }
}

Usage Examples

Create a Contact

{
  "tool": "keap_create_contact",
  "arguments": {
    "given_name": "John",
    "family_name": "Doe",
    "email": "john.doe@example.com",
    "phone": "555-0123",
    "company_name": "Acme Corp",
    "job_title": "CTO",
    "tag_ids": [123, 456]
  }
}

Search Contacts

{
  "tool": "keap_search_contacts",
  "arguments": {
    "email": "john@example.com",
    "given_name": "John",
    "order": "email",
    "limit": 50
  }
}

Create an Opportunity

{
  "tool": "keap_create_opportunity",
  "arguments": {
    "title": "New Website Project",
    "contact_id": 12345,
    "stage_id": 789,
    "projected_revenue": 15000,
    "opportunity_notes": "Interested in complete redesign"
  }
}

Move Opportunity Stage

{
  "tool": "keap_move_opportunity_stage",
  "arguments": {
    "opportunity_id": 98765,
    "stage_id": 790,
    "notes": "Proposal sent, awaiting review"
  }
}

Tag Contacts

{
  "tool": "keap_apply_tags_to_contacts",
  "arguments": {
    "contact_ids": [123, 456, 789],
    "tag_ids": [10, 20]
  }
}

Send Email

{
  "tool": "keap_send_email",
  "arguments": {
    "contact_ids": [12345],
    "subject": "Welcome to our service!",
    "html_content": "<h1>Welcome!</h1><p>Thank you for joining us.</p>",
    "text_content": "Welcome! Thank you for joining us."
  }
}

Create a Product

{
  "tool": "keap_create_product",
  "arguments": {
    "product_name": "Premium Subscription",
    "product_price": 99.99,
    "product_desc": "Monthly premium access",
    "sku": "PREM-001",
    "status": 1
  }
}

Create an Order

{
  "tool": "keap_create_order",
  "arguments": {
    "contact_id": 12345,
    "order_items": [
      {
        "product_id": 456,
        "quantity": 2,
        "price": 99.99
      }
    ],
    "order_title": "Q1 Subscription"
  }
}

Tool Reference

Contact Tools (19 tools)

  • keap_create_contact - Create new contact
  • keap_get_contact - Get contact by ID
  • keap_update_contact - Update contact details
  • keap_delete_contact - Delete contact
  • keap_list_contacts - List all contacts (paginated)
  • keap_search_contacts - Search contacts by criteria
  • keap_get_contact_emails - Get contact's email addresses
  • keap_create_contact_email - Add email to contact
  • keap_update_contact_email - Update email address
  • keap_delete_contact_email - Remove email address
  • keap_apply_tags_to_contact - Tag a single contact
  • keap_remove_tags_from_contact - Remove tags from contact
  • keap_get_contact_tags - List contact's tags
  • keap_merge_contacts - Merge duplicate contacts
  • keap_apply_tags_to_contacts - Bulk tag multiple contacts
  • keap_remove_tags_from_contacts - Bulk remove tags
  • keap_get_contact_opt_status - Check email opt-in status
  • keap_opt_in_contact - Opt in contact for emails
  • keap_opt_out_contact - Opt out contact from emails

Company Tools (5 tools)

  • keap_create_company - Create new company
  • keap_get_company - Get company by ID
  • keap_update_company - Update company details
  • keap_list_companies - List all companies (paginated)
  • keap_search_companies - Search companies by criteria

Opportunity Tools (9 tools)

  • keap_create_opportunity - Create new opportunity
  • keap_get_opportunity - Get opportunity by ID
  • keap_update_opportunity - Update opportunity details
  • keap_list_opportunities - List opportunities (paginated)
  • keap_search_opportunities - Search opportunities by criteria
  • keap_move_opportunity_stage - Move opportunity to new stage
  • keap_get_opportunity_pipeline - Get pipeline stages
  • keap_bulk_update_opportunities - Update multiple opportunities
  • keap_get_opportunity_stage_details - Get stage information

Task Tools (8 tools)

  • keap_create_task - Create new task
  • keap_get_task - Get task by ID
  • keap_update_task - Update task details
  • keap_delete_task - Delete task
  • keap_list_tasks - List tasks (paginated)
  • keap_search_tasks - Search tasks by criteria
  • keap_complete_task - Mark task as complete
  • keap_bulk_update_tasks - Update multiple tasks

Appointment Tools (6 tools)

  • keap_create_appointment - Create new appointment
  • keap_get_appointment - Get appointment by ID
  • keap_update_appointment - Update appointment details
  • keap_delete_appointment - Delete appointment
  • keap_list_appointments - List appointments (paginated)
  • keap_search_appointments - Search appointments by criteria

Campaign Tools (7 tools)

  • keap_create_campaign - Create new campaign
  • keap_get_campaign - Get campaign by ID
  • keap_list_campaigns - List campaigns (paginated)
  • keap_add_contact_to_campaign - Add contact to campaign sequence
  • keap_remove_contact_from_campaign - Remove contact from campaign
  • keap_get_campaign_sequence - Get campaign sequence details
  • keap_get_campaign_achievements - Get campaign completion data

Tag Tools (5 tools)

  • keap_create_tag - Create new tag
  • keap_get_tag - Get tag by ID
  • keap_list_tags - List all tags
  • keap_create_tag_category - Create tag category
  • keap_list_tag_categories - List tag categories

Note Tools (6 tools)

  • keap_create_note - Create new note
  • keap_get_note - Get note by ID
  • keap_update_note - Update note content
  • keap_delete_note - Delete note
  • keap_list_notes - List notes (paginated)
  • keap_search_notes - Search notes by criteria

Email Tools (7 tools)

  • keap_send_email - Send email to contacts
  • keap_create_email_template - Create email template
  • keap_get_email_template - Get template by ID
  • keap_list_email_templates - List email templates
  • keap_send_template_email - Send templated email
  • keap_get_email_stats - Get email sending statistics
  • keap_check_email_deliverability - Check email configuration

File Tools (4 tools)

  • keap_upload_file - Upload file to Keap
  • keap_get_file - Download file by ID
  • keap_list_files - List uploaded files
  • keap_delete_file - Delete file

E-commerce Tools (15 tools)

  • keap_create_product - Create new product
  • keap_get_product - Get product by ID
  • keap_update_product - Update product details
  • keap_delete_product - Delete product
  • keap_list_products - List products (paginated)
  • keap_create_order - Create new order
  • keap_get_order - Get order by ID
  • keap_update_order - Update order details
  • keap_list_orders - List orders (paginated)
  • keap_create_subscription - Create recurring subscription
  • keap_get_subscription - Get subscription by ID
  • keap_cancel_subscription - Cancel subscription
  • keap_create_payment - Record payment
  • keap_refund_payment - Process refund
  • keap_get_transaction_history - Get payment history

Automation Tools (6 tools)

  • keap_create_campaign_sequence - Create automation sequence
  • keap_get_campaign_sequence - Get sequence details
  • keap_update_campaign_sequence - Update sequence
  • keap_create_campaign_goal - Create campaign goal
  • keap_get_campaign_goals - List campaign goals
  • keap_trigger_link_click - Trigger link-based automation

Settings Tools (5 tools)

  • keap_get_account_info - Get account information
  • keap_list_users - List account users
  • keap_get_user - Get user details
  • keap_list_custom_fields - List custom fields
  • keap_create_custom_field - Create custom field

Affiliate Tools (9 tools)

  • keap_create_affiliate - Create affiliate account
  • keap_get_affiliate - Get affiliate by ID
  • keap_list_affiliates - List affiliates (paginated)
  • keap_update_affiliate - Update affiliate details
  • keap_get_affiliate_commissions - Get commission history
  • keap_create_affiliate_payout - Create payout
  • keap_create_affiliate_clawback - Reverse commission
  • keap_get_affiliate_summary - Get performance summary
  • keap_search_affiliates - Search affiliates by criteria

Architecture

src/
├── server.ts              # MCP server setup
├── main.ts                # Entry point
├── clients/
│   └── keap.ts           # Keap API client (REST API, rate limiting, error handling)
├── tools/                 # Tool definitions (14 files)
│   ├── contacts-tools.ts
│   ├── companies-tools.ts
│   ├── opportunities-tools.ts
│   ├── tasks-tools.ts
│   ├── appointments-tools.ts
│   ├── campaigns-tools.ts
│   ├── tags-tools.ts
│   ├── notes-tools.ts
│   ├── emails-tools.ts
│   ├── files-tools.ts
│   ├── ecommerce-tools.ts
│   ├── automations-tools.ts
│   ├── settings-tools.ts
│   └── affiliates-tools.ts
├── types/
│   └── index.ts          # TypeScript interfaces
└── ui/
    └── react-app/        # MCP Apps (22 apps)
        ├── contact-dashboard/
        ├── contact-detail/
        ├── contact-grid/
        ├── contact-timeline/
        ├── company-dashboard/
        ├── company-detail/
        ├── company-grid/
        ├── deal-dashboard/
        ├── deal-detail/
        ├── pipeline-kanban/
        ├── pipeline-funnel/
        ├── task-manager/
        ├── appointment-calendar/
        ├── campaign-dashboard/
        ├── campaign-detail/
        ├── email-composer/
        ├── tag-manager/
        ├── automation-dashboard/
        ├── product-catalog/
        ├── order-dashboard/
        ├── order-detail/
        └── revenue-dashboard/

API Coverage

  • ✅ Contacts API (complete)
  • ✅ Companies API (complete)
  • ✅ Opportunities API (complete)
  • ✅ Tasks API (complete)
  • ✅ Appointments API (complete)
  • ✅ Campaigns API (complete)
  • ✅ Tags API (complete)
  • ✅ Notes API (complete)
  • ✅ Emails API (complete)
  • ✅ Files API (complete)
  • ✅ E-commerce API (complete - products, orders, subscriptions, payments)
  • ✅ Automations API (campaign sequences, goals, triggers)
  • ✅ Settings API (account info, users, custom fields)
  • ✅ Affiliates API (complete)

Rate Limiting

The Keap API enforces rate limits:

  • Burst limit: 10 requests per second
  • Daily limit: 10,000 requests per day (may vary by plan)

The MCP client automatically handles rate limiting with:

  • Exponential backoff on 429 responses
  • Request queuing
  • Automatic retry logic

Error Handling

All tools provide comprehensive error messages:

{
  "isError": true,
  "content": [
    {
      "type": "text",
      "text": "Error: Contact not found (ID: 12345)"
    }
  ]
}

Common error scenarios:

  • Invalid authentication (401)
  • Rate limit exceeded (429)
  • Resource not found (404)
  • Validation errors (400)
  • Server errors (500)

Development

Build from source

git clone https://github.com/BusyBee3333/mcpengine
cd mcpengine/servers/keap
npm install
npm run build

Run in development mode

npm run dev

Type checking

npx tsc --noEmit

Build React apps

cd src/ui/react-app
npm install
npm run build

Best Practices

Contact Management

  1. Use tags effectively: Organize contacts with meaningful tags for segmentation
  2. Custom fields: Leverage custom fields for industry-specific data
  3. Merge duplicates: Regularly use keap_merge_contacts to maintain data quality
  4. Opt-in compliance: Always check opt status before sending marketing emails

Sales Pipeline

  1. Consistent stage moves: Use keap_move_opportunity_stage to track progression
  2. Revenue tracking: Keep projected revenue updated for accurate forecasting
  3. Pipeline hygiene: Regularly review and close stale opportunities

Automation

  1. Campaign sequences: Build automated follow-up sequences for lead nurturing
  2. Goal tracking: Set clear goals to measure campaign effectiveness
  3. Link triggers: Use link-based triggers for behavior-based automation

E-commerce

  1. Product catalog: Maintain accurate SKUs and pricing
  2. Order tracking: Use order IDs consistently across systems
  3. Subscription management: Monitor subscription status and renewal dates
  4. Payment reconciliation: Regular transaction history reviews

Keap Plans & Features

Different Keap plans provide varying API capabilities:

  • Lite: Basic contact and email tools
  • Pro: Full CRM, sales pipeline, and automation
  • Max: E-commerce, advanced automations, affiliate management
  • Max Classic: Legacy features, additional e-commerce capabilities

Ensure your plan supports the features you intend to use via the API.

Troubleshooting

Authentication Issues

# Verify your API key
curl -H "X-Keap-API-Key: YOUR_API_KEY" https://api.infusionsoft.com/crm/rest/v1/account/profile

Rate Limiting

If you encounter frequent rate limits:

  1. Reduce concurrent request volume
  2. Implement longer delays between operations
  3. Consider upgrading your Keap plan for higher limits

Contact Not Found

Ensure contact IDs are valid:

// First search for the contact
const result = await keap_search_contacts({
  email: "user@example.com"
});
// Then use the returned ID

Migration from Infusionsoft XML-RPC

If migrating from the legacy XML-RPC API:

  1. Authentication: Replace legacy keys with Personal Access Tokens
  2. Endpoints: Update from XML-RPC to REST API patterns
  3. Data format: Convert XML structures to JSON
  4. Field mappings: Review custom field IDs (may have changed)

License

MIT

Support

For issues and feature requests, please visit: https://github.com/BusyBee3333/mcpengine/issues

Related

Changelog

Version 1.0.0

  • Initial release
  • 111 tools across 14 categories
  • 22 React apps for visual interfaces
  • Full Keap REST API coverage
  • Rate limiting and error handling
  • Comprehensive TypeScript types

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选