BusinessFlowPro MCP Server
An MCP (Model Context Protocol) server that enables Claude Desktop to interact with BusinessFlowPro marketing automation platform via natural language.
Features
- Campaign Management: Create, send, and schedule email campaigns
- Contact Management: Add and manage contacts and segments
- Email Templates: Create and manage reusable templates
- Landing Pages: Build and publish landing pages
- Lead Forms: Manage forms and view submissions
- Analytics: View email and campaign performance metrics
- AI Content Generation: Generate emails, subject lines, and landing pages
Installation
Using pip
cd mcp-server
pip install -e .
Using uv (recommended)
cd mcp-server
uv pip install -e .
Configuration
Environment Variables
Create a .env file or set environment variables:
BUSINESSFLOWPRO_API_URL=https://app.businessflowpro.com
BUSINESSFLOWPRO_EMAIL=your_email@company.com
BUSINESSFLOWPRO_PASSWORD=your_password
Claude Desktop Configuration
Add to your Claude Desktop configuration file (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"businessflowpro": {
"command": "python",
"args": ["-m", "businessflowpro_mcp"],
"env": {
"BUSINESSFLOWPRO_API_URL": "https://app.businessflowpro.com",
"BUSINESSFLOWPRO_EMAIL": "your_email@company.com",
"BUSINESSFLOWPRO_PASSWORD": "your_password"
}
}
}
}
Or if using uv:
{
"mcpServers": {
"businessflowpro": {
"command": "uv",
"args": ["run", "python", "-m", "businessflowpro_mcp"],
"env": {
"BUSINESSFLOWPRO_API_URL": "https://app.businessflowpro.com",
"BUSINESSFLOWPRO_EMAIL": "your_email@company.com",
"BUSINESSFLOWPRO_PASSWORD": "your_password"
}
}
}
}
Available Tools
Campaign Tools
| Tool | Description | |------|-------------| | list_campaigns | List all campaigns with optional status filtering | | get_campaign | Get detailed information about a campaign | | create_campaign | Create a new email campaign | | send_campaign | Send a campaign immediately | | schedule_campaign | Schedule a campaign for future delivery |
Contact Tools
| Tool | Description | |------|-------------| | list_contacts | List contacts with search and filtering | | get_contact | Get detailed contact information | | create_contact | Create a new contact | | list_segments | List all contact segments |
Template Tools
| Tool | Description | |------|-------------| | list_templates | List all email templates | | create_template | Create a new email template |
Landing Page Tools
| Tool | Description | |------|-------------| | list_landing_pages | List all landing pages | | create_landing_page | Create a new landing page | | publish_landing_page | Publish a landing page |
Form Tools
| Tool | Description | |------|-------------| | list_forms | List all lead capture forms | | get_form_submissions | Get form submissions |
Analytics Tools
| Tool | Description | |------|-------------| | get_analytics_overview | Get platform analytics metrics |
AI Content Tools
| Tool | Description | |------|-------------| | generate_email | Generate email content using AI | | generate_subject_lines | Generate subject line variations | | generate_landing_page | Generate landing page content | | generate_campaign_sequence | Generate a multi-email drip sequence |
Example Conversations
List Draft Campaigns
You: Show me my draft campaigns
Claude: [Uses list_campaigns(status="draft")]
→ "You have 3 draft campaigns: Summer Sale, Q3 Newsletter, Product Launch"
Create an Email
You: Create an email for our summer sale targeting marketing managers
Claude: [Uses generate_email(prompt="summer sale for marketing managers")]
→ Shows generated email content
You: Create a campaign with that email
Claude: [Uses create_campaign with the generated content]
→ "Campaign created successfully..."
Check Analytics
You: What's our email performance this month?
Claude: [Uses get_analytics_overview(date_range="30d")]
→ "Open rate: 32.5%, Click rate: 8.2%, 12 campaigns sent..."
Development
Running Locally
cd mcp-server
python -m businessflowpro_mcp
Running Tests
pip install -e ".[dev]"
pytest
Security Notes
- Credentials are stored in environment variables, not in code
- Tokens are automatically refreshed before expiry
- API calls use HTTPS for secure communication
- Failed authentication attempts are logged but credentials are not exposed
Troubleshooting
"Configuration error: BusinessFlowPro credentials not configured"
Ensure you have set the BUSINESSFLOWPRO_EMAIL and BUSINESSFLOWPRO_PASSWORD environment variables.
"Authentication failed"
Check that your email and password are correct. Verify you can log in to the BusinessFlowPro web interface.
"Permission denied"
Your account may not have access to certain features. Contact your BusinessFlowPro administrator.
"Rate limit exceeded"
Wait a moment before making more requests. The server implements automatic token refresh but does not handle rate limiting retries.
License
MIT











