Agile Today
Project management methodology graph: route planning, stage-gate decisions and plan checks.
사용해야 할까요
품질 및 안전성
발견 사항 (2)
- HIGH
- INFOexplain_node에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"agile-today": {
"url": "https://agile-today.org/api/mcp?src=mcp-registry"
}
}
}원격 엔드포인트
https://agile-today.org/api/mcp?src=mcp-registrystreamable-http할 수 있는 일
도구 목록
도구 (8)
🟢list_context(lang)
Call first. Returns the context dimensions and flags (with defaults and how many rules each flag drives), stages, gates, evidence states and levels, the gate outcome precedence and the suggested workflow.
입력 스키마
{
"type": "object",
"properties": {
"lang": {
"description": "Answer language, default en",
"type": "string",
"enum": [
"en",
"ru"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢plan_project(context, stages, min_strength, format, include, ...)
Route from presale to closure for a project context. Default is compact (ids by strength + a names dictionary, core items and gate evidence for all stages, about 6–10k characters). Ask for one stage with stages:['st.design'] and format:'full' for reasons, avoid texts and gate details. 'core' = do it here (context rule, flag or gate-critical artifact), at most 8 work items per stage (producers of the gate's critical artifacts first, then context rules, then flags).
입력 스키마
{
"type": "object",
"properties": {
"context": {
"description": "Project context. Unknown keys and values are rejected in the answer envelope with did_you_mean. Defaults: software, hybrid, complicated, tm, single, medium size, ui, data.",
"type": "object",
"properties": {
"dom": {
"description": "Project type: software | package | data | infra | process | nonit. package = SaaS / ERP / CRM platform; nonit = any non-IT project (a launch, a programme, an event, a move: add physical for works on site)",
"type": "string"
},
"ap": {
"description": "Delivery approach: predictive | agile | flow | hybrid",
"type": "string"
},
"unc": {
"description": "Uncertainty (complexity domain): clear | complicated | complex | chaotic",
"type": "string"
},
"con": {
"description": "Contract model: fixed | tm | capped | internal (own budget)",
"type": "string"
},
"sc": {
"description": "Scale: single (one team) | multi (several teams)",
"type": "string"
},
"size": {
"description": "Project size: solo | small | medium | large, default medium. solo = one person does all the work (small tailoring, no Daily Scrum or Kanban meeting); small ≈ up to 3 months and 5 people in one team; large ≈ several teams, over 12 months or a programme. Small and solo lower some gate documents one level (never under regulation) and drop the steering committee, large raises some",
"type": "string"
},
"ui": {
"type": "boolean"
},
"data": {
"type": "boolean"
},
"integ": {
"type": "boolean"
},
"migr": {
"type": "boolean"
},
"legacy": {
"type": "boolean"
},
"reg": {
"type": "boolean"
},
"date": {
"type": "boolean"
},
"svc": {
"type": "boolean"
},
"bottleneck": {
"type": "boolean"
},
"shared": {
"type": "boolean"
},
"high_stakes": {
"description": "A failure hits customers, money, safety or a regulated function: operational readiness and a rehearsed rollback at G8",
"type": "boolean"
},
"physical": {
"description": "Physical works in any domain: premises, construction, equipment or on-site events (an office move, a fit-out, an event on site). Adds the site inspection (G7), supplier contracts (G5), plan B with a fixed date and the permits note. A non-IT launch, programme or online event is dom=nonit without it",
"type": "boolean"
}
},
"additionalProperties": {}
},
"stages": {
"description": "Stage ids or codes, e.g. ['st.analysis','design']. Default: all",
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"maxLength": 40
}
},
"min_strength": {
"description": "Default: core for all stages, all when stages are given",
"type": "string",
"enum": [
"core",
"recommended",
"all"
]
},
"format": {
"description": "Default compact",
"type": "string",
"enum": [
"compact",
"full"
]
},
"include": {
"description": "Default all four",
"type": "array",
"items": {
"type": "string",
"enum": [
"gates",
"avoid",
"notes",
"backbone"
]
}
},
"lang": {
"description": "Answer language, default en",
"type": "string",
"enum": [
"en",
"ru"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢check_gate(gate, context, evidence, work_started_beyond, business_case_valid, ...)
Evaluates gate g.g0 … g.g10 against your evidence. Outcome precedence: Stop > Recycle > Hold > Conditional go > Go, with the rule that fired (outcome_reason). Critical evidence missing or stale → Hold; required non-critical missing, or a waiver without a reason or an approver who decides at this gate → Conditional go; a waiver with both → Go with the Waiver modifier (under regulation a waived critical artifact stays Conditional go until the deviation is recorded with the quality approval); optional gaps are notes. Modifiers: Work started without the gate, Overdue, Stale, Waiver. gate.deciders decide, gate.advisors take part. A disproved key product hypothesis is a Recycle, not a Stop: pass earlier_stage_invalid:true with invalid_stage:'st.discovery'. At G8 (go / no-go), work_started_beyond:true means production was changed before the decision: Hold (R3), not a Go with a modifier. Call without evidence to list what the gate needs. Returns a receipt hash of the inputs.
입력 스키마
{
"type": "object",
"properties": {
"gate": {
"type": "string",
"maxLength": 40,
"description": "Gate id, e.g. g.g5"
},
"context": {
"description": "Project context. Unknown keys and values are rejected in the answer envelope with did_you_mean. Defaults: software, hybrid, complicated, tm, single, medium size, ui, data.",
"type": "object",
"properties": {
"dom": {
"description": "Project type: software | package | data | infra | process | nonit. package = SaaS / ERP / CRM platform; nonit = any non-IT project (a launch, a programme, an event, a move: add physical for works on site)",
"type": "string"
},
"ap": {
"description": "Delivery approach: predictive | agile | flow | hybrid",
"type": "string"
},
"unc": {
"description": "Uncertainty (complexity domain): clear | complicated | complex | chaotic",
"type": "string"
},
"con": {
"description": "Contract model: fixed | tm | capped | internal (own budget)",
"type": "string"
},
"sc": {
"description": "Scale: single (one team) | multi (several teams)",
"type": "string"
},
"size": {
"description": "Project size: solo | small | medium | large, default medium. solo = one person does all the work (small tailoring, no Daily Scrum or Kanban meeting); small ≈ up to 3 months and 5 people in one team; large ≈ several teams, over 12 months or a programme. Small and solo lower some gate documents one level (never under regulation) and drop the steering committee, large raises some",
"type": "string"
},
"ui": {
"type": "boolean"
},
"data": {
"type": "boolean"
},
"integ": {
"type": "boolean"
},
"migr": {
"type": "boolean"
},
"legacy": {
"type": "boolean"
},
"reg": {
"type": "boolean"
},
"date": {
"type": "boolean"
},
"svc": {
"type": "boolean"
},
"bottleneck": {
"type": "boolean"
},
"shared": {
"type": "boolean"
},
"high_stakes": {
"description": "A failure hits customers, money, safety or a regulated function: operational readiness and a rehearsed rollback at G8",
"type": "boolean"
},
"physical": {
"description": "Physical works in any domain: premises, construction, equipment or on-site events (an office move, a fit-out, an event on site). Adds the site inspection (G7), supplier contracts (G5), plan B with a fixed date and the permits note. A non-IT launch, programme or online event is dom=nonit without it",
"type": "boolean"
}
},
"additionalProperties": {}
},
"evidence": {
"description": "Map artifact id → state or {state, reason, ref, by, date}. A waiver is {state:'waived', reason, by}: by is the role id of a decider of this gate (see gate.deciders, e.g. r.client_owner) or 'name, role'. Unknown ids are reported as warnings with a suggestion.",
"type": "object",
"propertyNames": {
"type": "string",
"maxLength": 100
},
"additionalProperties": {
"anyOf": [
{
"type": "string",
"maxLength": 20,
"description": "present | missing | stale | waived"
},
{
"type": "object",
"properties": {
"state": {
"type": "string",
"maxLength": 20,
"description": "present | missing | stale | waived"
},
"reason": {
"type": "string",
"maxLength": 1000
},
"ref": {
"type": "string",
"maxLength": 500
},
"by": {
"type": "string",
"maxLength": 200
},
"date": {
"type": "string",
"maxLength": 40
}
},
"required": [
"state"
]
}
]
}
},
"work_started_beyond": {
"description": "True if work of later stages already started (adds the 'work started without the gate' modifier; at G8 it is a Hold)",
"type": "boolean"
},
"business_case_valid": {
"description": "false → Stop",
"type": "boolean"
},
"earlier_stage_invalid": {
"description": "true → Recycle; the answer names the stage to return to",
"type": "boolean"
},
"invalid_artifact": {
"description": "With earlier_stage_invalid: the artifact that is no longer true, to find where to return",
"type": "string",
"maxLength": 100
},
"invalid_stage": {
"description": "With earlier_stage_invalid: the stage to return to, if known",
"type": "string",
"maxLength": 100
},
"days_in_stage": {
"type": "number",
"minimum": 0
},
"planned_stage_days": {
"description": "Planned length of the stage in days. With it, missing critical evidence is overdue after 80% of it and missing required evidence after all of it",
"type": "number",
"minimum": 0
},
"grace_days": {
"description": "Overrides both limits. Default: 80% of planned_stage_days, else by approach (predictive/hybrid 10, agile/flow 5); required evidence then waits twice as long",
"type": "number",
"minimum": 0
},
"lang": {
"description": "Answer language, default en",
"type": "string",
"enum": [
"en",
"ru"
]
}
},
"required": [
"gate"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢when_to_use(id, context, lang)
For one event, practice, technique, notation, tool, artifact or antipattern: does it fit this context (fits / avoid / not_applicable / antipattern), its strength and why, alternatives and their group advice, risks, and which gates require it.
입력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 100,
"description": "e.g. t.planning_poker, p.stage_gating, x.velocity_kpi"
},
"context": {
"description": "Project context. Unknown keys and values are rejected in the answer envelope with did_you_mean. Defaults: software, hybrid, complicated, tm, single, medium size, ui, data.",
"type": "object",
"properties": {
"dom": {
"description": "Project type: software | package | data | infra | process | nonit. package = SaaS / ERP / CRM platform; nonit = any non-IT project (a launch, a programme, an event, a move: add physical for works on site)",
"type": "string"
},
"ap": {
"description": "Delivery approach: predictive | agile | flow | hybrid",
"type": "string"
},
"unc": {
"description": "Uncertainty (complexity domain): clear | complicated | complex | chaotic",
"type": "string"
},
"con": {
"description": "Contract model: fixed | tm | capped | internal (own budget)",
"type": "string"
},
"sc": {
"description": "Scale: single (one team) | multi (several teams)",
"type": "string"
},
"size": {
"description": "Project size: solo | small | medium | large, default medium. solo = one person does all the work (small tailoring, no Daily Scrum or Kanban meeting); small ≈ up to 3 months and 5 people in one team; large ≈ several teams, over 12 months or a programme. Small and solo lower some gate documents one level (never under regulation) and drop the steering committee, large raises some",
"type": "string"
},
"ui": {
"type": "boolean"
},
"data": {
"type": "boolean"
},
"integ": {
"type": "boolean"
},
"migr": {
"type": "boolean"
},
"legacy": {
"type": "boolean"
},
"reg": {
"type": "boolean"
},
"date": {
"type": "boolean"
},
"svc": {
"type": "boolean"
},
"bottleneck": {
"type": "boolean"
},
"shared": {
"type": "boolean"
},
"high_stakes": {
"description": "A failure hits customers, money, safety or a regulated function: operational readiness and a rehearsed rollback at G8",
"type": "boolean"
},
"physical": {
"description": "Physical works in any domain: premises, construction, equipment or on-site events (an office move, a fit-out, an event on site). Adds the site inspection (G7), supplier contracts (G5), plan B with a fixed date and the permits note. A non-IT launch, programme or online event is dom=nonit without it",
"type": "boolean"
}
},
"additionalProperties": {}
},
"lang": {
"description": "Answer language, default en",
"type": "string",
"enum": [
"en",
"ru"
]
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢check_mix(ids, context, lang)
For a set of ids: antipatterns in the set and detected by rules, conflicts, redundant alternatives (e.g. seven estimation methods), items to avoid or not applicable here, risks, missing inputs and suggested additions. ok = no antipatterns, conflicts, avoid or not-applicable items; a detected pattern of severity warning (e.g. output over outcome on a client contract) does not change ok.
입력 스키마
{
"type": "object",
"properties": {
"ids": {
"minItems": 1,
"maxItems": 200,
"type": "array",
"items": {
"type": "string",
"maxLength": 100
}
},
"context": {
"description": "Project context. Unknown keys and values are rejected in the answer envelope with did_you_mean. Defaults: software, hybrid, complicated, tm, single, medium size, ui, data.",
"type": "object",
"properties": {
"dom": {
"description": "Project type: software | package | data | infra | process | nonit. package = SaaS / ERP / CRM platform; nonit = any non-IT project (a launch, a programme, an event, a move: add physical for works on site)",
"type": "string"
},
"ap": {
"description": "Delivery approach: predictive | agile | flow | hybrid",
"type": "string"
},
"unc": {
"description": "Uncertainty (complexity domain): clear | complicated | complex | chaotic",
"type": "string"
},
"con": {
"description": "Contract model: fixed | tm | capped | internal (own budget)",
"type": "string"
},
"sc": {
"description": "Scale: single (one team) | multi (several teams)",
"type": "string"
},
"size": {
"description": "Project size: solo | small | medium | large, default medium. solo = one person does all the work (small tailoring, no Daily Scrum or Kanban meeting); small ≈ up to 3 months and 5 people in one team; large ≈ several teams, over 12 months or a programme. Small and solo lower some gate documents one level (never under regulation) and drop the steering committee, large raises some",
"type": "string"
},
"ui": {
"type": "boolean"
},
"data": {
"type": "boolean"
},
"integ": {
"type": "boolean"
},
"migr": {
"type": "boolean"
},
"legacy": {
"type": "boolean"
},
"reg": {
"type": "boolean"
},
"date": {
"type": "boolean"
},
"svc": {
"type": "boolean"
},
"bottleneck": {
"type": "boolean"
},
"shared": {
"type": "boolean"
},
"high_stakes": {
"description": "A failure hits customers, money, safety or a regulated function: operational readiness and a rehearsed rollback at G8",
"type": "boolean"
},
"physical": {
"description": "Physical works in any domain: premises, construction, equipment or on-site events (an office move, a fit-out, an event on site). Adds the site inspection (G7), supplier contracts (G5), plan B with a fixed date and the permits note. A non-IT launch, programme or online event is dom=nonit without it",
"type": "boolean"
}
},
"additionalProperties": {}
},
"lang": {
"description": "Answer language, default en",
"type": "string",
"enum": [
"en",
"ru"
]
}
},
"required": [
"ids"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢validate_plan(steps, context, evidence, lang)
Checks an ordered list of steps (stages, gates, events, practices, techniques, notations, artifacts). Errors: empty plan, unknown ids, non-step types, stage order (analysis and design work planned early is only a warning 'early'; building before G3–G5 is an order error), contract after delivery gates, a gate after the step it authorises (G8 after the cutover), antipatterns, avoid or not-applicable items. Warnings: duplicates, redundant alternatives, early work, a cutover with no G8 or go / no-go meeting before it, antipatterns of severity warning. 'Shadow start' looks at the order: G4 or G5 must come before the first build step. 'expected' lists gate evidence not yet produced by earlier steps.
입력 스키마
{
"type": "object",
"properties": {
"steps": {
"maxItems": 300,
"type": "array",
"items": {
"type": "string",
"maxLength": 100
}
},
"context": {
"description": "Project context. Unknown keys and values are rejected in the answer envelope with did_you_mean. Defaults: software, hybrid, complicated, tm, single, medium size, ui, data.",
"type": "object",
"properties": {
"dom": {
"description": "Project type: software | package | data | infra | process | nonit. package = SaaS / ERP / CRM platform; nonit = any non-IT project (a launch, a programme, an event, a move: add physical for works on site)",
"type": "string"
},
"ap": {
"description": "Delivery approach: predictive | agile | flow | hybrid",
"type": "string"
},
"unc": {
"description": "Uncertainty (complexity domain): clear | complicated | complex | chaotic",
"type": "string"
},
"con": {
"description": "Contract model: fixed | tm | capped | internal (own budget)",
"type": "string"
},
"sc": {
"description": "Scale: single (one team) | multi (several teams)",
"type": "string"
},
"size": {
"description": "Project size: solo | small | medium | large, default medium. solo = one person does all the work (small tailoring, no Daily Scrum or Kanban meeting); small ≈ up to 3 months and 5 people in one team; large ≈ several teams, over 12 months or a programme. Small and solo lower some gate documents one level (never under regulation) and drop the steering committee, large raises some",
"type": "string"
},
"ui": {
"type": "boolean"
},
"data": {
"type": "boolean"
},
"integ": {
"type": "boolean"
},
"migr": {
"type": "boolean"
},
"legacy": {
"type": "boolean"
},
"reg": {
"type": "boolean"
},
"date": {
"type": "boolean"
},
"svc": {
"type": "boolean"
},
"bottleneck": {
"type": "boolean"
},
"shared": {
"type": "boolean"
},
"high_stakes": {
"description": "A failure hits customers, money, safety or a regulated function: operational readiness and a rehearsed rollback at G8",
"type": "boolean"
},
"physical": {
"description": "Physical works in any domain: premises, construction, equipment or on-site events (an office move, a fit-out, an event on site). Adds the site inspection (G7), supplier contracts (G5), plan B with a fixed date and the permits note. A non-IT launch, programme or online event is dom=nonit without it",
"type": "boolean"
}
},
"additionalProperties": {}
},
"evidence": {
"description": "Artifacts that already exist",
"type": "object",
"propertyNames": {
"type": "string",
"maxLength": 100
},
"additionalProperties": {
"type": "string",
"enum": [
"present",
"missing",
"stale",
"waived"
]
}
},
"lang": {
"description": "Answer language, default en",
"type": "string",
"enum": [
"en",
"ru"
]
}
},
"required": [
"steps"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢search_graph(query, type, limit, lang)
Search names, ids, descriptions and aliases in English and Russian (word stems, small typos tolerated). Returns total and the best matches.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 200
},
"type": {
"type": "string",
"enum": [
"school",
"stage",
"gate",
"scenario",
"stream",
"event",
"practice",
"technique",
"model",
"artifact",
"tool",
"role",
"law",
"antipattern"
]
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50
},
"lang": {
"description": "Answer language, default en",
"type": "string",
"enum": [
"en",
"ru"
]
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢explain_node(id, link_types, direction, limit, lang)
One node with its description, conditions, source, level and its links grouped by type, each with a link id (Lxxxx) to cite. Filter with link_types, direction and limit.
입력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string",
"maxLength": 100
},
"link_types": {
"maxItems": 30,
"type": "array",
"items": {
"type": "string",
"maxLength": 40
}
},
"direction": {
"type": "string",
"enum": [
"in",
"out",
"both"
]
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 500
},
"lang": {
"description": "Answer language, default en",
"type": "string",
"enum": [
"en",
"ru"
]
}
},
"required": [
"id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}커뮤니티
증거