This document describes the MCP servers used by the sdlc-workflow plugin skills. All tool references use the generic naming convention — see your project's CLAUDE.md for concrete instance names.
Purpose: Task management, issue tracking, and workflow state.
Tool prefix: mcp__atlassian__
Access method: MCP-first with REST API v3 fallback
| Operation | Tool | Used By |
|---|---|---|
| Fetch issue details | mcp__atlassian__getJiraIssue |
plan-feature, implement-task |
| Create issue | mcp__atlassian__createJiraIssue |
plan-feature |
| Edit issue fields | mcp__atlassian__editJiraIssue |
implement-task |
| Add comment | mcp__atlassian__addCommentToJiraIssue |
plan-feature, implement-task |
| Transition issue | mcp__atlassian__transitionJiraIssue |
implement-task |
| Get transitions | mcp__atlassian__getTransitionsForJiraIssue |
implement-task |
| Create issue link | mcp__atlassian__createIssueLink |
plan-feature |
| Get current user | mcp__atlassian__atlassianUserInfo |
implement-task |
| Search issues (JQL) | mcp__atlassian__searchJiraIssuesUsingJql |
plan-feature |
When Atlassian MCP is unavailable (e.g., due to organizational policies restricting localhost access), skills automatically fall back to JIRA REST API v3.
How it works:
- Skills always try MCP first (preferred method)
- If MCP fails, user is always prompted to choose: Use REST API, Skip JIRA, or Retry MCP
- If user chooses REST API:
- Skills check CLAUDE.md for existing REST API credentials
- If credentials exist: Use them (with user confirmation)
- If credentials don't exist: Collect from user, validate, and optionally store
- All operations use
scripts/jira-client.py(Python stdlib only, no external dependencies)
Credential storage:
Credentials are stored in CLAUDE.md under ## Jira Configuration → ### REST API Credentials (MCP Fallback). Users can choose:
- Store all in CLAUDE.md (convenient, less secure)
- Store URL/email only, use
$JIRA_API_TOKENenv var (recommended, more secure) - Don't store (ask each time)
Documentation:
- Setup guide:
plugins/sdlc-workflow/shared/jira-api-token-guide.md - Implementation guide:
plugins/sdlc-workflow/shared/jira-rest-fallback.md - Access strategy:
plugins/sdlc-workflow/shared/jira-access-strategy.md
Several Jira operations require Atlassian Document Format (ADF) rather than plain text. This applies to:
- Issue descriptions (when using
contentFormat: "adf") - Comments (when using
contentFormat: "adf") - Custom fields (e.g., Git Pull Request custom field)
The REST API fallback automatically converts markdown to ADF when needed.
Refer to your project's CLAUDE.md for field IDs and formatting details specific to your Jira instance.
Purpose: Design inspection during the planning phase.
Tool prefix: mcp__figma__
| Operation | Tool | Used By |
|---|---|---|
| Get file structure | mcp__figma__get_file |
plan-feature |
| Get specific nodes | mcp__figma__get_nodes |
plan-feature |
Figma is used exclusively during plan-feature to extract:
- UI structure and component hierarchy
- Components involved in the feature
- Possible backend interactions implied by the design
Figma URLs can be provided as a skill argument or discovered from the Jira issue description.
Purpose: Code intelligence — symbol search, impact analysis, and symbolic editing.
Tool prefix: mcp__<instance>__ where <instance> is the Serena instance name from the Repository Registry in your project's CLAUDE.md.
Each target repository has a dedicated Serena MCP server instance. Look up the correct instance name in the Repository Registry table of your project's CLAUDE.md.
| Operation | Tool | Used By |
|---|---|---|
| File/module structure overview | mcp__<instance>__get_symbols_overview |
plan-feature, implement-task |
| Find symbols by name | mcp__<instance>__find_symbol |
plan-feature, implement-task |
| Find callers/references | mcp__<instance>__find_referencing_symbols |
plan-feature, implement-task |
| Search for patterns | mcp__<instance>__search_for_pattern |
plan-feature, implement-task |
| Replace symbol body | mcp__<instance>__replace_symbol_body |
implement-task |
| Insert code after symbol | mcp__<instance>__insert_after_symbol |
implement-task |
| Insert code before symbol | mcp__<instance>__insert_before_symbol |
implement-task |
| Rename symbol | mcp__<instance>__rename_symbol |
implement-task |
| Get diagnostics | mcp__<instance>__get_diagnostics |
setup |
During planning (read-only):
get_symbols_overview— understand module structure without reading entire filesfind_symbol— locate types, functions, endpoints by namefind_referencing_symbols— discover callers and integration pointssearch_for_pattern— find string literals, config keys, route definitions
During implementation (read + write):
- Use the same read operations to understand code before modifying
replace_symbol_body— rewrite functions, methods, structs, or componentsinsert_after_symbol/insert_before_symbol— add new code relative to existing symbolsrename_symbol— rename and automatically update all references
If no Serena instance is available for a repository, skills fall back to Read, Grep, and Glob tools for code inspection, and Edit/Write tools for modification.
Check the Code Intelligence > Limitations section in your project's CLAUDE.md for per-instance limitations (e.g., language server features that are not supported).