Granoflow
@granoflow
About Granoflow
Granoflow helps people plan and review work tasks, capture lessons from completed work, and turn durable insights into review cards for spaced practice. This MCP server lets AI agents connect to the local Granoflow app through its Local HTTP API.
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"granoflow": {
"command": "npx",
"args": [
"-y",
"@granoflow/mcp-server"
],
"env": {
"GRANOFLOW_API_BASE_URL": "http://127.0.0.1:56789"
}
}
}
}Tools
141Read the bundled Granoflow Agent Workflow skill. Call this when a user works with Granoflow tasks, says 'Analyze the first task', says 'Start the first task', says 'Create a task from this requirement', says 'Process today's tasks', asks in their own language to analyze/start one selected task, create a task from a discussed requirement, or process tasks for a date/range/all-task scope, needs approval or missing information recorded in a task, finishes tasks, asks for weekly or monthly reviews, task reviews, review cards, historical context, decisions, lessons, similar past work, or long-term work memory, needs a project lifecycle progress board / next-step recommendation, or politely/strongly signals that Granoflow/MCP/generated agent output is wrong or misaligned. Use granoflow_daily_review_skill for an explicitly requested daily review or mood/efficiency note, and granoflow_first_run_import_skill for first-run import from Cursor, Codex, Hermes, or other agents. Do not call it for unrelated venting or unrelated disagreement.
Read the bundled Granoflow Daily Review skill. Call this when a user explicitly asks to review, summarize, or journal one day, including mood or efficiency notes. It requires display of evidence and a draft, conversation and explicit confirmation, then write and App/API readback of only approved daily-review fields.
Read the bundled Granoflow First-Run Import skill. Call this when a user says 'Initialize Granoflow', optionally asks to import data, or uses an equivalent request in their own language. The workflow checks the connection, offers all unavailable recommended AI capability collections using only their names and plain-language functions, and previews authorized Cursor, Codex, Hermes, or other agent records as projects, monthly milestones, tasks, review-card candidates, and context backfills before any requested import write.
Read the bundled core Granoflow review-card authoring skill. Call it for every lifecycle Card Checkpoint and every card search, link, create, or modification so similarity fallback, AI filtering, note quality, preview, approval, controlled writes, and readback use one workflow.
Read the bundled GFMCP automatic task runner skill. Use it to install, operate, or diagnose the optional five-minute Python worker for pending tasks tagged GFMCP.
Read the bundled Granoflow Skill Orchestrator skill. Call when auditing or optimizing bundled MCP skills with the skill-polish family: default is a read-only report and human confirmation before any polish/validate apply. Not a product task orchestrator.
Read the bundled Granoflow Delegated Authorization skill. Use it when a user wants bounded unattended continuation or when a Task Work phase gate may consume a confirmed, current authorization envelope. The skill and its validator never infer consent from tags, urgency, or absence.
Read the bundled context-aware Granoflow Task Orchestrator. Use it as the single upper-layer entrypoint when natural language or gf shortcuts may mean quick capture, context enrichment, Analysis, Planning, end-to-end local-safe execution, or completion audit. It delegates every phase to the existing workflow owners and never turns inferred intent into external or destructive authorization.
Read the bundled Granoflow Milestone Workflow skill. Requires complete confirmed Project Work; frontend projects also require confirmed Design Baseline with App Shell. Creates milestones singly or in batch (full portfolio when empty; amend when gaps). Does not author tasks or run charter/execution—hand off to task-authoring, portfolio-orchestrator, or milestone-coordination.
Read the bundled Granoflow Milestone Coordination skill. Charter, coordinate, integrate, and close one active milestone after milestone and task entities exist. Does not batch-create milestones or author task titles/descriptions.
Read the bundled Granoflow Task Authoring skill. Create tasks via skeleton batches and create_one loops (full description batch size 1) with task-authoring-quality-contract. Does not run Analysis, Plan, or execution.
Read the bundled Granoflow Portfolio Orchestrator skill. After Project Definition, create all milestones then quality-author each milestone's tasks until Portfolio Ready. Orchestrates milestone-workflow and task-authoring; does not execute child work.
Read the bundled provider-neutral Granoflow Persistent Milestone Runner skill. Use it for restart-safe milestone execution with leases, heartbeat, bounded attempt history, no-progress replanning, resumable interaction nodes, explicit authorization manifests, and evidence-gated completion. A separate user Skill may choose the worker command or model.
Read the bundled Granoflow Project Definition skill. Activate with phrases such as Initialize this project, Define this project, 初始化这个项目, or 定义这个项目—not Initialize Granoflow. Runs three steps: Project Work intake (stack capability + skill routing), Design Baseline with Design Tokens, and landscape/portrait App Shell under contract fidelity; then hands off to portfolio-orchestrator.
Read the bundled Granoflow Integration Test Campaign skill. Call when the user wants a standard integration-test campaign (service_path / cross-module real I/O): orchestrate, auto-drive until green, plain-language closing summary. Not E2E UI/screenshots and not task-local write-only integration tests.
Read the bundled Granoflow E2E Test Campaign skill. Call after integration_campaign is green for the final test stage: build user-flow coverage from Project Work, author missing UI journeys, auto-fix bugs, capture screenshots under temp/ and always show them to the user. Not service_path-only integration campaigns.
Read the bundled Granoflow Acceptance And Final Delivery skill. Route Layer A/B milestone acceptance (user-invisible milestone IT) and最终交付 paths: 1 feature milestone → e2e_direct full-project E2E; ≥2 → full unit + project IT + full-project E2E. Thin router over agent-workflow references and IT/E2E campaigns.
Read the bundled Granoflow Project SoT skill. Owns the single project-local orchestration SoT at temp/project-sot.yaml: create, lint, and regenerate from the Granoflow App when missing or wiped. Use on long/unattended runs and host-wake resume. Not an E2E test runner.
Read one public Markdown reference from a bundled Granoflow skill. Discover valid referenceId values from that skill's references manifest first. This read-only package operation does not call the Granoflow Local HTTP API or require an API token.
Create or repair the GFMCP custom tag and its app-localized task description template. Granoflow owns localization and idempotency.
Ask the Granoflow app to perform a safe pre-poll sync only when current authorization permits it. Defaults to dry-run and never guesses membership or key state.
List pending Granoflow tasks tagged GFMCP. The tag marks eligibility but does not grant authorization for privileged or external actions.
Inspect Granoflow MCP config and Local HTTP API health without printing secrets.
Probe a bounded localhost port list for Granoflow identity. This never scans all ports or writes config.
Preview or write one user-confirmed MCP-owned non-secret Granoflow API URL or local port. Defaults to dry-run; writes are reread and verified immediately.
Create and optionally open the MCP-owned non-secret Granoflow config file.
Preview or open the installed Granoflow app after user approval. Uses a cross-process launch lease for real opens, and refuses if another MCP launch is in progress, any Granoflow process is already running, or process state cannot be verified, even when the configured Local HTTP API URL or port is unreachable. Defaults to dry-run.
Check whether the Granoflow Local HTTP API is reachable.
Show Granoflow app and Local HTTP API version metadata.
List capabilities exposed by the running Granoflow app.
List Granoflow AI-agent tool contracts from the running app. Use with granoflow_agent_workflow_skill for task, review, and memory-style questions.
Resolve compact Agent preferences from project YAML, MCP-local defaults, and newcomer-safe defaults. Project values win field by field. This read never grants push, publish, deploy, deletion, login, secret access, or destructive Git actions.
Preview or write non-secret MCP-local Agent defaults. Per-project overrides remain in project_rules.yaml. Defaults to dry-run and returns a redacted readback.
Record that the one-time newcomer Git-unavailable notice was shown. This stores only a boolean marker and never installs Git or changes a repository.
List Evidence owned by one task, including source status and internal links.
Search the independent Evidence lane. The app reports vector or explicit degraded fallback status.
Get one Evidence item with its task ownership and internal link.
Preview Evidence candidates for a reviewed task with zero writes.
Apply only user-approved Evidence operations from a current preview and return App readback.
Edit existing Evidence with optimistic revision checking.
Delete existing Evidence after explicit confirmation. This does not run during sync or backup restore.
List independent Experience records, optionally for a daily, weekly, or monthly review scope.
Get one Experience with provenance, task usages, Knowledge links, and merge redirect.
List independent Experience records derived from tasks in one project.
List independent Experience records derived from tasks in one milestone.
Search the independent Experience lane with explicit vector or degraded fallback status.
Preview Experience distillation for a task or periodic review with zero writes.
Apply only user-approved Experience operations from a current preview.
Edit all required fields of an independent Experience with optimistic revision checking.
Preview the full impact of permanently deleting an Experience with zero writes.
Permanently delete an Experience and all relations after both impact and final confirmation.
Preview merging one Experience into a canonical Experience with zero writes.
Apply an approved Experience merge and return the stable redirect readback.
Link or update a confirmed task usage for an Experience.
Preview whether unlinking an Experience from a task would leave it without task relations.
Unlink an Experience from one task without deleting Experience provenance.
List Knowledge eligibility assessments without creating cards.
Get one Knowledge assessment with typed source snapshots and freshness.
Preview eligibility, disposition, learning cost, and duplicate handling with zero writes.
Apply only approved Knowledge assessment operations; this does not materialize cards.
List approved Knowledge materializations backed by existing Review Notes and Cards.
Get one Knowledge materialization with Note, Cards, source health, and control evidence.
Preview atomic Knowledge Note/Card creation or existing-Knowledge reuse with zero writes.
Apply approved Knowledge materializations atomically and return Note/Card readback.
Preview implemented or verified system-control evidence with zero writes.
Apply approved control evidence. Verified status remains App-owned and requires readback evidence.
Build a zero-write task analysis pack with separate Evidence, Experience, and Knowledge lanes.
List current structured Task Work references for one task.
Preview adopted, considered, or rejected Knowledge Pack decisions. Only adopted operations can write.
Apply only approved adopted references and return Reference, Usage, and association readback.
Preview removal of Task Work references no longer present in the fully rewritten document.
Apply approved stale-reference removals while preserving applied Knowledge Usage history.
Preview referenced to applied, validated, or contradicted Knowledge Usage transition with evidence.
Apply one approved Knowledge Usage status transition and preserve its append-only event.
List Knowledge actually adopted by tasks in one project. The result is read-only and derived.
List Knowledge actually adopted by tasks in one milestone. The result is read-only and derived.
Fetch the Granoflow review card draft template and field schema from the running app. Call before creating reviewCardDrafts so card types, note fields, layouts, and fallbacks match app import rules.
Find potentially similar Granoflow review cards. The app prefers vector search and falls back to agent-supplied keywords; the agent must prefilter results before showing them to the user.
Preview controlled review-card creation, existing-card linking, or field-level updates for an existing project or inbox task. This endpoint performs no writes and returns a confirmation token plus shared-note impact.
Apply only user-approved operations from a current review-card authoring preview. Returns app-owned readback; never call without explicit approval of the previewed operations.
Read local image bytes at the MCP boundary, upload them through Local HTTP as Base64 onto a persisted review note image field (App compresses to WebP ≤300KB). Optionally place the field on a card front/back layout via cardId+layoutSide. The file path is not sent to or opened by the Granoflow app.
Read a structured Granoflow work-memory context pack for the current agent task. Returns typed facts and match signals, not planning hints or recommendations.
Read App-owned historical task candidate facts and bounded evidence for one current task. The tool never ranks again or turns relationship facts into recommendations.
Ask the running Granoflow app to preview an AI-agent memory batch before any write. Granoflow owns project/milestone matching and duplicate signals; this MCP tool only forwards after capability checks.
Read Granoflow project and milestone context-steward state, including active milestones and the archived-milestone final-snapshot policy.
Ensure Granoflow canonical project context YAML attachments exist: project_snapshot.yaml and project_rules.yaml. Defaults to dry-run.
Read a bounded section of project_snapshot.yaml or project_rules.yaml. Defaults to header, summary, and the smallest matching section; full read requires explicit intent.
Check or reconcile project context YAML freshness. Low-risk factual snapshot deltas can reconcile; rules and wording conflicts return a proposal.
Write a project context YAML attachment through app-owned safety gates. project_rules.yaml requires confirmation; secret/privacy risks fail closed.
Resolve the current project's explanation style. Missing or incomplete settings default to newcomer-friendly, detailed explanations; this tool never asks the user to choose.
Update only a Granoflow project description as living context. Defaults to dry-run and requires an evidence summary.
Update only an active Granoflow milestone description as living context. Fails closed for archived milestones and defaults to dry-run.
Preview a milestone archive context closure: final milestone state plus parent project description update. Real writes fail closed until the app exposes a safe archive API.
Record an engineering task completion through Granoflow's controlled work-memory API and existing task write/complete paths.
Record a reusable review-card lesson through Granoflow's controlled work-memory API. The app may fail closed until controlled review-card import/create paths are available.
List tags from the Granoflow local catalog.
Create a custom Granoflow tag. Defaults to dry-run.
Ensure the AI and 人工 completion source tags exist in Granoflow. Idempotent: reuses existing tags matched by slug or label.
List tasks from Granoflow. Optionally filter by tag slug.
Export task details, reusable lessons, and App-admitted prototype inputs. The App is the sole execution-admission authority; this tool never guesses current or latest prototype versions.
Validate an AI-agent task result before importing it into Granoflow.
Import an AI-agent task result into Granoflow. Use dryRun first unless the user explicitly asks to write.
Write evidence-based task timestamps and historical Granoflow facts through the dedicated AI-agent API. AI execution may update startedAt while the task remains pending so it never claims the human doing focus slot; node-managed completion may correct startedAt/endedAt after status=done. Every create mutation requires shared AI/automation authoringEvidence for an action/outcome title, plain language, a real analogy, and a concrete example. Use dryRun first; when dryRun=false, the running app must advertise historical_task_mutations_v1.
Create a current Granoflow task from a JSON payload in pending state. Do not include createdAt, updatedAt, startedAt, endedAt, or deletedAt. AI execution keeps the task pending until its completion owner changes it to done and records its actual start through granoflow_task_history_mutate; status=doing is reserved for human focus. AI and automation callers must include input.authoringEvidence proving an action/outcome title, plain-language review, and exact real-analogy and concrete-example excerpts. Invalid evidence returns task_authoring_quality_failed before any task write. A milestone-bound task without dueAt inherits the selected milestone deadline. Tags not in the local catalog are skipped automatically. Optional completionSource attaches AI/人工 source tags for completed-work capture.
Create a current Granoflow task in pending state with common structured fields. Ordinary creation never accepts startedAt or other historical physical fields. AI execution stays pending until verified completion, records its actual start through granoflow_task_history_mutate, and never claims the human doing focus slot. AI and automation callers must provide authoringEvidence for an action/outcome title, plain-language review, and exact real-analogy and concrete-example excerpts. Invalid evidence returns task_authoring_quality_failed before any task write. A milestone-bound task without dueAt inherits the selected milestone deadline; an explicit later date fails closed. Tags not in the local catalog are skipped automatically. Defaults to dry-run.
Update a current Granoflow task through the Local HTTP API. Do not include historical physical fields. AI execution must not set status=doing: keep pending, record actual startedAt through granoflow_task_history_mutate, and complete through NodeService or granoflow_task_finish. Human manual focus may set doing. Tags not in the local catalog are skipped automatically.
Update a current Granoflow task with common structured fields. AI execution never sets status=doing: it remains pending until verified completion and writes actual execution time through granoflow_task_history_mutate. status=doing is for human manual focus and keeps the App-recorded start behavior. When moving it into a milestone without dueAt, inherit the milestone deadline; a later explicit date fails closed. Defaults to dry-run.
Safely write a confirmed structured Task Review to any task, including completed inbox tasks, using the latest task revision. Review cards and context promotion remain separate controlled steps.
Safely update a task description that already preserves all user text and contains exactly one Task Completion Summary managed block.
List attachments for a Granoflow task.
Read local file bytes at the MCP boundary, upload them through the Local HTTP API as Base64, replace the current typed project, milestone, or task artifact, and require App-owned SHA-256 readback before it becomes current. The file path is not sent to or opened by the Granoflow app.
Read one current logical attachment receipt. Bounded Markdown/YAML includes content; acceptance HTML and other non-text artifacts return App-owned SHA-256 and size metadata without exposing content.
Evaluate the current Project Work YAML for a manual or automatic action. Partial attachment is allowed; gated actions fail with all relevant missing paths.
Confirm the exact current Project Work content hash in the App. Confirmation does not authorize execution, commit, push, publish, deploy, deletion, payment, or messaging.
Read Markdown bytes locally and upload through the Local HTTP API as Base64. Typed Task Work and Task Delivery headers are automatically routed to their logical slots; legacy untyped Analysis/Plan stays a generic attachment. Defaults to dry-run.
Read a bounded Task Work Document, legacy Task Analysis/Plan, or Task Delivery Markdown attachment with its App-owned SHA-256 for verification.
Delete a task attachment after explicit confirmation.
Import one validated high-fidelity Design Baseline package as the App-owned project visual/IA authority for later milestones, task prototypes, and code. Package should include Design Tokens and landscape/portrait App Shell. The App owns validation, immutable versions, project linking, deduplication, and exact SHA-256 readback.
Read back one exact App-owned project Design Baseline reference (authority for later UI work). Never guesses the latest version; require exact prototypeId, versionId, and packageSha256.
Import one validated .granoprototype package through the App-owned task Prototype/Version/Link aggregate and return exact SHA-256 readback.
Read one exact task-owned Prototype/Version/Link reference. Never guesses a current or latest version.
Read one App-owned execution snapshot containing task, parent project/milestone, current revisions, nodes, and current logical attachment receipts.
Read the latest Granoflow task nodes before planning, executing, or reconciling cross-device changes.
Atomically create an ordered, idempotent task node batch through the Granoflow NodeService.
Update a task node title or apply pending/finished status with optimistic concurrency.
Soft-delete a task node tree after a confirmed Work Document amendment and explicit confirmation.
Low-level node-less compatibility endpoint. Never call it for a task with Work Document nodes; NodeService owns completion for node-backed tasks.
Finish a node-less compatibility task after its required Delivery gate and verify status=done. For AI execution, keep the task pending until this completion action and supply the captured actual startedAt plus confirmed endedAt. Do not use for node-backed tasks.
Resolve Granoflow task candidates by title without creating or updating data.
List Granoflow projects.
Resolve Granoflow project candidates by title without creating or updating data.
Create a Granoflow project with common structured fields. Defaults to dry-run.
Update a Granoflow project with common structured fields. Defaults to dry-run.
Safely delete a Granoflow project. Defaults to dry-run and requires confirmTitle for writes.
List Granoflow milestones.
Resolve Granoflow milestone candidates by title without creating or updating data.
Create a Granoflow milestone with common structured fields. When dueAt is omitted, the first project milestone defaults to today and each later milestone defaults to at least one local calendar day after the latest project deadline. Defaults to dry-run.
Safely delete a Granoflow milestone. Defaults to dry-run and requires confirmTitle for writes.
Update a Granoflow milestone with common structured fields. Defaults to dry-run. Use granoflow_milestone_context_update for description upkeep; description updates fail closed for archived milestones.
Show a Granoflow daily review by date.
Run an allowed Granoflow Local HTTP API request. Prefer dedicated tools when available.
Overview
What is Granoflow?
Granoflow is a local-first app for planning and reviewing work tasks. It extracts knowledge and experience from completed work, turns those insights into review cards, and makes them available for quick retrieval or spaced review. The Granoflow MCP server exposes the Granoflow Local HTTP API as tools for AI agents, IDEs, and automation. It connects to the user’s running local Granoflow app and does not host user data or upload tasks to third parties.
How to use Granoflow?
Ensure the Granoflow app is running locally, then configure your MCP client to connect to its HTTP API. No specific installation or configuration commands are documented in the README; the server assumes a local Granoflow instance is already set up and operational.
Key features of Granoflow
- Plan, review, and organize work tasks locally.
- Extract insights from completed tasks into review cards.
- Spaced repetition review of saved knowledge.
- Local-first: no cloud upload unless you subscribe.
- MCP server enables AI/IDE/automation tool integration.
- Free to use forever for local features.
Use cases of Granoflow
- Capture and revisit lessons learned from completed projects.
- Build a personal knowledge base from daily work tasks.
- Automate task review prompts with AI agent or IDE integrations.
- Conduct spaced repetition study of work‑related insights.
FAQ from Granoflow
Is my data stored in the cloud when using the MCP server?
No. Without a paid membership, your data never leaves your device. The MCP server only interacts with the local Granoflow app and does not upload local tasks to any third‑party service.
Do I need an account or subscription to use the MCP server?
No. The MCP server works with Granoflow’s local features, which are free forever. A subscription is only required if you want cloud sync; it is not needed for local use or MCP integration.
Does the MCP server store my API tokens or host user data?
No. The server does not store API tokens and does not host any user data. It simply exposes the local Granoflow API as tools for AI agents, IDEs, and automation.
What dependency does the MCP server have?
It requires the Granoflow app to be running locally on the same machine (or reachable via HTTP) to connect to its API. Without a running local instance, the MCP server cannot function.
Frequently asked questions
Is my data stored in the cloud when using the MCP server?
No. Without a paid membership, your data never leaves your device. The MCP server only interacts with the local Granoflow app and does not upload local tasks to any third‑party service.
Do I need an account or subscription to use the MCP server?
No. The MCP server works with Granoflow’s local features, which are free forever. A subscription is only required if you want cloud sync; it is not needed for local use or MCP integration.
Does the MCP server store my API tokens or host user data?
No. The server does not store API tokens and does not host any user data. It simply exposes the local Granoflow API as tools for AI agents, IDEs, and automation.
What dependency does the MCP server have?
It requires the Granoflow app to be running locally on the same machine (or reachable via HTTP) to connect to its API. Without a running local instance, the MCP server cannot function.
Basic information
More Other MCP servers
Activepieces
activepiecesAI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
Unity MCP ✨
justinpbarnettUnity MCP acts as a bridge between AI assistants and your Unity Editor. Give your LLM tools to manage assets, control scenes, edit scripts, and automate tasks within Unity.
FastMCP v2 🚀
jlowin🚀 The fast, Pythonic way to build MCP servers and clients.
MCP Registry
modelcontextprotocolA community driven registry service for Model Context Protocol (MCP) servers.
Maestro
mobile-dev-incPainless E2E Automation for Mobile and Web
Comments