Mcp Ctags — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Mcp Ctags (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A Model Context Protocol (MCP) server that transforms ctags from a command-line utility into a native code navigation system for Claude Code. Built with a functional programming approach and comprehensive type safety.
# Install the package
pip install ctags-mcp
# Generate tags for your project
ctags -R .
# Add to Claude Desktop config
{
"mcpServers": {
"ctags": {
"command": "ctags-mcp"
}
}
}
# Optional: Auto-regenerate tags when code changes
# Copy .claude/settings.json to your project root[📖 Full Installation Guide](INSTALL.md) | [🔄 Auto-Regeneration Setup](AUTO_REGENERATION.md)
Transform code exploration from this:
# Traditional approach - slow, imprecise
find . -name "*.py" | xargs grep "async def"
grep -r "class.*Service" src/To this:
# Natural language with Claude
"Find all async functions in this project"
"Show me service classes with their locations"
"Get the AsyncBatchProcessor definition with context"| Task | Traditional | MCP Ctags | Improvement |
|---|---|---|---|
| Find symbols | ~530ms | ~7ms | 79x faster |
| Files read | 53+ files | 0 files | ∞x better |
| Query accuracy | Manual parsing | Structured data | More reliable |
| Scalability | Linear O(n) | Constant O(1) | Scales infinitely |
ctags_detectAuto-detects and validates ctags file in working directory.
ctags_find_symbolFinds symbols by name or regex pattern with comprehensive filtering.
ctags_list_symbolsLists all symbols of a specific type (functions, classes, methods, variables).
ctags_get_locationGets source code context around a specific symbol.
ctags_search_in_filesSearches across multiple file patterns simultaneously.
Once configured with Claude Desktop:
ctags-mcp/
├── src/ctags_mcp/ # Main package
│ ├── ctags_parser.py # Functional ctags file parsing
│ ├── symbol_search.py # Search and filtering functions
│ ├── ctags_server.py # FastMCP server with tool definitions
│ └── main.py # CLI entry point
├── src/tests/ # Comprehensive test suite
├── pyproject.toml # Package configuration
├── LICENSE # MIT License
├── README.md # This file
└── INSTALL.md # Installation guideThe implementation includes comprehensive testing:
# Run all tests
pytest
# With coverage
pytest --cov=src/ctags_mcp
# Results: 31 tests passing, covering all functionalityBuilt with functional programming principles:
# Clone and setup
git clone <repository-url>
cd ctags-mcp
pip install -e ".[dev]"
# Code quality
black src/ # Format code
ruff check src/ # Lint code
mypy src/ # Type check
pytest # Run testsReal-world testing with 1,050 symbols:
📁 Tags File Information:
Format: exuberant
Total entries: 1050
Functions: 304, Classes: 89, Methods: 512, Variables: 145
🔍 Search Examples:
• Async functions: 4 found in ~7ms
• Service classes: 15 found in ~7ms
• Auth symbols: 23 found in ~7ms
• CLI symbols: 129 found in ~7ms
🚀 Efficiency: 79x faster than traditional file scanninggit checkout -b feature-namepytestMIT License - see LICENSE for details.
Transform your code navigation today! Install ctags-mcp and experience the power of index-based code exploration with Claude.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.