# Attribution Model Comparator MCP

> Attribution Model Comparator instantly compares five major attribution models—First Touch, Last Touch, Linear, Time Decay, etc.—to pinpoint exactly where revenue credit went wrong across your marketing channels. Instead of guessing which touchpoint deserves the sale credit, this MCP quantifies the actual difference in revenue contribution (the delta) for every channel from a single conversion event.

## Overview
- **Category:** marketing-analytics
- **Price:** Free
- **Tags:** attribution, model-comparison, touchpoint-analysis, revenue-delta, marketing-mix

## Description

When someone buys something, figuring out who gets credit is messy. Was it the initial ad seen on social media? Or maybe the final email reminder that got them to click 'buy'? Traditional reporting fails because they treat these complex paths like simple straight lines. You end up with siloed views of customer value.

This MCP solves that by building a full picture first. It maps out every touchpoint a customer interacted with leading up to a sale. Then, it runs the total revenue through five different accounting methods—First Touch, Last Touch, Linear, and others—and compares them head-to-head. You don't just get shares; you get the difference between those shares, telling you precisely which model over- or under-credits specific channels. It’s a powerful layer of analysis that helps you understand true performance, all managed within Vinkius.

## Tools

### calculate_attribution_shares
Calculates proportional revenue share credit for every touchpoint using a specified attribution model, returning individual percentage weights.

### fetch_conversion_metrics
Retrieves the total revenue value and currency amount associated with a given conversion event ID.

### calculate_attribution_delta
Compares attribution share results across multiple models to determine the revenue discrepancy for a specific marketing channel.

### get_customer_journey
Builds the necessary input data by retrieving the touchpoints in chronological order for a customer leading up to a sale.

## Prompt Examples

**Prompt:** 
```
I need to compare how First Touch and Last Touch allocate revenue for customer CUST-123 on 2024-05-15. Start by getting the journey data.
```

**Response:** 
```
First, I will call `get_customer_journey` to establish the touchpoint sequence. Then, using that sequence and the total revenue from `fetch_conversion_metrics`, I will run `calculate_attribution_shares` for both models. Finally, I'll use `calculate_attribution_delta` to quantify the difference.
```

**Prompt:** 
```
Analyze the attribution shares for a high-value conversion ID CONV-900. Use all five models and target 'Google Paid Search' to see its delta.
```

**Response:** 
```
I will use `fetch_conversion_metrics` first. Then, I will call `calculate_attribution_shares` five times (once for each model type) using the journey data and total revenue. With all results compiled, I will pass them to `calculate_attribution_delta`, specifying 'Google Paid Search' as the target channel.
```

**Prompt:** 
```
I have the journey data and total revenue. Please calculate the attribution shares for all five models for this customer, focusing on understanding the relative contribution of Email Newsletter.
```

**Response:** 
```
I will call `calculate_attribution_shares` multiple times using the full list of models: 'First Touch', 'Last Touch', 'Linear', 'Time Decay', and 'Position-Based'. This provides a complete picture before running any delta comparison.
```

## Capabilities

### Map Customer Paths
Retrieves the full chronological sequence of every touchpoint a customer used before converting.

### Quantify Event Value
Pulls the total revenue amount and currency linked to any specific conversion ID.

### Calculate Channel Shares
Determines proportional revenue credit for every touchpoint using a chosen attribution model.

### Identify Revenue Gaps
Compares the results of multiple models to calculate the exact revenue discrepancy (the delta) for any target channel.

## Use Cases

### Diagnosing Underperforming Channels
A marketing manager noticed their social ads seemed important but couldn't prove it. They asked their agent to first use `get_customer_journey` and then run `calculate_attribution_delta`. The result showed that 'Social Ads' receive significantly less credit under the Last Touch model than they should, proving a gap in reporting.

### Validating Budget Shifts
The leadership team is considering cutting email marketing spend. A data analyst used `fetch_conversion_metrics` and then ran `calculate_attribution_shares` for both the Email Newsletter model and a competitor's paid search model to quantify exactly how much revenue credit each channel currently receives.

### Understanding Complex Sales Paths
A customer journey involved reading documentation, watching a webinar, and finally buying. The user ran `get_customer_journey` followed by multiple calls to `calculate_attribution_shares`, giving them the proportional contribution of each touchpoint (documentation vs. webinar) for that specific conversion.

### Finding Model Flaws
A team wants to prove whether a 'Position-Based' model is better than 'First Touch'. They used `fetch_conversion_metrics` and then passed the data into `calculate_attribution_delta`, which instantly flagged that the two models assigned wildly different amounts of revenue credit for their target channel.

## Benefits

- Pinpoint true revenue gaps. Use `calculate_attribution_delta` to immediately see the financial difference between, say, Linear and Time Decay models for a specific channel.
- Build complete customer profiles instantly. Run `get_customer_journey` first; this gives you all the ordered touchpoints needed before any calculation can run.
- Get accurate value totals. `fetch_conversion_metrics` pulls the final sale amount, ensuring your attribution shares are based on correct revenue figures.
- Compare multiple models at once. You don't have to run reports five different ways; you use `calculate_attribution_shares` across all models for a holistic view.
- Eliminate manual spreadsheet work. By chaining these tools together, your agent handles the complex data flow from journey map to revenue delta automatically.

## How It Works

The bottom line is that this MCP turns a messy web of marketing interactions into clear, comparative financial reports.

1. First, establish the data foundation by using `get_customer_journey` to pull all touchpoints linked to a specific customer ID.
2. Next, use `fetch_conversion_metrics` to get the total sale value for that conversion event. Then, run `calculate_attribution_shares` multiple times—once for each model you want to compare.
3. Finally, feed all the generated share data into `calculate_attribution_delta`. This tool delivers a direct comparison showing exactly how much revenue credit differs between your selected models.

## Frequently Asked Questions

**What is the necessary input data to start an attribution comparison?**
You must first use the `get_customer_journey` tool, providing a customer ID and conversion date. This establishes the ordered sequence of touchpoints needed for all subsequent calculations.

**How do I get the financial value used as a baseline for attribution?**
Use `fetch_conversion_metrics` with the specific conversion ID. This tool retrieves the total revenue amount, which serves as the single, absolute figure that all five attribution models will proportionally divide.

**After calculating shares for multiple models, how do I find out which model is most biased?**
The `calculate_attribution_delta` tool takes the full results from all share calculations (via `calculate_attribution_shares`) and compares them. It quantifies the revenue gain or loss for a specific channel across models, highlighting discrepancies.

**If I run `fetch_conversion_metrics` with a conversion ID that doesn't exist, what happens?**
The system returns an error code immediately. Your agent will flag the invalid ID and stop the process, allowing you to correct the identifier before proceeding.

**When I use `calculate_attribution_shares`, do I need to run `get_customer_journey` first?**
Yes. The tool needs the chronological sequence of touchpoints provided by `get_customer_journey` to accurately calculate proportional revenue share credit.

**Can I batch process multiple conversions when using `calculate_attribution_shares`?**
While designed for single inputs, your agent can loop through a list of conversion IDs. This allows you to run the shares calculation across many customers in one automated sequence.

**What should I consider regarding rate limits when using `calculate_attribution_delta`?**
Vinkius manages throttling for stability. If you are comparing hundreds of channels, break the request into smaller batches by time period or channel group to avoid hitting performance caps.

**When calling `calculate_attribution_shares`, how do I ensure the touchpoints used are correct?**
You must provide a list of specific channels and models. The tool uses this explicit input to calculate shares, so don't rely on default channel inclusion.