Fast polyglot source code intelligence: symbols, imports, dependencies, and impact analysis.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
One-click editor setup isnβt available for this listing yet β we donβt have a confirmed install command, and weβd rather show nothing than point your editor at the wrong package or host. Follow the projectβs own setup instructions, linked above.
A fast, polyglot source code intelligence CLI. Extract symbols, parse imports, trace dependencies, and analyze impact β all from the command line.
No language server required. No build step for your projects. Just point it at your code.
symbols is for the moments when you need to understand a codebase quickly without opening 30 files first.
Common pain points it targets:
Instead of manually reconstructing context from editor tabs, grep output, and memory, symbols gives you the structural view in one step.
symbols saves context in two practical ways:
list, deps, dependents, impact, graph, search) so you do not have to rebuild mental maps every session.syms mcp) so agents and tools can fetch fresh project facts directly, rather than relying on stale chat history or guessed file relationships.Net effect:
Requirements: Go 1.26+
Symbol extraction uses tree-sitter for full AST parsing (function signatures with parameters, classes, types, constants). Import parsing and dependency resolution use regex.
| Language | Symbols | Import parsing | Dependency resolution |
|---|---|---|---|
| Python | tree-sitter (functions, classes, constants, variables) | regex | Relative + absolute imports |
| TypeScript | tree-sitter | regex | tsconfig.json path aliases, relative paths, index.ts |
| JavaScript | tree-sitter | regex | Same as TypeScript (also reads jsconfig.json) |
| Svelte | tree-sitter (script block) | regex | Same as TypeScript |
| Go | tree-sitter | regex | go.mod module prefix, package directories |
| Java | tree-sitter | regex | Dot-to-slash, src/main/java prefix |
| Kotlin | tree-sitter | regex | Same as Java + .kt |
| Rust | tree-sitter | regex | crate/self/super, mod.rs |
| C# | tree-sitter | regex | Namespace-to-path, class name fallback |
| PHP | tree-sitter | regex | PSR-4 conventions, require/include |
| C/C++ | tree-sitter | β | β |
| Ruby | tree-sitter | β | β |
| Scala | tree-sitter | β | β |
| Bash | tree-sitter | β | β |
Output:
Output:
Output:
Output:
All commands support --json for machine-readable output:
The list subcommand is the default β you can omit it:
Output:
Run syms as an MCP server for AI tool integration (e.g. Claude Code):
Exposes all functionality as MCP tools over stdio (JSON-RPC 2.0):
| Tool | Description |
|---|---|
syms_list | Extract symbols from files |
syms_imports | Parse import statements |
syms_deps | File dependencies |
syms_dependents | Reverse dependencies |
syms_impact | Impact analysis |
syms_search | Search symbols by name |
syms_graph | Project dependency graph |
syms_list and syms_search accept optional kinds: string[] arguments to filter symbol kinds.
syms_list and syms_search also accept optional include_ranges: boolean for start/end line+column metadata.
Tool results are returned in structuredContent (not JSON text blobs in content[].text).
After installing syms, configure it as an MCP server:
Project-level (recommended for teams):
Create .mcp.json in your project root:
Commit this file so your team gets the symbols server automatically.
Global (all projects):
Create or edit ~/.mcp.json:
After configuration:
symbols MCP serverFactual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/symbols)<a href="https://allmcps.com/mcp/symbols"><img src="https://allmcps.com/api/badge/symbols?style=directory" alt="Symbols on AllMCPs" /></a>