codelens-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| overviewA | Structural map of source files: imports, exports, classes (with method names, including class-field arrow methods), and top-level functions — each with 1-based line/endLine so you can jump straight to a Read. Returns JSON {path, language, totalLines, hasErrors, imports[], exports[], classes[{name,line,endLine,methods[]}], functions[{name,line,endLine,exported}]}. hasErrors:true means the file has syntax errors and items may be missing (parseErrors lists the offending line ranges). Nested functions are NOT listed here (use the functions tool). Lists cap at 500 entries; when capped, truncated. holds the true total. Languages: TypeScript (.ts/.tsx/.mts/.cts), JavaScript (.js/.jsx/.mjs/.cjs), Python (.py). Python exports come from all. Use this FIRST to orient in an unfamiliar file. codelens is a navigation map: use it to LOCATE code, then Read the actual source before judging or modifying it. A signature is not the body. |
| functionsA | Every addressable function in a file — nested functions, class methods, getters/setters, class-field arrows, namespace members, object-literal methods/properties, default-export functions — with reconstructed signatures. NOT listed: anonymous callbacks passed as arguments (they have no name to navigate to), TS overload signature declarations (only implementations), Python lambdas. Returns JSON {path, language, hasErrors, functions[{name, signature, params[{name,type}], returnType, line, endLine, async, exported, kind, parent}]}. kind is function|method|arrow|getter|setter; parent is the enclosing scope, dotted for nesting (e.g. 'Widget.render'), null at top level; default exports are named 'default'. hasErrors:true = syntax errors, items may be missing. Caps at 500 entries (truncated.functions = true total). Languages: TS/TSX/JS/JSX/Python. Use it to pick the right line range to Read, or to survey an API surface. codelens is a navigation map: use it to LOCATE code, then Read the actual source before judging or modifying it. A signature is not the body. |
| commentsA | All comments in a file with 1-based line ranges, kind (line | block | doc — doc covers /** */ and Python docstrings in real docstring position), and marker detection. Returns JSON {path, language, hasErrors, comments[{line, endLine, text, kind, marker}]}. marker is TODO|FIXME|FIX|BUG|HACK|NOTE|XXX when the comment contains that UPPERCASE word (case-sensitive to avoid prose false-positives), else null. Set markersOnly:true to get only marked comments (the debt list). Comment text clips at 600 chars (textTruncated:true); list caps at 500. Languages: TS/TSX/JS/JSX/Python. Use for surveying docs/debt without reading whole files. codelens is a navigation map: use it to LOCATE code, then Read the actual source before judging or modifying it. A signature is not the body. |
| mapA | Per-file structural overview of a whole directory tree in one call — the orientation tool for an unfamiliar codebase. Walks the directory recursively (skipping node_modules, dist, build, venv, pycache, hidden dirs and other build/dependency dirs), parses every supported file, and returns JSON {path, files[{path, language, totalLines, classes[], functions[], hasErrors?, error?}], totalSupportedFiles, filesParsed, truncated}. Caps: 200 files per call (truncated:true when more exist — map subdirectories individually to go deeper), 100 names per list per file. Unparseable files appear with an inline error instead of vanishing. Languages: TS/TSX/JS/JSX/Python; other files are not counted. Use before overview/functions to decide which files matter. codelens is a navigation map: use it to LOCATE code, then Read the actual source before judging or modifying it. A signature is not the body. |
| findA | Locate a function, method, or class by name across a directory — "where is X defined?" without grepping. Returns JSON {query, path, matches[{file, name, kind, line, signature, parent}], filesScanned, totalSupportedFiles, truncated, skipped?}. kind is function|method|arrow|getter|setter|class. Matching is case-insensitive substring by default; pass exact:true for exact-name match. Files that could not be searched (oversized/unreadable) are listed in skipped with the reason — never silently ignored. Caps: scans up to 300 files, returns up to 100 matches — truncated:true means there may be more (narrow the path or use exact:true). Finds DEFINITIONS only (not call sites — use grep for those). Languages: TS/TSX/JS/JSX/Python. codelens is a navigation map: use it to LOCATE code, then Read the actual source before judging or modifying it. A signature is not the body. |
| function_bodyA | Verbatim source of ONE function — the focused read. Instead of Reading a whole file to inspect one function, get exactly that function's source (including its signature and decorators). Returns JSON {path, name, parent, kind, signature, line, endLine, async, exported, hasErrors, body}. name matches the bare name or the dotted qualified form from functions/find output (e.g. 'Widget.render'); if the name is ambiguous, the call FAILS listing the candidates with their lines — pass the qualified name or line to pick one, it never guesses. body is real source, capped at 20000 chars (truncated.bodyChars = true length — Read line..endLine for the rest). The body IS the territory for this one function, so you may reason about its internals — but not about its callers/callees, and re-Read before editing (files change). Languages: TS/TSX/JS/JSX/Python. |
| infoA | Server self-description: version, working directory (the path sandbox root — every path you pass must be inside it), supported languages/extensions, tool list, and all output caps. Returns JSON {name, version, workingDirectory, languages, tools[], limits, contract}. Read-only, no parameters. Call this first if a path is rejected or you need to know what the server can see. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/segentic-lab/codelens-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server