In a large pot, heat oil over medium-high heat. Add onions and salt and cook, stirring frequently, until softened, about 5 minutes. Add garlic, cumin, coriander, oregano, chipotle, and adobo sauce and cook, stirring until fragrant, about 1 minute. Add broth and tomatoes, adjust heat to high, and bring to a strong simmer.
Add chicken, reduce heat to medium-low, cover, and simmer until meat is opaque and cooked through, about 15 minutes. Transfer chicken to a plate; when cool enough to handle, either chop or pull apart into thin shreds (you should have about 2 cups).
Add zucchini and chicken to soup and simmer over medium heat until zucchini is just tender, about 5 minutes. Taste the soup and adjust seasoning with additional salt and pepper as needed.
To serve, ladle into bowls and serve with garnishes of your choice in small bowls on the side.