21 AI Tools. Zero Hallucination.
The Model Context Protocol (MCP) is USB for AI — a universal plug that lets any AI assistant talk to any data source. Nomik exposes 21 graph-powered tools that give your AI precise codebase intelligence.
How It Works
The Difference
Without Nomik
- ✗AI searches for "checkout" → 53 files returned
- ✗Context window overflows, deep relationships truncated
- ✗AI hallucinates — fills gaps with plausible-but-wrong info
- ✗Every conversation starts from zero (no memory)
- ✗AI misses the cron job that also depends on your function
With Nomik MCP
- ✓AI calls nm_impact → 5 precise dependents returned
- ✓Graph traversal follows exact call chains and dependencies
- ✓Real data from Neo4j — no guessing, no hallucination
- ✓Persistent graph survives across sessions and restarts
- ✓Graph reveals: CronJob:dailySync → CALLS → syncToStripe()
All 21 Tools
Every tool is project-scoped via NOMIK_PROJECT_ID and accepts an explicit project parameter for cross-project queries.
Search for nodes by name, path, or pattern. Supports wildcards and case-insensitive matching.
"Find all auth-related functions"Downstream impact analysis with confidence filtering. Which nodes break if a symbol is modified.
"What breaks if I change parseFile?"Shortest dependency chain between two symbols (names only).
"Trace the chain from scanCommand to neo4j"Detailed path between two entities with node types and edge types at each step.
"How does parseFile connect to neo4j?"Rich context for a file or function: contains, calls, calledBy, imports, inheritance.
"Give me context for graph.service.ts"Full health metrics: dead code, god objects, god files, duplicates, all 17 node type counts.
"Are there any dead code or god objects?"Full symbol explanation: type, file, callers, callees, edge counts, container context.
"Explain the createGraphService function"DB table/column impact: who reads from or writes to a specific table or column.
"Who writes to users.email?"Recently modified nodes by updatedAt timestamp.
"What changed in the last hour?"Full codebase briefing: stats, languages, DB tables, APIs, env vars, high-risk functions.
"Give me a codebase overview"Functional cluster detection. Groups of code that frequently call each other.
"Show me the code communities"Execution flow tracing from entry points (routes, events, queues) through the call graph.
"Trace the request lifecycle for /api/checkout"Structured documentation data: file index, top functions, health report, service links.
"Generate documentation for this module"Quality gate check: dead code, god files, duplicates against configurable thresholds.
"Does the codebase pass quality gates?"Evaluate 9 architecture rules + custom Cypher rules from .nomik/rules.yaml.
"Run architecture rules check"Graph-aware rename impact: all callers, importers, and affected files for a symbol.
"What files are affected if I rename parseFile?"Architecture drift between two git SHAs: new/removed files, functions, and call edges.
"What changed architecturally since last release?"Find test files affected by changing a symbol or file. Graph-based, no grep needed.
"Which tests should I run after changing parseFile?"Dependency vulnerability check with graph blast radius — which files import vulnerable packages.
"Are there any vulnerable dependencies?"Cross-service dependencies: producer/consumer pairs for queues, events, and API calls.
"Show cross-service connections"List all projects tracked in the knowledge graph with metadata.
"What projects does NOMIK track?"Live Example: Impact Analysis
When you ask Cursor: "What happens if I modify updateUserProfile?"
{
"tool": "nm_impact",
"arguments": {
"symbolId": "updateUserProfile",
"depth": 3
}
}[
{ "name": "PUT /api/users/:id",
"type": "Route", "depth": 1 },
{ "name": "syncToStripe",
"type": "Function", "depth": 1 },
{ "name": "users [DBTable]",
"type": "DBTable", "depth": 1 },
{ "name": "sendWelcomeEmail",
"type": "Function", "depth": 2 }
]IDE Setup
Auto-creates config with Neo4j credentials and project ID.
Targets ~/.codeium/windsurf/mcp_config.json by default.
Auto-configures Claude Desktop's MCP settings.
nomik serve for AI integration — only for the visualization dashboard.Transport Options
| Transport | Use Case | How |
|---|---|---|
| stdio | Cursor, Windsurf, Claude Desktop (local) | Process spawned by the client — recommended |
| SSE | Remote access, web dashboards | HTTP server on configurable port |
| Streamable HTTP | Production / multi-client | Stateless HTTP with streaming |