Yes, but the mechanism depends on which trigger you use. The List subscribe/unsubscribe trigger already targets one specific list by definition. For Tag, Birthday and Date field triggers, scope the workflow to a list by combining the trigger with a list filter at the trigger step, or by working with a tag that is only present on contacts in your target list.
The cleanest way: tag your scope
For any trigger, the most reliable scoping pattern is to give every contact in your target list a tag like scope-vip or scope-newsletter-a. Then in the workflow, after the trigger, only contacts carrying that tag continue down the flow. This works equally well for Birthday, Date field and Tag triggers, and it survives list moves because the tag follows the contact.
Alternative: use the list trigger directly
If your scope is "contacts who joined list X", you don’t need to scope at all — the EventList trigger pointed at list X already does it natively. Same for unsubscribe: trigger on unsubscribe from list X and only those contacts run.
Why segments alone don’t scope a Birthday trigger
Segments are dynamic queries, not stable contact attributes. The trigger doesn’t take a segment directly — it watches a list, a tag, or a date field. To use a segment for scoping, materialise it as a tag (apply scope-summer-campaign to all segment members), then point the trigger’s filter at that tag.
Scope your automation right
Build a segment first if your scope is dynamic, then tag the members and point the trigger at the tag. See the triggers overview for the four V1 triggers.