wyre-ai/msp-claude-plugins/agents-and-teams
Claude Code and agent skill by wyre-ai/msp-claude-plugins
- community
Checking that the SKILL.md file is still in the repository.
TimeZest agents (individual technicians) and teams (round-robin / shared availability pools): listing each, fetching detail for a named resource, and the criteria for booking an agent versus a team.
Install
npx vskill@latest install wyre-ai/msp-claude-plugins/agents-and-teamsSKILL.md
TimeZest Agents & Teams
Every TimeZest scheduling request books against a resource — either an individual agent or a team. Picking the right one is the first step of any booking, and TimeZest treats agents and teams differently enough that the choice matters.
Anti-triggers
Both nouns in this skill's name are heavily overloaded. Here an agent is a bookable human technician and a team is a round-robin pool of them:
- Claude subagents — an "agent" defined under
agents/*.mdis an
AI configuration, not a TimeZest technician. Nothing in this skill applies.
- An endpoint sensor — Huntress, RocketCyber, and Liongard all call
their installed software an "agent"; use huntress (huntress-agents), kaseya/rocketcyber, or liongard.
- A PSA technician record — hours, permissions, ticket assignment,
and utilisation live in the PSA; use halopsa (halopsa-agents), connectwise, or kaseya/autotask. TimeZest only knows who is bookable.
- Microsoft Teams — a TimeZest team is a scheduling pool with no
channels, chat, or membership sync; use m365-teams.
- Onboarding, deactivating, or permissioning a technician — this
skill is read-only lookup; identity changes happen in the PSA or in Entra (m365-users).
Domains & Tools
TimeZest's MCP server is navigation-based. Enter a domain with timezest_navigate before its tools are available; return with timezest_back.
Agents — individual technicians
| Tool | Purpose | |
|---|---|---|
timezest_agents_list | List all agents (technicians) available for scheduling | |
timezest_agents_get | Get full detail for one agent by agentId |
timezest_agents_list accepts pageSize (1–100, default 50) and a filter TQL string (e.g. active:true AND department:"IT Support").
Teams — round-robin / shared pools
| Tool | Purpose | |
|---|---|---|
timezest_teams_list | List all teams available for scheduling | |
timezest_teams_get | Get full detail for one team by teamId |
timezest_teams_list accepts pageSize and a filter TQL string (e.g. active:true).
Agent vs Team — which to book
| Situation | Book | |
|---|---|---|
| The dispatcher named a specific technician | An agent | |
| The customer needs the soonest slot from any qualified tech | A team (round-robin) | |
| Work requires a named specialist (e.g. a security lead) | An agent | |
| Tier-1 / general support where any tech will do | A team |
A team request shows the customer combined availability across the team's members and lets TimeZest assign whoever the round-robin lands on. An agent request shows only that one technician's calendar.
Common Workflows
Resolve a technician by name
timezest_navigatetoagents.- Call
timezest_agents_list. Use afilterlikeactive:trueto
skip deactivated technicians.
- Match the dispatcher's name against the result. If two agents have
similar names, call timezest_agents_get on each to disambiguate.
- Carry the resolved
agentIdforward to the scheduling request.
Resolve a team
timezest_navigatetoteams.- Call
timezest_teams_listwithactive:true. - Match by team name (e.g. "Network", "Onsite Dispatch").
- Carry the resolved
teamIdforward.
Edge Cases
- Inactive resources —
timezest_agents_listand
timezest_teams_list can return deactivated entries. Always filter active:true unless you specifically need historical resources.
- Name collisions — Two technicians named "Chris" is common. Never
pick the first match; confirm with _get.
- Pagination — Large MSPs exceed the 50-row default. Raise
pageSize to 100 or page through before assuming a name is absent.
Best Practices
- Always resolve agents and teams by name through a
listcall in the
current session — do not hard-code or cache IDs across days.
- Prefer a team for "soonest available" requests; an agent only when a
named person is genuinely required.
- Confirm ambiguous matches with
_getbefore booking.
Related Skills
- scheduling — Booking technicians against PSA tickets
- resources — Querying agents and teams together as one pool
- appointment-types — Choosing the right appointment type
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingmsp-claude-plugins/timezest/timezest/skills/agents-and-teams/SKILL.md
Popularity
- Repository stars
- 49
- Repository forks
- 26
- 7-day trend score
- 0
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/wyre-ai/msp-claude-plugins/agents-and-teams)