api-patterns
3CX's native PBX MCP server: the per-PBX endpoint shape (every PBX is its own FQDN and its own OAuth authorization server — there…
IT Glue flexible assets: custom, instance-specific asset types with defined field schemas (text, tag, password, upload, etc.), traits-based instances, and tag fields that cross-link to configurations, contacts, and other IT Glue resources for structured, filterable documentation.
Claude Code
$ npx -y skills add wyre-ai/msp-claude-plugins --skill flexible-assets --agent claude-code
Codex
$ npx skills add wyre-ai/msp-claude-plugins --skill flexible-assets -a codex -y
Cursor
$ npx skills add wyre-ai/msp-claude-plugins --skill flexible-assets -a cursor -y
Gemini CLI
$ npx skills add wyre-ai/msp-claude-plugins --skill flexible-assets -a gemini-cli -y
GitHub Copilot
$ npx skills add wyre-ai/msp-claude-plugins --skill flexible-assets -a github-copilot -y
OpenCode
$ npx skills add wyre-ai/msp-claude-plugins --skill flexible-assets -a opencode -y
Windsurf
$ npx skills add wyre-ai/msp-claude-plugins --skill flexible-assets -a windsurf -y
name: "IT Glue Flexible Assets" description: > IT Glue flexible assets: custom, instance-specific asset types with defined field schemas (text, tag, password, upload, etc.), traits-based instances, and tag fields that cross-link to configurations, contacts, and other IT Glue resources for structured, filterable documentation. when_to_use: >- When working with custom asset types for structured documentation in IT Glue flexible assets. Use when: it glue flexible asset, custom asset, flexible asset type, it glue custom documentation, flexible asset field, custom documentation, structured asset, or it glue template.
Flexible Assets in IT Glue provide customizable, structured documentation templates. Unlike free-form documents, flexible assets have defined fields and types, enabling consistent documentation across organizations and powerful filtering/searching capabilities.
configurations, which IT Glue also calls "assets"; use `itglue-configurations`.
Passwords record and `search_passwords` will not find it; see `itglue-passwords` for how the two stores differ.
Flexible Asset Types define the schema for a category of documentation:
Flexible Asset Type: Network Overview ├── Fields: │ ├── Primary ISP (Text) │ ├── Backup ISP (Text) │ ├── Public IP Addresses (Textarea) │ ├── Firewall (Tag - Configuration) │ ├── Network Diagram (Upload) │ └── DNS Provider (Select)
| Type | Description | Use Case | |------|-------------|----------| | Text | Single line text | Names, identifiers | | Textarea | Multi-line text | Descriptions, notes | | Number | Numeric value | Quantities, counts | | Date | Date picker | Expiration dates | | Checkbox | Boolean true/false | Flags, toggles | | Select | Dropdown selection | Predefined options | | Tag | Link to IT Glue resource | Configurations, contacts | | Password | Password field | Embedded credentials | | Upload | File attachment | Diagrams, documents | | Percent | Percentage value | Utilization, progress | | Header | Section header | Visual organization |
Tag fields create relationships to other IT Glue resources:
| Tag Type | Links To | |----------|----------| | Configuration | Configuration items | | Contact | Contacts | | Password | Passwords | | Document | Documents | | Flexible Asset | Other flexible assets | | Location | Locations |
Field values live in a `traits` object on the asset instance, keyed by each field's `name-key`. Tag fields hold arrays of related-resource IDs.
See [references/fields.md](references/fields.md) for the full field/traits reference and the common built-in flexible asset type layouts (Network Overview, Application Documentation, Backup Overview, Microsoft 365 Tenant).
**Flexible asset type IDs are instance-specific** — every IT Glue account has different IDs. Never guess or hardcode type IDs. Always call `list_flexible_asset_types` first to discover what types exist, then use the returned IDs with `search_flexible_assets`.
Step 1: list_flexible_asset_types → get type IDs Step 2: search_flexible_assets(flexible_asset_type_id=<id from step 1>)
See [references/api.md](references/api.md) for the complete endpoint catalog (types, instances, tag-field examples) with full request/response bodies.
Fetch the type definition with its field list, validate that all required fields are present in the supplied values, then create the asset with those `traits`. See [references/examples.md](references/examples.md) for the full `createFlexibleAssetFromType` implementation plus lookup-by-type-name, tag-update, export, health-check, and cross-org cloning workflows.
Tag fields reference resources in the source org — when cloning a flexible asset to a different organization, tag values must be remapped or stripped since the IDs won't resolve to valid resources in the target org.
See [references/errors.md](references/errors.md) for the complete error-code and validation-error tables plus a retry pattern for missing-field and invalid-tag errors.
1. **Plan type structure** - Design flexible asset types before creating 2. **Use consistent naming** - Follow conventions for field names 3. **Leverage tags** - Link to configurations, contacts for relationships 4. **Required fields** - Mark essential fields as required 5. **Use appropriate types** - Match field type to data (date for dates, etc.) 6. **Document types** - Add descriptions to types and fields 7. **Standardize across orgs** - Use same types for all clients 8. **Regular revie
One command to supercharge Claude Code for MSP workflows. Then restart Claude Code. That's it. Documentation: mcp.wyre.ai
3CX's native PBX MCP server: the per-PBX endpoint shape (every PBX is its own FQDN and its own OAuth authorization server — there…
3CX's live-operations surface: read-only visibility into active calls, recordings, voicemail, department and queue membership,…
3CX's read-only directory surface: resolving a caller by email or by exact extension, searching the PBX's own phonebooks,…
3CX's system-and-configuration surface: server time, PBX event log and application log search, service status, database schema…
Abnormal Security abuse mailbox cases: user-reported email submissions, case statuses and judgments, the case lifecycle, bulk and…
Abnormal Security message analysis: message retrieval, email header inspection, attachments, sender reputation, delivery context,…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.