Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Granoflow

NPM · @GRANOFLOW/MCP-SERVER · SCANNED SEP 24

Connect MCP-capable AI agents to local Granoflow tasks, reviews, cards, imports, and work memory.

0 this week 77 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 31 of 96 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability73
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 9272 tokens (~71/item across 129 items; 129 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management80
  • Stability observed for 24 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage74
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 22% of tool parameters carry a description.Partial
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 11 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "granoflow_evidence_delete" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 129 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the Granoflow MCP server?

Granoflow runs locally as an npm package, launched with npx -y @granoflow/mcp-server. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · @granoflow/mcp-server

# add to Claude Code
claude mcp add com-granoflow-mcp-server -- npx -y @granoflow/mcp-server
// .cursor/mcp.json
{
  "mcpServers": {
    "com-granoflow-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@granoflow/mcp-server"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "com-granoflow-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@granoflow/mcp-server"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add com-granoflow-mcp-server -- npx -y @granoflow/mcp-server
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-granoflow-mcp-server": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@granoflow/mcp-server"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add com-granoflow-mcp-server --command npx --arg -y --arg @granoflow/mcp-server
# ~/.hermes/config.yaml
mcp_servers:
  com-granoflow-mcp-server:
    command: "npx"
    args: ["-y", "@granoflow/mcp-server"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "com-granoflow-mcp-server": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@granoflow/mcp-server"
      ]
    }
  }
}
# add to Vellum
assistant mcp add com-granoflow-mcp-server -t stdio -c npx -a -y @granoflow/mcp-server
// mcp.json
{
  "mcpServers": {
    "com-granoflow-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "@granoflow/mcp-server"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 24 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 23 Sept 26 0
    • Stability: 0.97 → pass security
  • 22 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.

  • 20 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 87 to 90. That category is still filling its 30-day observation window: 26 days of observed history at the previous scan, 27 at this one. The score rises as the window fills, whether or not the server changes.

  • 18 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.

  • 17 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 16 Sept 26 0
    • Stability: 0.97 → pass security
  • 15 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 24 Sept 2026 · Analysed npm/@granoflow/mcp-server@0.1.16

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Dependencies 96 packages
Packages resolved 96
Stale 31
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 129 exposed · ~9,272 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
granoflow_agent_preferences_get ~74

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.

NameTypeReqDescription
dryRunboolean––
projectIdstring––

No output schema declared.

No examples provided.

granoflow_agent_preferences_write_defaults ~59

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.

NameTypeReqDescription
dryRunboolean––
preferencesobjectyes–

No output schema declared.

No examples provided.

granoflow_agent_workflow_skill ~216

Read 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, 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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

granoflow_ai_agent_tools ~44

List Granoflow AI-agent tool contracts from the running app. Use with granoflow_agent_workflow_skill for task, review, and memory-style questions.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

granoflow_api_request ~74

Run an allowed Granoflow Local HTTP API request. Prefer dedicated tools when available.

NameTypeReqDescription
dryRunboolean–When true, previews write requests.
inputobject–JSON object sent to the Granoflow Local HTTP API.
methodstring––
pathstringyes–

No output schema declared.

No examples provided.

granoflow_bundled_skill_reference ~86

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.

NameTypeReqDescription
referenceIdstringyesReference identifier from the selected skill's references manifest.
skillIdstringyes–

No output schema declared.

No examples provided.

granoflow_capabilities ~22

List capabilities exposed by the running Granoflow app.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

granoflow_context_pack ~109

Read a structured Granoflow work-memory context pack for the current agent task. Returns typed facts and match signals, not planning hints or recommendations.

NameTypeReqDescription
clientstring––
dryRunboolean–When true, previews the request without calling the app.
limitinteger––
projectIdstring––
querystring––
repostring––
scopestring––
taskIdstring––

No output schema declared.

No examples provided.

granoflow_context_steward_status ~49

Read Granoflow project and milestone context-steward state, including active milestones and the archived-milestone final-snapshot policy.

NameTypeReqDescription
projectIdstring––

No output schema declared.

No examples provided.

granoflow_daily_review_skill ~73

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

granoflow_delegated_authorization_skill ~67

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

granoflow_evidence_authoring_apply ~93

Apply only user-approved Evidence operations from a current preview and return App readback.

NameTypeReqDescription
approvedOperationIdsarrayyes–
expectedTaskReviewHashstringyes–
expectedTaskReviewRevisionintegeryes–
idempotencyKeystringyes–
previewHashstringyes–
previewTokenstringyes–
taskIdstringyes–

No output schema declared.

No examples provided.

granoflow_evidence_authoring_preview ~40

Preview Evidence candidates for a reviewed task with zero writes.

NameTypeReqDescription
candidatesarrayyes–
taskIdstringyes–

No output schema declared.

No examples provided.

granoflow_evidence_delete ~52

Delete existing Evidence after explicit confirmation. This does not run during sync or backup restore.

NameTypeReqDescription
confirmedbooleanyes–
evidenceIdstringyes–
expectedRevisionintegeryes–

No output schema declared.

No examples provided.

granoflow_evidence_get ~32

Get one Evidence item with its task ownership and internal link.

NameTypeReqDescription
evidenceIdstringyes–

No output schema declared.

No examples provided.

granoflow_evidence_list ~34

List Evidence owned by one task, including source status and internal links.

NameTypeReqDescription
taskIdstringyes–

No output schema declared.

No examples provided.

granoflow_evidence_search ~42

Search the independent Evidence lane. The app reports vector or explicit degraded fallback status.

NameTypeReqDescription
limitinteger––
querystringyes–

No output schema declared.

No examples provided.

granoflow_evidence_update ~43

Edit existing Evidence with optimistic revision checking.

NameTypeReqDescription
evidenceIdstringyes–
expectedRevisionintegeryes–
statementstringyes–

No output schema declared.

No examples provided.

granoflow_experience_authoring_apply ~60

Apply only user-approved Experience operations from a current preview.

NameTypeReqDescription
approvedOperationIdsarrayyes–
idempotencyKeystringyes–
previewHashstringyes–
previewTokenstringyes–

No output schema declared.

No examples provided.

granoflow_experience_authoring_preview ~51

Preview Experience distillation for a task or periodic review with zero writes.

NameTypeReqDescription
candidatesarrayyes–
scopeIdstringyes–
scopeTypestringyes–

No output schema declared.

No examples provided.

granoflow_experience_delete ~67

Permanently delete an Experience and all relations after both impact and final confirmation.

NameTypeReqDescription
expectedRevisionintegeryes–
experienceIdstringyes–
impactConfirmedbooleanyes–
permanentConfirmedbooleanyes–
previewHashstringyes–

No output schema declared.

No examples provided.

granoflow_experience_delete_impact ~35

Preview the full impact of permanently deleting an Experience with zero writes.

NameTypeReqDescription
experienceIdstringyes–

No output schema declared.

No examples provided.

granoflow_experience_get ~36

Get one Experience with provenance, task usages, Knowledge links, and merge redirect.

NameTypeReqDescription
experienceIdstringyes–

No output schema declared.

No examples provided.

granoflow_experience_list ~59

List independent Experience records, optionally for a daily, weekly, or monthly review scope.

NameTypeReqDescription
limitinteger––
offsetinteger––
periodKindstring––
scopeIdstring––

No output schema declared.

No examples provided.

granoflow_experience_merge_apply ~75

Apply an approved Experience merge and return the stable redirect readback.

NameTypeReqDescription
canonicalExperienceIdstringyes–
confirmedbooleanyes–
expectedCanonicalRevisionintegeryes–
expectedMergedRevisionintegeryes–
mergedExperienceId–yes–
previewHashstringyes–

No output schema declared.

No examples provided.

granoflow_experience_merge_preview ~41

Preview merging one Experience into a canonical Experience with zero writes.

NameTypeReqDescription
canonicalExperienceIdstringyes–
mergedExperienceId–yes–

No output schema declared.

No examples provided.

granoflow_experience_search ~39

Search the independent Experience lane with explicit vector or degraded fallback status.

NameTypeReqDescription
limitinteger––
querystringyes–

No output schema declared.

No examples provided.

granoflow_experience_update ~77

Edit all required fields of an independent Experience with optimistic revision checking.

NameTypeReqDescription
boundarystringyes–
conclusionstringyes–
contextstringyes–
expectedRevisionintegeryes–
experienceIdstringyes–
nextActionstringyes–
rationalestringyes–

No output schema declared.

No examples provided.

granoflow_experience_usage_link ~59

Link or update a confirmed task usage for an Experience.

NameTypeReqDescription
confirmedbooleanyes–
experienceIdstringyes–
kindstringyes–
notestring––
taskId–yes–

No output schema declared.

No examples provided.

granoflow_experience_usage_unlink ~47

Unlink an Experience from one task without deleting Experience provenance.

NameTypeReqDescription
confirmedbooleanyes–
experienceIdstringyes–
taskId–yes–

No output schema declared.

No examples provided.

granoflow_experience_usage_unlink_impact ~46

Preview whether unlinking an Experience from a task would leave it without task relations.

NameTypeReqDescription
experienceIdstringyes–
taskId–yes–

No output schema declared.

No examples provided.

granoflow_first_run_import_skill ~111

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

granoflow_gfmcp_candidates ~39

List pending Granoflow tasks tagged GFMCP. The tag marks eligibility but does not grant authorization for privileged or external actions.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

granoflow_gfmcp_prepare ~49

Create or repair the GFMCP custom tag and its app-localized task description template. Granoflow owns localization and idempotency.

NameTypeReqDescription
dryRunboolean––

No output schema declared.

No examples provided.

granoflow_gfmcp_runner_skill ~48

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.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

granoflow_gfmcp_safe_sync ~55

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.

NameTypeReqDescription
dryRunboolean––

No output schema declared.

No examples provided.

granoflow_git_missing_notice_record ~56

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.

NameTypeReqDescription
dryRunboolean––
shownboolean––

No output schema declared.

No examples provided.

granoflow_health ~22

Check whether the Granoflow Local HTTP API is reachable.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

granoflow_historical_task_candidates ~102

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.

NameTypeReqDescription
dryRunboolean–When true, previews the request without calling the app.
errorTextstring––
limitinteger––
modulestring––
pathsarray––
summarystring––
taskIdstringyes–

No output schema declared.

No examples provided.

granoflow_knowledge_assessment_apply ~63

Apply only approved Knowledge assessment operations; this does not materialize cards.

NameTypeReqDescription
approvedOperationIdsarrayyes–
idempotencyKeystringyes–
previewHashstringyes–
previewTokenstringyes–

No output schema declared.

No examples provided.

granoflow_knowledge_assessment_get ~33

Get one Knowledge assessment with typed source snapshots and freshness.

NameTypeReqDescription
assessmentIdstringyes–

No output schema declared.

No examples provided.

granoflow_knowledge_assessment_list ~22

List Knowledge eligibility assessments without creating cards.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

granoflow_knowledge_assessment_preview ~36

Preview eligibility, disposition, learning cost, and duplicate handling with zero writes.

NameTypeReqDescription
candidatesarrayyes–

No output schema declared.

No examples provided.

granoflow_knowledge_control_apply ~63

Apply approved control evidence. Verified status remains App-owned and requires readback evidence.

NameTypeReqDescription
idempotencyKeystringyes–
operationIdstringyes–
previewHashstringyes–
previewTokenstringyes–

No output schema declared.

No examples provided.

granoflow_knowledge_control_preview ~47

Preview implemented or verified system-control evidence with zero writes.

NameTypeReqDescription
evidenceobjectyes–
materializationIdstringyes–
statusstringyes–

No output schema declared.

No examples provided.

granoflow_knowledge_materialization_apply ~63

Apply approved Knowledge materializations atomically and return Note/Card readback.

NameTypeReqDescription
approvedOperationIdsarrayyes–
idempotencyKeystringyes–
previewHashstringyes–
previewTokenstringyes–

No output schema declared.

No examples provided.

granoflow_knowledge_materialization_get ~40

Get one Knowledge materialization with Note, Cards, source health, and control evidence.

NameTypeReqDescription
materializationIdstringyes–

No output schema declared.

No examples provided.

granoflow_knowledge_materialization_list ~27

List approved Knowledge materializations backed by existing Review Notes and Cards.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

granoflow_knowledge_materialization_preview ~37

Preview atomic Knowledge Note/Card creation or existing-Knowledge reuse with zero writes.

NameTypeReqDescription
candidatesarrayyes–

No output schema declared.

No examples provided.

granoflow_logical_attachment_read ~71

Read bounded Markdown or YAML content and App-owned SHA-256 for one current logical attachment. Acceptance HTML is previewed by the App and uses replace-response hash readback.

NameTypeReqDescription
attachmentIdstringyes–
entityIdstringyes–
entityTypestringyes–

No output schema declared.

No examples provided.

Common questions

What is the Granoflow MCP server?

Granoflow is an MCP server listed in the public MCP registry as com.granoflow/mcp-server. Connect MCP-capable AI agents to local Granoflow tasks, reviews, cards, imports, and work memory. This page covers its npm package (@granoflow/mcp-server).

Is the Granoflow MCP server safe to use?

Granoflow scores 77 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 24 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Granoflow MCP server expose?

Granoflow exposes 129 tools: granoflow_agent_workflow_skill, granoflow_daily_review_skill, granoflow_first_run_import_skill, granoflow_review_card_draft_skill, granoflow_gfmcp_runner_skill, and 124 more. Their descriptions and schemas cost roughly 9,272 tokens of context every time the server is loaded.

Is the Granoflow MCP server still maintained?

Granoflow is still listed as active in the MCP registry. We last reached this channel on 24 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Granoflow MCP server under?

Granoflow declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.