Atlas / MCP servers / iamalvisng / flowfig

flowfigSAFE

mcp/iamalvisng/flowfig

Your coding agent draws animated diagrams from your code, and flowfig checks each box and arrow against that code. CI fails when a diagram drifts from the code. The output is one animated SVG with no script, for a README, PR or issue. Works with Claude Code, Cursor, GitHub Copilot, Codex, Gemini CLI

Verdict
SAFE
Grade
B
Trust score
89 /100
Exposed tools
5 4r · 1w · 0d
Transport
—
License
MIT
Stars
1
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

Your coding agent draws the diagram from your code. flowfig checks it, and CI fails when the linked code is gone.

The problem

A diagram in a repo drifts from the code. Someone renames a function, and the diagram still shows the old name. No check fails, so no one sees the drift.

flowfig links each part of a diagram to the code that it draws. flowfig verify fails when a linked file or symbol is gone, and warns when the code does not make an edge. Run verify in CI, and a stale diagram fails the pull request.

Fail CI when the diagram drifts

A box, an edge or a message can name the code that it draws:

{ "id": "verify", "label": "verifyPassword", "source": "src/auth/login.ts#verifyPassword" }

Rename verifyPassword to checkPassword. Then verify fails with exit code 1:

$ npx flowfig verify login.svg
error    missing-sy
Read from source at commit 54ac4a815679OBSERVED · 2026-10-11
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.

claude-code
claude mcp add flowfig -- npx -y [email protected]
claude-desktop
{
  "mcpServers": {
    "flowfig": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ]
    }
  }
}
03

Exposed tools (5)

4 read · 1 write · 0 destructive.

ToolRiskDescription
checkreadList the faults of a figure: unknown ids, text overflow, crossings, label overlap, small text, low contrast. Fix every error before render.
diffreadThe spec changes between two figures, as a Markdown list.
docsreadThe flowfig guide. Read it before the first render. A topic gives the detail for one kind of figure.
renderwriteCheck a figure, then write it as one animated SVG file. Returns the check lines and the path. On an error, writes nothing.
verifyreadCheck the code links (source) of one or more figures: the file and the symbol must exist under root.
04

Trust audit

SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codePASS
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
none-observed
Shell
declared (1 observation(s))
Dependencies
not all pinned
Secrets in source
none-found

Findings (5)

LOWInventory / provenance · inv.hidden_file · CWE-1104
.oxlintrc.json
.oxlintrc.json
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWFilesystem / path · fs.system_paths · CWE-22, CWE-59
src/verify.test.ts:54
assert.deepEqual(rules(verify(figWith('/etc/hosts'), { root })), ['missing-file']);
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
.github/workflows/ci.yml:58
- run: npm ci && npm run build && mkdir -p node_modules/.bin && ln -sf ../../dist/cli.js node_modules/.bin/flowfig
LOWObfuscation / stealth · obf.zero_width · CWE-506, CWE-94
src/code.test.ts:102
['bom.py', 'def login():\n    pass\n', 'login'],
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
package.json
@types/node, @types/react, @types/react-dom, @vitejs/plugin-react, playwright, prettier, react, react-dom
Why it matters. 10 dependency range(s) float
Fix. pin exact versions or ship a lockfile

Gates applied: no_behavioural_pass.

Audited 2026-10-11 · audit v0.4.1 · source sha 54ac4a815679full audit observations/trust-audit/mcp-server/iamalvisng__flowfig.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-1154ac4a815679SAFEB89first audit
06

Questions

What is the flowfig MCP server?

Your coding agent draws animated diagrams from your code, and flowfig checks each box and arrow against that code. CI fails when a diagram drifts from the code. The output is one animated SVG with no script, for a README, PR or issue. Works with Claude Code, Cursor, GitHub Copilot, Codex, Gemini CLI

What tools does flowfig expose?

5 in total: 4 read-only, 1 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is flowfig safe to connect to an agent?

The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.

What credentials does flowfig need?

No credential environment variables were found in its source, so it appears to need none.

How current is this page?

The grade is for one exact copy of the source (54ac4a815679), read on 2026-10-11. The repository is watched and re-audited when it changes.

Advertisement