Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
Evidence and verification MCP server for Claude Code and Codex
Grainulator adds a local evidence ledger to agent-led research and engineering work. It records claims, sources, and support levels, checks for weak or conflicting evidence, and keeps auto and manual next steps separate. You can use it through the CLI, an MCP host, or the bundled Claude Code and Codex plugins.
Builders who want their agent to keep evidence, verify answers, and resume work without re-explaining the task.
You can keep research and implementation tied to evidence instead of scattered across chats and sessions.
What it does
Evidence ledger
Stores typed claims, sources, evidence tiers, and provenance with the task.
Conflict and gap checks
Flags weak support, conflicts, and missing perspectives before you move on.
Auto and manual next steps
Splits follow-up work into what the agent can do and what needs your input.
Session carry-forward
Lets you stop and resume research with reusable context and credential-free exports.
Managed verification loop
Runs a command loop that can use a verifier you provide.
MCP and plugin integration
Works as one MCP server and ships bundled Claude Code and Codex plugin setup.
How to get it
- 1Upgrading from 1.x? Follow the migration checklist to update the correct plugin scope,…
git clone --branch v2.0.2 https://github.com/grainulation/grainulator.git cd grainulator npm ci --ignore-scripts node bin/grainulator.js doctor node bin/grainulator.js preview
- 2From the project you want Grainulator to access
node /path/to/grainulator/bin/grainulator.js connect --dir "$PWD"
README
Grainulator
Evidence and verification for the model you already use.
Keep the evidence. Challenge the answer. Know what to do next.
A shared workflow for research, engineering, and model-assisted work.
Quick start · Installation · Upgrading · Tools · Agent setup · Changelog
What it adds
Good models still need a way to keep track of evidence, revisit assumptions, and verify their work. Grainulator gives them that process, with a local ledger that stays with the task as it moves between models and sessions.
| Capability | What it gives you |
|---|---|
| Evidence that stays with the work | Typed claims, sources, evidence tiers, and provenance that survive edits and exports. |
| A check on the answer | Conflict detection, weak-support signals, and explicit gaps to investigate. |
| Clear next actions | Two lists: what the agent can continue automatically, and what needs your input. |
| Sessions you can carry forward | Configurable research, stop/resume, reusable context, and credential-free exports. |
| Verification for your task | A managed command loop that can use a verifier you provide. |
One package, one MCP server. Use the CLI, connect an MCP-compatible agent, or load the bundled Claude Code or Codex plugin. The consolidated components are included; separate ecosystem installations are not required.
Quick start
Requires Node.js 24+. Node 25 is the development default.
Upgrading from 1.x? Follow the migration checklist to update the correct plugin scope, reconnect the single MCP server, and review retired Farmer instructions without changing your research data.
git clone --branch v2.0.2 https://github.com/grainulation/grainulator.git
cd grainulator
npm ci --ignore-scripts
node bin/grainulator.js doctor
node bin/grainulator.js preview
Open localhost:4517/playground/ to choose your model, configure the workflow, and run research with your provider key.
Want to look around first? The public playground lets you explore the controls and export a setup. Model execution happens in your local installation.
Distribution: v2.0.2 is a GitHub release, not an npm registry release. For a separate local installation, follow the archive installation guide.
Connect your agent
From the project you want Grainulator to access:
node /path/to/grainulator/bin/grainulator.js connect --dir "$PWD"
Register the printed MCP configuration in your host, then restart its connection. The command prints configuration; it does not change your host settings.
For bundled skills, agents, and hooks, use the native plugin setup guide. Native Codex needs an explicit workspace: run node /path/to/grainulator/bin/grainulator.js setup --dir /absolute/project once, then restart Codex. A per-launch GRAINULATOR_WORKSPACE overrides that saved default. CLI and direct MCP access remain available to other hosts.
Put it to work
With Grainulator connected, give your agent the outcome you need:
Use Grainulator to investigate whether we should migrate this service. Record the evidence, challenge the assumptions, implement the agreed changes, and verify them. Keep the remaining next steps split into Auto and Manual.
The work follows a simple cycle:
- Record findings with their sources and evidence tiers.
- Check for conflicts, weak support, and missing perspectives.
- Act on the gaps that matter, then verify the requested result.
- Continue from the saved ledger or export the session to another workflow.
There are no fixed claim-count or research-pass quotas. Auto lists work the agent can continue within your authorization. Manual lists decisions, access, or actions that need you. When you ask only for next steps, those two lists are the entire response.
Example: record a claim from the terminal
node bin/grainulator.js init --dir ./sprints/migration \
--question 'Should we migrate this service?' \
--audience engineers --constraints 'Preserve existing user data' \
--done 'A verified plan with remaining risks documented'
node bin/grainulator.js add --dir ./sprints/migration \
--id r001 --type constraint --topic migration \
--content 'Existing user data must remain readable.' --evidence stated
node bin/grainulator.js compile --dir ./sprints/migration
The equivalent MCP tool is add_claim on the grainulator server. See the tool reference for evidence, memory, export, analytics, and orchestration operations.
Explore the docs
| Guide | Start here for… |
|---|---|
| Installation | Tagged source, isolated archives, and verified build identity. |
| Upgrading from 1.x | Host updates, renamed tools, existing data, and retired setup instructions. |
| Agent setup | Claude Code, Codex, and actual plugin acceptance checks. |
| Research sessions | Models, feature controls, credentials, export, and resume. |
| Tools | The canonical CLI and MCP interface. |
| Execution adapters | Attaching a model command and a task-specific verifier. |
| Architecture | The workspace layout and internal modules. |
| Evaluation | What has been measured and what remains unproven. |
| Contributing | Development setup, tests, and changes to the project. |
Verification and limits
CI checks Node 24 and 25, isolated package installation, plugin contracts, Rust runtime conformance, lint, and the static playground in a browser. Native host and live-provider acceptance have separate verification guides.
The compiler checks the structure and support recorded in the ledger; it does not establish that a source is true. Evaluations do not establish a general accuracy or efficiency gain, and per-pass limits are not a whole-session spending cap. Keep those distinctions when interpreting results.
Run the development checks
npm test
npm run test:install
npm run lint
Browser and runtime prerequisites are in CONTRIBUTING.md. The offline node bin/grainulator.js demo exercises the adapter/verifier protocol without a provider account.
Built by Grainulation · MIT licensed · Issues & ideas
Files in the repo
- .claude-plugin
- .codex-plugin
- .github
- agents
- bin
- docs
- evals
- hooks
- lib
- packages
- scripts
- site
- skills
- templates
- test
- .gitignore
- .mcp.json
- .node-version
- .nvmrc
- AGENTS.md
- biome.json
- build-info.json
- CHANGELOG.md
- CODE_OF_CONDUCT.md
- CONTRIBUTING.md
- LICENSE
- mcp.json
- package-lock.json
- package.json
- plugin.json
- README.md
- SECURITY.md
Discussion (0)
Ask about usage, or say what you built with itSign in to join the discussion.
No comments yet. Be the first to say what this is good for.
More connectors
High-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.

Universal provider proxy for OpenAI Codex & Claude Code — use any LLM (Claude, Gemini, Grok, DeepSeek, Ollama…) with Codex CLI, App, SDK, and Claude Code
Git-native persistent memory for AI coding agents. Implements Google OKF v0.2 with sub-300µs in-memory BM25 search, embedded MCP server, and progressive disclosure. Slashes token bloat by 80% with zero external databases or dependencies. Built in pure Go.
Local-first code intelligence graph for MCP and CLI. Builds a persistent map of your codebase so AI coding tools read only what matters, with benchmarked context reductions on reviews and large-repo workflows.
Stop your AI from making things up — it proposes, deterministic tools decide, every claim checked against ground truth with evidence. Grounded facts and context survive resets. Reverse engineering is the proving ground. MCP server + CLI.
