iranti (nfemmanuel/iranti) is an MCP server listed on the M8ven Trust Index. It scores 0 out of 100, grade F. It declares 19 tools. No publisher has claimed this listing.

F
Warning
0/100

iranti

Persistent shared memory for AI coding agents. Stores facts as entity/key/value triples with hybrid semantic search, task checkpoints, and conflict resolution — shared across Claude Code, Codex CLI, and GitHub Copilot.

Warning. Serious findings were identified. Review the full report before connecting. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

Code Verified⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

nfemmanuel

Source: Glama

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.

⏳ This MCP is queued for scoring. Check back in a few minutes.
// key findings
🚨
Code appears obfuscated
12 files are unreadable to a human reviewer. Cannot audit what they do.
🔐
You'll be asked for 10 credentials: ANTHROPIC_API_KEY, GEMINI_API_KEY, GROQ_API_KEY, IRANTI_API_KEY, IRANTI_BOOTSTRAP_TOKEN, IRANTI_CHROMA_TOKEN, IRANTI_QDRANT_API_KEY, MISTRAL_API_KEY, OPENAI_API_KEY, POSTGRES_PASSWORD
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
🔐 secretANTHROPIC_API_KEY
configANTHROPIC_BASE_URL
configANTHROPIC_MODEL
configCODEX_CLI_PATH
🔐 secretGEMINI_API_KEY
configGEMINI_MODEL
configGITHUB_REF_NAME
🔐 secretGROQ_API_KEY
configGROQ_MODEL
configIRANTI_AGENT_ID
configIRANTI_ALLOW_INSECURE_STARTUP
🔐 secretIRANTI_API_KEYThis writes .env.iranti with IRANTI_URL, , and agent identity. Each agent in a multi-agent system gets its own --agent-id.
configIRANTI_API_KEY_PEPPER
configIRANTI_ARCHIVIST_DEBOUNCE_MS
configIRANTI_ARCHIVIST_INTERVAL_MS
configIRANTI_ARCHIVIST_WATCHWatch escalation files and auto-run maintenance (true/false)
configIRANTI_AUTO_REMEMBER
configIRANTI_BOOTSTRAP
🔐 secretIRANTI_BOOTSTRAP_TOKEN
configIRANTI_CHROMA_COLLECTION
configIRANTI_CHROMA_DATABASE
configIRANTI_CHROMA_TENANT
🔐 secretIRANTI_CHROMA_TOKEN
configIRANTI_CHROMA_URL
configIRANTI_CLAUDE_AGENT_DESCRIPTION
configIRANTI_CLAUDE_AGENT_ID
configIRANTI_CLAUDE_AGENT_NAME
configIRANTI_CLAUDE_ENTITY_HINTS
configIRANTI_CLAUDE_MAX_FACTS
configIRANTI_CLAUDE_SESSION_TASK
configIRANTI_CLOUD_CALLBACK_URL
configIRANTI_CONFLICT_RESOLUTION_TIMEOUT_MS
configIRANTI_DEBUG
configIRANTI_DECAY_ENABLED
configIRANTI_DOCKER_BIN
configIRANTI_EMBEDDING_DIM
configIRANTI_ENV_FILE
configIRANTI_ESCALATION_DIR
configIRANTI_FAKE_DOCKER_PORTS
configIRANTI_HOME
configIRANTI_INSTANCE_DIR
configIRANTI_INSTANCE_ENV
configIRANTI_INSTANCE_ENV_FILE
configIRANTI_INSTANCE_NAME
configIRANTI_INSTANCE_RUNTIME_FILE
configIRANTI_MAX_BODY_BYTES
configIRANTI_MCP_AGENT_DESCRIPTION
configIRANTI_MCP_AGENT_MODEL
configIRANTI_MCP_AGENT_NAME
configIRANTI_MCP_DEFAULT_AGENT
configIRANTI_MCP_DEFAULT_SOURCE
configIRANTI_MCP_HOST
configIRANTI_MEMORY_ENTITY
configIRANTI_PERSONAL_MEMORY_ENTITY
configIRANTI_PORTAPI port (default: 3001)
configIRANTI_PROJECT_ENV
🔐 secretIRANTI_QDRANT_API_KEY
configIRANTI_QDRANT_COLLECTION
configIRANTI_QDRANT_URL
configIRANTI_RATE_LIMIT_BACKEND
configIRANTI_REQUEST_LOG_FILE
configIRANTI_STAFF_NAMESPACES
configIRANTI_STAFF_WRITERS
configIRANTI_TEST_TOOL_SHIM
configIRANTI_TEST_WHERE_EXE
configIRANTI_TRUST_PROXY
configIRANTI_TX_MAX_WAIT_MS
configIRANTI_TX_TIMEOUT_MS
configIRANTI_URLThis writes .env.iranti with , IRANTI_API_KEY, and agent identity. Each agent in a multi-agent system gets its own --agent-id.
configIRANTI_VECTOR_BACKEND
configIRANTI_VECTOR_FALLBACK_SCAN_LIMIT
configIRANTI_VERBOSE
configIRANTI_WORKSPACE_ID
configLLM_PROVIDERopenai \ claude \ gemini \ groq \ mistral \ ollama \ mock
configLLM_PROVIDER_FALLBACK
🔐 secretMISTRAL_API_KEY
configMISTRAL_MODEL
configNO_COLOR
configOLLAMA_BASE_URL
configOLLAMA_MODEL
🔐 secretOPENAI_API_KEY
configOPENAI_BASE_URL
configOPENAI_MODEL
🔐 secretPOSTGRES_PASSWORD
configPOSTGRES_USER
configProgramData
configRATE_LIMIT_MAX_REQUESTS
configRATE_LIMIT_WINDOW_MS
configRELEASE_TAG
configWINDIR
configXDG_DATA_HOME
configXDG_DATA_DIRS
configWAYLAND_DISPLAY
configDISPLAY
configADODBAPI_VERBOSE
configPROCESSOR_ARCHITECTURE
configAIOHTTP_NO_EXTENSIONS
configPYTHONASYNCIODEBUG
configNETRC
Deployment configuration, supplied by whoever hosts the server. Users are not asked for these.
deployDATABASE_URL
// quality suggestions

Tool annotations

No tools have read-only/destructive annotations

Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.

All four hints declared on every tool

19/19 tools missing one or more hints — iranti_handshake (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); iranti_attend (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); iranti_checkpoint (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +16 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

Destructive tools are labelled

1 tool perform destructive updates without destructiveHint — iranti_write deletes at line 1270 (fs.unlinkSync(debtFile))

Add destructiveHint:true to any tool whose handler calls .delete(), .upsert(), .update(), unlink, rm, DELETE, DROP, REPLACE INTO, or any operation that overwrites existing data.

Tool handlers catch errors

12/19 tool handlers wrap calls in try/catch (63%)

Wrap each tool handler body in try/catch and return a structured error response.

Tool test coverage

Only 0/19 tools referenced in tests (0%)

Write tests that reference each tool by name so every tool has at least one test.

Shell command execution

39 child_process calls — runs shell commands

Prefer library functions over shell-outs. If you must shell out, ensure all inputs are properly escaped.

Readable source code

12 files appear obfuscated

Ship unminified, readable source.

Domain consistency

npm scope @iranti doesn't match GitHub owner nfemmanuel

Use the same org name across GitHub, npm, and your homepage so users can verify the publisher.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 8 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Verified](https://m8ven.ai/badge/mcp/nfemmanuel/iranti?variant=verified)](https://m8ven.ai/mcp/nfemmanuel/iranti)
Shows verification status without the grade. Want the grade badge instead? Remove ?variant=verified from the URL.
commit: fb394a76eb0a193ae3d043e7045999aa77984e09
code hash: 3639f9daaeb0e66706153c4019fe83e2d44b46d96835412e59d4620afc9f1a2c
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client