NAPI
Software architecture tooling for the AI age
What is NAPI?
NAPI is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to software architecture tooling for the ai age
Software architecture tooling for the AI age
This server falls under the Developer Tools category on MCPgee, the world's largest MCP server directory with 33,000+ servers.
Features
- Software architecture tooling for the AI age
Use Cases
Maintainer
Works with
Installation
Manual Installation
npx napiConfiguration
Configuration Details
claude_desktop_config.json
Performance
Response Metrics
Resource Usage
How to Set Up and Use NAPI
NanoAPI (napi) is a software architecture visualization and analysis tool for the AI age that maps dependency graphs, measures code complexity, and generates interactive Cytoscape.js graph visualizations for Python, C#, C, and Java codebases. It runs entirely offline with local storage, integrates with CI/CD pipelines for automated manifest generation, and supports AI-driven symbol labeling via OpenAI, Google, or Anthropic APIs. Developers dealing with large or legacy codebases use napi to understand structure before refactoring, extract specific symbols for isolated edits, and surface hidden complexity before it becomes technical debt.
Prerequisites
- macOS or Linux (Windows requires WSL — native Windows support is in development)
- Deno v2.4+ if building from source; pre-built binaries available on GitHub Releases
- A codebase in Python, C#, C, or Java (C++, PHP, JS/TS support is in progress)
- Optional: OpenAI, Google, or Anthropic API key for AI-driven symbol labeling
- An MCP-compatible AI client if using the MCP integration
Install napi via the install script
Run the install script to download the pre-built napi binary for your OS and add it to your PATH. Alternatively, download a binary directly from GitHub Releases.
curl -fsSL https://raw.githubusercontent.com/nanoapi-io/napi/refs/heads/main/install_scripts/install.sh | bashInitialize a napi project
Run 'napi init' in your project root to create a .napirc configuration file. The interactive wizard asks for language selection, file patterns to include, output directory, and AI labeling preferences.
napi initConfigure an AI provider API key (optional)
If you want AI-driven symbol labeling to auto-name and describe code symbols, set your provider API key using the napi CLI. This stores the key in the global napi config.
napi set apiKey
# Then select your provider: openai, google, or anthropicAnalyze and generate the dependency manifest
Run 'napi generate' to analyze your codebase and produce the dependency manifest and complexity report. This is the main analysis step.
napi generateBrowse the interactive visualization
Launch the Cytoscape.js graph visualizer in your browser to explore the dependency graph interactively. The viewer runs at localhost:3000 by default.
napi viewExtract a symbol for refactoring
Use the extract command to isolate a specific function or class from a file. Provide the source file path and the symbol name separated by a pipe character.
napi extract --symbol "src/services/user.py|UserService"NAPI Examples
Client configuration
MCP configuration to connect napi to your AI client, enabling the AI to query the codebase manifest and complexity data.
{
"mcpServers": {
"napi": {
"command": "napi",
"args": ["mcp"]
}
}
}Prompts to try
With napi running and connected, ask your AI assistant questions about your codebase architecture.
- "Use napi to show me all files that depend on the DatabaseConnection class"
- "Which symbols in my codebase have the highest complexity scores? Suggest which to refactor first"
- "Extract the PaymentService class from src/services/payment.py so I can refactor it in isolation"
- "Generate a dependency manifest for this project and identify any circular dependencies"
- "Explain the overall architecture of this Java project based on the napi dependency graph"Troubleshooting NAPI
'napi: command not found' after running the install script
The install script places napi in a local bin directory. Open a new terminal or run 'source ~/.bashrc' (or ~/.zshrc) to reload your PATH. You can also run 'echo $PATH' to verify the install directory is included.
'napi generate' produces no output or empty manifest
Check your .napirc file to ensure the file patterns match your actual source files. For Python, patterns like '**/*.py' should work. Run 'napi init' again to reset the config if needed, and ensure you are in the project root directory.
Visualization at localhost:3000 shows no nodes
You must run 'napi generate' before 'napi view'. The viewer reads the manifest file produced by generate. If generate ran but the file is in a different output directory, check the 'outputDir' setting in your .napirc.
Frequently Asked Questions about NAPI
What is NAPI?
NAPI is a Model Context Protocol (MCP) server that software architecture tooling for the ai age It connects AI assistants to external tools and data sources through a standardized interface.
How do I install NAPI?
Follow the installation instructions on the NAPI GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.
Which AI clients work with NAPI?
NAPI works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.
Is NAPI free to use?
Yes, NAPI is open source and available under the NOASSERTION license. You can use it freely in both personal and commercial projects.
NAPI Alternatives — Similar Developer Tools Servers
Looking for alternatives to NAPI? Here are other popular developer tools servers you can use with Claude, Cursor, and VS Code.
Ecc
★ 188.2kThe agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
Javaguide
★ 155.8kJava 面试 & 后端通用面试指南,覆盖计算机基础、数据库、分布式、高并发、系统设计与 AI 应用开发
Gemini CLI
★ 104.5kA secure MCP server that wraps the Google Gemini CLI, allowing clients to query Gemini models using local OAuth sessions without requiring an API key. It provides tools for model interaction and diagnostics with built-in protection against command in
Awesome MCP Servers
★ 87.3k⭐ Curated list of Model Context Protocol (MCP) servers - tools that extend Claude Desktop, Cursor, Windsurf, and other MCP clients with custom capabilities.
MCP Servers
★ 86.0kModel Context Protocol Servers
CC Switch
★ 77.5kA cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Gemini CLI & Hermes Agent. Only official website: ccswitch.io
Browse More Developer Tools MCP Servers
Explore all developer tools servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.
Set Up NAPI in Your Editor
Choose your AI client for step-by-step setup instructions.
Quick Config Preview
Add this to your claude_desktop_config.json or .cursor/mcp.json
Ready to use NAPI?
Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.