Install
$ agentstack add skill-justinmchoi-ai-toolkit-query-azure-devops ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Query Azure DevOps
Azure DevOps is not reachable via WebFetch or generic MCP servers. The correct path is the Azure CLI with the azure-devops extension.
Tech-Path Discovery (run in order, stop at the first success)
1. WebFetch dev.azure.com/* -> ALWAYS FAILS (redirects to MSFT login)
2. ToolSearch "azure devops mcp" -> MISS - azure MCP covers infrastructure
(Storage, Key Vault, Cosmos DB), not DevOps
3. Atlassian MCP -> MISS - surfaces Confluence only, no ADO
4. az account show -> PASS if Azure CLI is authenticated
5. az extension list | grep azure-devops -> PASS if the extension is installed
If step 4 or 5 fails, tell the user to run:
az login
az extension add --name azure-devops
Query Work Items (WIQL)
az boards query \
--wiql "SELECT [System.Id], [System.Title], [System.WorkItemType], [System.State], \
[System.AssignedTo], [System.CreatedDate], [System.ChangedDate] \
FROM WorkItems \
WHERE [System.AssignedTo] = '' \
AND [System.ChangedDate] >= '' \
AND [System.ChangedDate] ' \
ORDER BY [System.ChangedDate] DESC" \
--organization https://dev.azure.com/ \
--project \
--output json
Useful WIQL fields: [System.WorkItemType], [System.State], [System.Tags], [System.IterationPath], [Microsoft.VSTS.Common.ClosedDate].
Post-processing — remove false positives: System.ChangedDate fires on any field edit, including bulk admin operations, iteration moves, and comments. This can pull in old items that were merely touched rather than actively worked on. After fetching, discard any item where all three of these are true:
System.CreatedDateis more than ~1 year before the period start- State is terminal (
Closed,Resolved,Removed,Pending Approval,Pending Prod Deployment) - The title or context doesn't suggest it was genuinely completed this period
Use --output json (not --output table) so System.CreatedDate is visible for this check.
Query Pull Requests
# PRs authored by a user
az repos pr list \
--creator "" \
--organization https://dev.azure.com/ \
--project \
--status all \
--top 50 \
--output table
# PRs where a user was added as reviewer
az repos pr list \
--reviewer "" \
--organization https://dev.azure.com/ \
--project \
--status all \
--top 50 \
--output table
Note: --reviewer matches both individual reviewers and team reviewers whose membership includes the user. Filter by Created date after the fact to scope a date range.
Rules
- Verify
az account showbefore running anyaz boardsoraz reposcall. - The
azureMCP server (@azure/mcp) is for Azure infrastructure — do not search for
Azure DevOps tools there; they do not exist in that server.
- GitHub PRs (repos hosted on github.com, not dev.azure.com) require a separate tool
(gh CLI or GitHub MCP). If neither is available, search Slack for PR links.
- When a project is unknown, run
az devops project list --organizationto enumerate.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: justinmchoi
- Source: justinmchoi/ai-toolkit
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.