sdlc-workflow-mcp
Provides tools for preparing Jira projections from workflow data, enabling integration with Jira for task and epic tracking.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@sdlc-workflow-mcp show my pending workflow tasks"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
sdlc-workflow-mcp
A standalone stdio Model Context Protocol server that exposes a bounded, fictional-data slice of the SDLC workflow tools for local Copilot use.
Provenance: extracted from
Tingsum26/sdlc-agent-platformat theseven-repo-split-baselinetag (commitbf48e15), source pathapps/workflow-mcp. This repository is one slice of the seven-repository split described in the platform BOM (docs/platform-bom.yaml).
What this is
A TypeScript MCP server (
stdiotransport) that proxies a bounded set of workflow tools to a local Workflow Service over HTTP.All fixtures are fictional (
example.invalid,REPO_A,DEMO-123,EPIC-DEMO-1, fictional identities). There is no model client, no credentials, and no real company data in this slice.
Related MCP server: io.github.readyagentsdev/readyagents
What this is not (registered gap)
The full approved tool catalog in the platform BOM is larger than this slice. This repository
registers only the subset implemented in the apps/workflow-mcp vertical slice at split time
(workflow tasks, internal-readiness, epic/ticket/repo-task, change-request, and journey tools).
Remaining catalog tools are tracked in the originating platform BOM and its migration map, not here.
Tool catalog
42 tools are registered, grouped below. Per-tool source endpoints and local-derivation fallbacks
are documented in docs/tool-catalog.md.
workflow (task, ticket, epic, decision, artifact, and Jira-projection operations):
workflow_list_my_tasks, workflow_get_task_context, workflow_get_task_audit,
workflow_claim_task, workflow_submit_artifact, workflow_request_approval,
workflow_complete_task, workflow_get_identity, workflow_validate_pod_roster,
workflow_import_pod_roster, workflow_get_integration_diagnostics, workflow_analyze_journey,
workflow_get_next_internal_validation, workflow_epic_create, workflow_epic_activate,
workflow_epic_attach_ticket, workflow_ticket_advance, workflow_ticket_add_repo_task,
advance_repo_task, workflow_epic_add_dependency, workflow_epic_create_change_request,
workflow_epic_approve_change_request, workflow_task_skip, workflow_epic_resume,
workflow_epic_join, workflow_get_related_artifacts, workflow_submit_decision,
workflow_assign_work, workflow_report_blocker, workflow_record_manual_e2e,
workflow_record_accessibility_result, workflow_record_tagging_result,
workflow_prepare_jira_projection.
onboarding-context (repository/journey onboarding, context scan, graphs, freshness, staleness):
workflow_get_freshness, workflow_onboard_repository, workflow_onboard_journey,
workflow_sync_onboarding_artifact, workflow_scan_repository_context,
workflow_analyze_http_dependencies, workflow_get_repository_graph,
workflow_get_journey_graph, workflow_mark_context_stale.
Prerequisites
Node.js >= 20.19.0
pnpm
Build and test
pnpm install
pnpm build
pnpm testStarting the stdio server
The server requires a Workflow Service URL and speaks MCP over stdio:
pnpm install
pnpm build
WORKFLOW_SERVICE_URL=http://127.0.0.1:8080 node dist/index.jsEnvironment variables:
Variable | Required | Description |
| yes | Base URL of the local Workflow Service (e.g. |
| no | Demo identity; allowed only when the service host is loopback. |
On startup failure or missing configuration, the server writes a structured JSON diagnostic to
stderr and exits with code 2.
Layout
src/— MCP server, API client, diagnostics, and tool registration.test/— vitest suite covering tool discovery, correlation IDs, audit visibility, safe error mapping, cancellation, and stderr redaction.
Available Tools
42 toolsadvance_repo_taskC
Advance a repo task through planning, pull request, and merge with an exact version.
Inputs: target (required), repoTaskId (required), expectedVersion (required).
workflow_analyze_http_dependenciesCRead-only
Analyze cross-service HTTP dependencies from a journey manifest.
Inputs: manifest (required).
workflow_analyze_journeyCRead-only
Run deterministic cross-repository Journey contract and evidence-gap analysis.
Inputs: manifest (required).
workflow_assign_workC
Assign a task to a bound identity with a declared actor role.
Inputs: taskId (required), actorRole (required), assigneeId (required).
workflow_claim_taskB
Claim a task with a bounded lease before local Copilot reasoning begins.
Inputs: taskId (required), expectedVersion (required), leaseMinutes.
workflow_complete_taskC
Confirm the current local result and advance it to its next persisted gate.
Inputs: taskId (required), expectedVersion (required).
workflow_epic_activateC
Activate a CREATED epic before attaching tickets.
Inputs: epicId (required), expectedVersion (required).
workflow_epic_add_dependencyC
Record a REQUIRES_BEFORE dependency between two tickets of one epic.
Inputs: epicId (required), toTicketId (required), fromTicketId (required).
workflow_epic_approve_change_requestC
Approve a change request as BUSINESS_OWNER or TECHNICAL_OWNER; both roles are required.
Inputs: actorRole (required), changeRequestId (required), expectedVersion (required).
workflow_epic_attach_ticketC
Attach a channel ticket (API/WEB/IOS/ANDROID) to an active epic.
Inputs: epicId (required), channel (required), ticketId (required).
workflow_epic_createC
Create a fictional Epic workflow aggregate.
Inputs: title (required), epicId (required), journeyId (required).
workflow_epic_create_change_requestC
Create an emergency change request against an epic.
Inputs: epicId (required), reason (required), urgency (required), description (required), +1 more.
workflow_epic_joinC
Join an epic as an active participant with a declared role.
Inputs: epicId (required), actorRole (required).
workflow_epic_resumeARead-only
Read persisted epic state, open tasks, next actions, and the audit trail after a shutdown.
Inputs: epicId (required).
workflow_get_freshnessCRead-only
Read the freshness (staleness) of journey and repository context.
Inputs: journeyId.
workflow_get_identityBRead-only
Read the bound enterprise identity. GitHub membership is not required for non-coding Scrum Masters.
Inputs: no named parameters.
workflow_get_integration_diagnosticsBRead-only
Read evidence-labelled Jira, Confluence, GHES, Jenkins, and Splunk diagnostics with observation time.
Inputs: no named parameters.
workflow_get_journey_graphBRead-only
Build a deterministic journey graph (repositories, screens, http edges) from a manifest.
Inputs: journeyId (required).
workflow_get_next_internal_validationCRead-only
Read the next company-network validation action; it never claims simulated evidence is real.
Inputs: no named parameters.
workflow_get_repository_graphCRead-only
Build a deterministic repository dependency graph from a journey manifest.
Inputs: journeyId (required).
workflow_get_task_auditBRead-only
Read the valid task audit stream. Compensated and invalidated events are excluded by Workflow Service.
Inputs: taskId (required).
workflow_get_task_contextBRead-only
Read the persisted task state before starting or resuming local Copilot work.
Inputs: taskId (required).
workflow_import_pod_rosterB
Persist a validated Pod roster only after explicit human confirmation.
Inputs: confirmed (required), journeyId (required), memberships (required), expectedRevision (required).
workflow_list_my_tasksBRead-only
List persisted workflow tasks visible to the current user.
Inputs: no named parameters.
workflow_mark_context_staleA
Mark journey or repository context as stale to force re-onboarding.
Inputs: no named parameters.
workflow_onboard_journeyC
Onboard a journey into the local workflow context from its manifest.
Inputs: journeyId (required), manifest.
workflow_onboard_repositoryC
Onboard a repository into the local workflow context.
Inputs: repositoryAlias (required), journeyId, repositoryUrl.
workflow_prepare_jira_projectionBRead-only
Prepare a local Jira projection from persisted tickets without calling Jira.
Inputs: epicId (required), targetBoard.
workflow_record_accessibility_resultC
Record a manual or automated WCAG accessibility check result for a task.
Inputs: result (required), taskId (required), evidenceNotes (required), wcagLevel.
workflow_record_manual_e2eC
Record a manual end-to-end verification result without fabricating automation evidence.
Inputs: result (required), taskId (required), executedBy (required), evidenceNotes (required).
workflow_record_tagging_resultC
Record a bounded content-tagging or taxonomy classification result for a task.
Inputs: tags (required), taskId (required), source.
workflow_report_blockerC
Report a blocker against a ticket with a typed reason and bounded description.
Inputs: ticketId (required), blockerType (required), description (required).
workflow_request_approvalC
Record a human approval for an exact artifact and task version.
Inputs: taskId (required), artifactId (required), artifactVersion (required), expectedTaskVersion (required).
workflow_scan_repository_contextCRead-only
Scan and summarize repository context for onboarding or graph building.
Inputs: journeyId (required).
workflow_submit_artifactC
Persist a structured, human-readable workflow artifact produced by local Copilot.
Inputs: type (required), taskId (required), sections (required), artifactId (required), +1 more.
workflow_submit_decisionC
Persist a bounded architectural or product decision (ADR-style) for a journey.
Inputs: title (required), chosen (required), context (required), options (required), +4 more.
workflow_sync_onboarding_artifactC
Sync an onboarding artifact (e.g. CONTEXT.md) to the workflow service.
Inputs: content (required), artifactType (required), journeyId, repositoryAlias.
workflow_task_skipC
Skip a stage with a persisted attestation (reason, discussed-with, actor role).
Inputs: reason (required), taskId (required), actorRole (required), expectedVersion (required), +1 more.
workflow_ticket_add_repo_taskC
Create a repo-level implementation task under a ticket.
Inputs: ticketId (required), baseCommit (required), repositoryAlias (required).
workflow_ticket_advanceC
Advance a ticket along its delivery status machine with an exact version.
Inputs: target (required), ticketId (required), expectedVersion (required).
workflow_validate_pod_rosterCRead-only
Validate a bounded Pod roster without persisting it.
Inputs: journeyId (required), memberships (required), expectedRevision (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 42 tools
While most tools have distinct verbs and resources, there is overlap among the many graph/onboarding/analysis tools (e.g., workflow_get_repository_graph, workflow_get_journey_graph, workflow_analyze_journey, workflow_analyze_http_dependencies) and between workflow_ticket_advance and advance_repo_task. Descriptions help clarify, but the sheer number of similar read/analysis operations could still lead to misselection.
All names use snake_case, but the ordering is inconsistent: some follow workflow_<entity>_<action> (workflow_epic_create) while others follow workflow_<action>_<object> (workflow_get_task_context). One tool (advance_repo_task) also lacks the workflow_ prefix, making the convention mixed though still readable.
42 tools far exceeds the 3-15 sweet spot and the rubric's 25+ threshold for 'too many,' making the surface heavy even for a complex SDLC domain. While each tool may have a distinct purpose, the volume increases cognitive load and selection risk.
The set covers a broad SDLC workflow lifecycle: epic/ticket/task creation, advancement, approvals, artifacts, decisions, blockers, onboarding, graphs, diagnostics, and identity. Some gaps exist (e.g., no explicit list/get for epics or tickets beyond task context), but core workflows are well-supported.
Maintenance
Related MCP Connectors
Build, test, publish, and run Kovca workflows from AI agents over remote MCP.
Enable secure connectivity between Sentry issues and debugging data, and LLM clients, using a Model Context Protocol (MCP) server.
Official Rewst MCP server: build, run, and debug Rewst workflows, forms, apps, and integrations.
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Related MCP Servers
- AlicenseCqualityDmaintenanceConnects MCP-enabled editors to GitHub Copilot CLI for non-interactive code analysis, batch processing, and code review.1031 npm5MIT
- AlicenseNot gradedqualityBmaintenanceExposes ReadyAgents' local workflow engine and built-in tools over MCP stdio, enabling MCP clients to define, run, inspect, and approve YAML/JSON agent workflows.39 PyPI1Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables locally configured MCP servers to be called over stdio and mixed with xAI server-side tools, without relying on hosted xAI MCP.MIT

Planwrightofficial
AlicenseNot gradedqualityCmaintenanceEnables AI coding agents and humans to collaborate on local, evidence-driven planning by exposing MCP tools for plan listing and binding, workflow catalog/run operations, and task tracking with human-reviewed decisions.2AGPL 3.0