> For the complete documentation index, see [llms.txt](https://docs.fuul.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.fuul.xyz/fuul-mcp-server/managing-triggers/add-and-remove-triggers.md).

# Add & Remove Triggers

The Fuul MCP lets you create new triggers or delete existing ones. Deleting a trigger requires first removing all incentives linked to it.

{% hint style="warning" %}
Changes made via MCP are saved as **drafts**. They do not take effect in production until you go to **app.fuul.xyz → Incentives → Publish**.
{% endhint %}

## Creating a trigger

### 1. Find your project

Tell the MCP your project name and it will look it up to get the project ID.

> "Find my project called Fuul"

### 2. Explore what you can track (optional)

If you're not sure what's supported, ask the MCP to list the available trigger types:

> "What types of triggers can I create?"

{% hint style="info" %}
Browse the full list of supported types in [Trigger Integrations](/core-concepts/trigger-integrations.md). Skip this step if you already know what you want to track.
{% endhint %}

### 3. Describe what you want to track

Tell the MCP what you want to track in natural language:

> "I want to incentivize the staking of my token"

> "I want to incentivize liquidity providers of the FUUL-USDC pool on Uniswap"

> "I want to track a custom off-chain event called 'User Signup'"

### 4. Answer the MCP's follow-up questions

The MCP will ask for any missing details depending on the trigger type:

| Field                    | Description                                         | Examples                                     |
| ------------------------ | --------------------------------------------------- | -------------------------------------------- |
| Token / contract address | The smart contract address of the token or protocol | `0x6b175474e89094c44da98b954eedeac495271d0f` |
| Chain                    | The blockchain network                              | Ethereum, Base, Arbitrum, Solana             |
| Event name               | For custom on-chain or off-chain events             | `Swap`, `Deposit`, `user_signup`             |

### 5. Publish to production

After creating, **draft changes are not live until published**:

1. Open [app.fuul.xyz](https://app.fuul.xyz)
2. Navigate to your project → **Incentives**
3. Click **Publish**

***

## Deleting a trigger

### 1. Delete the incentives linked to that trigger

> "Delete all incentives that use the \[trigger name] trigger"

### 3. Publish from the dashboard

1. Open [app.fuul.xyz](https://app.fuul.xyz)
2. Navigate to your project → **Incentives**
3. Click **Publish**

{% hint style="warning" %}
Before deleting the trigger, you must publish so the platform removes the reference between the published metadata and the trigger. If you skip this step, `delete_trigger` will return a "Trigger is used in conversions" error.
{% endhint %}

### 4. Delete the trigger

Once published:

> "Delete the trigger called 'Aave Depositors'"

### 5. Publish to production

After deleting, go to the app and publish to apply the changes:

1. Open [app.fuul.xyz](https://app.fuul.xyz)
2. Navigate to your project → **Incentives**
3. Click **Publish**
