FileScopeMCP
The FileScopeMCP server helps understand codebase structure and dependencies through these capabilities:
File Tree Management: Create, select, list, and delete file tree configurations for different projects
Dependency Analysis: Track bidirectional dependencies across multiple languages (Python, JS/TS, C/C++, Rust, Lua, Zig)
Importance Handling: Calculate, recalculate, and manually set file importance scores (0-10) based on dependencies
File Operations: List files with importance rankings, find important files, and read file content
File Summaries: Add, retrieve, and persist human or AI-generated summaries for specific files
Visualization: Generate Mermaid diagrams in various styles (dependency, directory, hybrid) with filtering and layout options
Auto-updates: Toggle file watching to automatically update when files change
Persistence: Store all file tree data including dependencies, importance, and summaries in JSON files
Analyzes C/C++ source files by detecting #include directives to map dependencies and calculate importance scores for files in C/C++ projects.
Analyzes JavaScript files by detecting import statements and require() calls to track dependencies and assign importance scores to files in JavaScript projects.
Analyzes Lua source files by detecting require statements to map dependencies and calculate importance scores for files in Lua projects.
Generates Mermaid diagrams to visualize file relationships with color-coded visualization based on importance scores for dependency graphs or directory trees.
Analyzes Python source files by detecting import and from...import statements to map dependencies and calculate importance scores for files in Python projects.
Analyzes Rust source files by detecting use and mod statements to map dependencies and calculate importance scores for files in Rust projects.
Provides enhanced support for TypeScript projects by analyzing import statements, tracking dependencies, and assigning higher base importance scores to TypeScript files.
Analyzes Zig source files by detecting @import directives to map dependencies and calculate importance scores for files in Zig projects.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@FileScopeMCPshow me the most important files in my project"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
FileScopeMCP
Your AI already knows how to code. Now it knows your codebase.
FileScopeMCP watches your code, ranks every file by importance, maps all dependencies, and keeps AI-generated summaries fresh in the background. When your LLM asks "what does this file do?" — it gets a real answer without reading the source.
Works with Claude Code, Hermes Agent, Codex, OpenClaw, Cursor AI, or as a standalone daemon. Supports TypeScript, JavaScript, Python, C, C++, Rust, Go, Ruby, Lua, Zig, PHP, C#, and Java.
Key Features
Importance ranking — every file scored 0-10 based on how many things depend on it, what it exports, and where it lives. Your LLM sees the critical files first.
Dependency mapping — bidirectional import tracking across all supported languages. AST-level extraction (tree-sitter) for TS/JS, Python, C, C++, and Rust; regex-based for Go, Ruby, Lua, Zig, PHP, C#, and Java. Finds circular dependencies too.
Symbol intelligence — extracts functions, classes, interfaces, types, enums, consts, modules, and structs via tree-sitter for TypeScript, JavaScript, Python, Go, and Ruby. find_symbol resolves names to file + line range. find_callers and find_callees map the call graph for TS/JS so your AI can answer "who calls this function?" before refactoring.
Always fresh — file watcher + semantic change detection means metadata updates automatically. AST-level diffing for TS/JS, LLM-powered analysis for everything else. Only re-processes what actually changed.
LLM broker — a background process coordinates all AI work through llama.cpp's llama-server (or any OpenAI-compatible HTTP API). Priority queue ensures interactive queries beat background processing. Runs on a single GPU.
Nexus dashboard — a web UI at localhost:1234 that lets you visually explore your codebase across all your repos. Interactive dependency graphs, file detail panels, live broker activity, and per-repo health monitoring.
Related MCP server: GonMCPtool
Prerequisites
Node.js >= 22 and npm (download)
Build tools for native modules (
better-sqlite3,tree-sitter):Linux:
sudo apt install build-essential python3macOS:
xcode-select --installWindows: Visual Studio Build Tools with C++ workload
Quick Start
git clone https://github.com/admica/FileScopeMCP.git
cd FileScopeMCP
./build.sh # installs deps, compiles, registers with Claude Code./build.sh registers FileScopeMCP globally via claude mcp add --scope user (idempotent; re-run with npm run register-mcp). If the claude CLI is missing, the build still succeeds — see docs/mcp-clients.md for other MCP clients.
Open a Claude Code session in any project and FileScopeMCP auto-initializes. The MCP tools appear automatically — your AI can call them directly during conversation:
find_important_files(limit: 5)
status()Opinionated Claude Code install (recommended)
For a richer install that adds a project priming CLAUDE.md and points to optional hook templates:
npm run install-claude-code # or: npx filescope-install --claude-codeThe command is layered, not invasive — it never auto-writes to your .claude/settings.json. Hook templates are documented at docs/claude-code-hooks.md; paste them into your settings if and when you want them. The CLAUDE.md primer is wrapped in <!-- BEGIN filescope --> / <!-- END filescope --> markers so it can be cleanly added, replaced, or removed without touching surrounding content. See ROADMAP.md Phase 1 for the design rationale.
Agent Runtimes (Hermes, Codex, OpenClaw)
Agent runtimes discover FileScopeMCP via the repo's AGENTS.md, which includes MCP registration config, broker/LLM setup, and a pointer to the portable skill file at skills/filescope-mcp/SKILL.md.
Hermes — add to ~/.hermes/config.yaml:
mcp_servers:
filescope:
command: "node"
args: ["/path/to/FileScopeMCP/dist/mcp-server.js"]
timeout: 120Already have a local LLM running? Point the broker at it — edit ~/.filescope/broker.json and set baseURL to your LLM's endpoint. See AGENTS.md for details.
LLM Summaries (Optional)
Run ./setup-llm.sh for a platform-specific guide to setting up llama.cpp's llama-server — see docs/llm-setup.md for details. On Linux you can also sudo ./setup-llm.sh --install-service to register llama-server as a systemd unit (logs flow to journalctl, OOM-protected, auto-restart on boot). The flag is a no-op under WSL2 since llama-server runs on the Windows host there. Without llama-server entirely, everything else still works (file tracking, dependencies, symbols, call graphs — just no LLM-generated summaries). If your agent runtime already has a local LLM, configure the broker to reuse it instead.
Add to your project's .gitignore:
.filescope/
.filescope-daemon.logLLM Monitoring (Optional)
If llama-server is running locally, an optional VictoriaMetrics + vmui stack gives you a single-pane dashboard for VRAM, RAM, swap, throughput, and cumulative work. Total resident footprint ~120 MB, capped via systemd cgroups so a misbehaving exporter can't OOM-kill llama-server.
sudo ./monitoring/install.shBrowse the dashboard at http://<host>:8881/vmui/#/dashboards. See monitoring/ for the layout and uninstall script.
MCP Tools
Tool | What it does |
| Broker connection, queue depth, LLM progress, watcher state |
| Top files by importance score with dependency counts |
| Everything about a file: summary, concepts, change impact, exports, deps, staleness |
| Full file tree (no args) or flat top-N by importance (with |
| Resolve a symbol name to file + line range; supports prefix match via trailing |
| Find all symbols that call a named symbol (TS/JS call graph) |
| Find all symbols that a named symbol calls (TS/JS call graph) |
| Search file metadata across symbols, summaries, purpose, and paths |
| Files changed since a timestamp or git SHA |
| Louvain-clustered file groups by import coupling |
| Find circular dependency chains |
| Cycles involving a specific file |
| Queue files for LLM summarization via the broker |
| Point at a different project |
| Manually set or override a file's LLM summary |
| Manually set a file's importance score (0-10) |
| Drop files/patterns from tracking (destructive) |
Nexus Dashboard
npm run build:nexus # one-time build (API + UI)
npm run nexus # starts at http://localhost:1234A read-only web dashboard that connects to every FileScopeMCP repo on your machine:
Project view — file tree with importance heat colors and staleness indicators, click any file for full metadata
Dependency graph — interactive Cytoscape.js visualization, filter by directory, click nodes to inspect
System view — live broker status, per-repo token usage, streaming activity log
Settings — manage which repos appear, remove or restore from blacklist
Auto-discovers repos by scanning for .filescope/data.db directories. No configuration needed.
Multi-Repo Watchers (systemd, Linux only)
For users who want every repo in ~/.filescope/nexus.json watched continuously — not only when an MCP client is open — install the per-repo watchers user unit:
./scripts/nexus.sh install-watchers # writes the unit, enables it, starts it
systemctl --user status filescope-watchers.service
./scripts/nexus.sh uninstall-watchers # symmetric removalThe unit launches scripts/watchers.mjs, which spawns one dist/mcp-server.js --base-dir=<repo> child per registered repo and supervises them (auto-restart on exit, SIGTERM-clean shutdown). The unit Requires=filescope-broker.service — install the broker user unit yourself; this command does not ship one.
Logs: ~/.filescope/watchers.log (supervisor) and ~/.filescope/watcher-logs/*.log (per-repo children).
How It Works
Your code changes
→ file watcher picks it up
→ AST diff classifies the change (exports? types? body only?)
→ symbols extracted (functions, classes, types, etc.)
→ call-site edges resolved (TS/JS: who calls what)
→ importance scores recalculated
→ staleness cascades to dependents (only if exports/types changed)
→ LLM broker regenerates summaries, concepts, change impact
→ your AI's next query gets fresh answersEverything lives in .filescope/data.db (SQLite, WAL mode) per project. The broker coordinates LLM work across all your repos via a Unix socket at ~/.filescope/broker.sock.
Documentation
Doc | What's in it |
Cross-agent context file — MCP registration, broker config, architecture (read by Hermes, Codex, OpenClaw) | |
Portable skill file — tool reference, workflows, tips for agents using FileScopeMCP | |
llama.cpp / llama-server installation — Linux/macOS native (default), WSL2+Windows, or remote LAN | |
Per-project config, broker config, ignore patterns | |
Setup for Claude Code, Cursor AI, daemon mode | |
Common issues and fixes | |
Dependency detection, importance formula, symbol extraction, call-site edges, storage | |
Optional VictoriaMetrics + vmui dashboard for the local llama-server |
License
Copyright (c) 2026 admica. All rights reserved. See LICENSE.
Available Tools
14 toolscreate_file_treeC
Create or load a file tree configuration
| Name | Required | Description | Default |
|---|---|---|---|
| baseDirectory | Yes | Base directory to scan for files | |
| filename | Yes | Name of the JSON file to store the file tree |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It hints at creation and loading behaviors but doesn't disclose critical details: whether it overwrites existing files, requires specific permissions, handles errors (e.g., invalid directories), or returns any output. For a tool that likely involves file system operations, this lack of transparency is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no wasted words. It's front-loaded with the core action ('Create or load'), though it could be more specific. The structure is straightforward, but the brevity contributes to vagueness rather than clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of file system operations and the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'create' involves (e.g., scanning, JSON generation) or 'load' entails (e.g., reading from disk, validation). For a tool with two required parameters and no structured output, more behavioral and result context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for 'baseDirectory' and 'filename'. The description adds no additional meaning beyond the schema, such as format examples (e.g., absolute vs. relative paths) or usage context. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, but no extra value is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Create or load a file tree configuration' states a purpose but is vague about what 'create' and 'load' entail. It mentions 'file tree configuration' but doesn't specify if this involves scanning directories, generating JSON, or both. Compared to siblings like 'list_files' or 'select_file_tree', it lacks clear differentiation in scope or operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. With siblings like 'list_files', 'select_file_tree', and 'list_saved_trees', the description doesn't indicate if this is for initial setup, persistence, or retrieval of configurations. There's no mention of prerequisites, such as whether the base directory must exist or the filename must be unique.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
debug_list_all_filesB
List all file paths in the current file tree
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action ('List') but doesn't describe what 'current file tree' means, whether this requires prior setup (e.g., via 'select_file_tree'), or the format of the output (e.g., a list of paths). This leaves significant gaps for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any wasted words. It is front-loaded and appropriately sized for a simple tool, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (0 parameters, no output schema, no annotations), the description is minimally adequate. However, it lacks context about dependencies (e.g., relation to 'select_file_tree') and output details, which could be important for an agent to use it correctly in this server's ecosystem.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter details, which is appropriate, earning a baseline score of 4 for adequately handling the lack of parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('List') and resource ('all file paths in the current file tree'), making the purpose unambiguous. However, it doesn't explicitly distinguish itself from the sibling tool 'list_files', which suggests similar functionality, so it doesn't reach the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'list_files' or 'find_important_files'. It lacks context about prerequisites, such as needing a selected file tree, or exclusions, leaving the agent to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_file_treeC
Delete a file tree configuration
| Name | Required | Description | Default |
|---|---|---|---|
| filename | Yes | Name of the JSON file to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'Delete', implying a destructive mutation, but doesn't clarify if this is irreversible, requires specific permissions, has side effects (e.g., affecting related files), or provides confirmation. This is a significant gap for a destructive tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded and appropriately sized, with every word contributing to clarity, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's destructive nature, no annotations, and no output schema, the description is incomplete. It lacks critical context such as safety warnings, return values, or error handling, which is insufficient for a mutation tool that deletes configurations, especially compared to siblings that handle file trees non-destructively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the parameter 'filename' documented as 'Name of the JSON file to delete'. The description doesn't add any meaning beyond this, such as file format details or constraints, so it meets the baseline of 3 where the schema handles the parameter documentation adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Delete') and the resource ('a file tree configuration'), which is specific and unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'list_saved_trees' or 'select_file_tree', which might involve file tree configurations without deletion, so it lacks sibling distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. For example, it doesn't mention prerequisites (e.g., needing an existing file tree), exclusions, or comparisons to siblings like 'create_file_tree' or 'list_saved_trees', leaving the agent without contextual usage cues.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_important_filesC
Find the most important files in the project
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of files to return (default: 10) | |
| minImportance | No | Minimum importance score (0-10) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'most important files' but doesn't explain how importance is determined (e.g., based on scores from other tools like 'get_file_importance'), what the output format is, or any performance considerations like rate limits. This leaves significant gaps for an agent to understand the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's front-loaded and appropriately sized, though it could benefit from more detail to improve clarity and completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (involves ranking or filtering based on importance), lack of annotations, and no output schema, the description is insufficient. It doesn't explain how importance is defined, what the output includes (e.g., file names, scores), or how it interacts with sibling tools like 'get_file_importance'. More context is needed for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, clearly documenting 'limit' and 'minImportance' parameters. The description adds no additional semantic context beyond implying importance-based filtering, which aligns with 'minImportance' but doesn't elaborate further. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool's purpose ('Find the most important files') with a specific verb and resource, but it's vague about what constitutes 'important' and doesn't differentiate from siblings like 'get_file_importance' or 'list_files'. It provides basic direction but lacks specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'get_file_importance' (which might retrieve importance scores) or 'list_files' (which might list all files). The description implies a ranking or filtering based on importance, but it doesn't specify contexts or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_diagramC
Generate a Mermaid diagram for the current file tree
| Name | Required | Description | Default |
|---|---|---|---|
| layout | No | ||
| maxDepth | No | Maximum depth for directory trees (1-10) | |
| minImportance | No | Only show files above this importance (0-10) | |
| outputFile | No | Optional output file name for the diagram | |
| outputFormat | No | Output format (mmd or png) | |
| showDependencies | No | Whether to show dependency relationships | |
| style | Yes | Diagram style |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool generates a diagram but doesn't explain what happens after generation (e.g., where the diagram is saved, if it's displayed or returned as data, or any side effects like file creation). For a tool with 7 parameters and no output schema, this lack of behavioral context is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence: 'Generate a Mermaid diagram for the current file tree.' It's front-loaded with the core purpose, has zero waste, and is appropriately sized for the tool's complexity. Every word earns its place, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (7 parameters, nested objects, no output schema, and no annotations), the description is incomplete. It doesn't explain the output (e.g., whether it returns a file path, diagram data, or nothing), behavioral aspects like side effects, or usage context relative to siblings. For a diagram-generation tool with rich parameters, this minimal description leaves too many gaps for effective agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is high at 86%, with most parameters well-documented in the schema (e.g., 'maxDepth' has description 'Maximum depth for directory trees (1-10)'). The description adds no parameter-specific information beyond what the schema provides, so it meets the baseline of 3 for high coverage but doesn't compensate for any gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generate a Mermaid diagram for the current file tree.' It specifies the verb ('Generate'), resource ('Mermaid diagram'), and scope ('current file tree'), making the purpose unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'create_file_tree' or 'list_files,' which could also involve file tree operations, so it doesn't reach the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'create_file_tree' (which might create a textual representation) or 'list_files' (which might list files without a diagram), nor does it specify prerequisites or contexts for use. The agent must infer usage from the purpose alone, which is insufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_file_importanceC
Get the importance ranking of a specific file
| Name | Required | Description | Default |
|---|---|---|---|
| filepath | Yes | The path to the file to check |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the action ('Get') but does not disclose behavioral traits such as whether this is a read-only operation, if it requires specific permissions, what the output format looks like, or any rate limits. This leaves significant gaps for an agent to understand how to invoke it correctly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is appropriately sized and front-loaded, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It does not explain what 'importance ranking' means, the return format, or how it differs from sibling tools. For a tool with no structured data to supplement it, this leaves the agent with insufficient context to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the parameter 'filepath' clearly documented in the schema. The description does not add any meaning beyond what the schema provides (e.g., it doesn't explain what 'importance ranking' entails or format details), so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Get') and resource ('importance ranking of a specific file'), making the purpose understandable. However, it does not explicitly differentiate from sibling tools like 'find_important_files' or 'recalculate_importance', which prevents a score of 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as 'find_important_files' (which might list important files) or 'recalculate_importance' (which might update rankings). There is no mention of prerequisites, context, or exclusions, leaving usage unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_file_summaryC
Get the summary of a specific file
| Name | Required | Description | Default |
|---|---|---|---|
| filepath | Yes | The path to the file to check |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the action without detailing aspects like read-only nature, potential errors (e.g., file not found), response format, or any side effects, leaving significant gaps for an AI agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with zero waste, clearly front-loading the core action. It is appropriately sized for a simple tool, making it efficient and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what a 'summary' entails, potential return values, or behavioral traits, which are crucial for a tool with no structured output documentation, leaving the agent with insufficient context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no meaning beyond the input schema, which has 100% coverage and fully documents the 'filepath' parameter. With high schema coverage, the baseline is 3, as the schema handles the parameter documentation adequately without extra detail from the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Get') and resource ('summary of a specific file'), which is clear but basic. It doesn't differentiate from sibling tools like 'get_file_importance' or 'read_file_content', which also retrieve file metadata/content, leaving the exact purpose somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. With siblings like 'get_file_importance' and 'read_file_content' that might serve similar retrieval purposes, the description lacks context on specific use cases, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_filesB
List all files in the project with their importance rankings
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but only states what the tool does, not behavioral traits. It doesn't disclose if this is a read-only operation, potential performance impacts, rate limits, or authentication needs. For a list operation with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action ('List all files') and adds key detail ('with their importance rankings'). There is no wasted text, making it highly concise and well-structured for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (0 parameters, no output schema, no annotations), the description is minimally adequate. It states the purpose but lacks context on behavior, output format, or usage guidelines. For a simple list tool, this might suffice, but it doesn't fully compensate for the absence of annotations or output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description adds no parameter info, which is appropriate here. Baseline is 4 for zero parameters, as the schema fully handles the lack of inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and resource 'files in the project', specifying they come with 'importance rankings'. It distinguishes from siblings like 'find_important_files' (which likely filters) and 'debug_list_all_files' (which may include debug info), though not explicitly named. However, it doesn't fully differentiate from 'list_saved_trees' (which lists trees, not files), so it's not a perfect 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'find_important_files' (for filtered results) or 'debug_list_all_files' (for detailed output). The description implies it lists all files, but doesn't specify contexts like initial exploration or when importance data is needed, leaving the agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_saved_treesB
List all saved file trees
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action ('List all saved file trees') but doesn't describe what 'saved file trees' means, how results are returned (e.g., format, pagination), or any constraints like permissions or rate limits. This leaves significant gaps for a tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no wasted words. It's front-loaded and directly communicates the core functionality, making it easy to parse and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'saved file trees' are, how results are structured, or any behavioral traits like safety or performance. For a tool with no structured data to rely on, this leaves the agent with insufficient context to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and the input schema has 100% description coverage (though empty). The description doesn't need to add parameter details, so it meets the baseline expectation for a parameterless tool. No additional semantic value is required or provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'List all saved file trees' clearly states the verb ('List') and resource ('saved file trees'), making the tool's purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'list_files' or 'debug_list_all_files', which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'list_files' or 'debug_list_all_files'. It lacks context about prerequisites, timing, or exclusions, leaving the agent to infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_file_contentC
Read the content of a specific file
| Name | Required | Description | Default |
|---|---|---|---|
| filepath | Yes | The path to the file to read |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. While 'Read' implies a read-only operation, it doesn't disclose important behavioral traits like file size limits, encoding handling, error conditions (e.g., missing files), or performance characteristics. The description is minimal and lacks operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core purpose and appropriately sized for a simple tool with one parameter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read operation with no annotations and no output schema, the description is insufficient. It doesn't explain what the tool returns (e.g., raw text, binary data, structured content) or address potential complexities like large files or permission issues. Given the lack of structured metadata, more descriptive context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the 'filepath' parameter clearly documented. The description doesn't add any parameter-specific information beyond what the schema provides, so it meets the baseline of 3 where the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Read') and resource ('content of a specific file'), making the tool's purpose immediately understandable. It distinguishes from siblings like 'list_files' (which lists files) or 'get_file_summary' (which provides summaries), though it doesn't explicitly mention these distinctions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_file_summary' or 'list_files', there's no indication whether this tool should be preferred for raw content retrieval or if it has specific use cases compared to other file-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
recalculate_importanceB
Recalculate importance values for all files based on dependencies
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but provides minimal behavioral context. It states the operation recalculates values 'for all files', implying a batch mutation, but doesn't disclose permissions needed, whether it's destructive to existing data, execution time, or error handling. This is inadequate for a mutation tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste. It's front-loaded with the core action and scope, making it easy to parse. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a mutation tool with no annotations and no output schema, the description is incomplete. It lacks details on behavioral traits (e.g., side effects, permissions), expected output, or error conditions. The tool's complexity (recalculating for all files) warrants more context than provided.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description adds no parameter details, which is appropriate. Baseline is 4 for zero parameters, as there's nothing to compensate for.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Recalculate') and target resource ('importance values for all files'), with a specific criterion ('based on dependencies'). It distinguishes from siblings like 'get_file_importance' (read-only) and 'set_file_importance' (manual setting), but doesn't explicitly name them. Purpose is specific and non-tautological.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., after dependency changes), exclusions, or compare to siblings like 'find_important_files' or 'set_file_importance'. Usage context is implied only by the action 'recalculate'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
select_file_treeC
Select an existing file tree to work with
| Name | Required | Description | Default |
|---|---|---|---|
| filename | Yes | Name of the JSON file containing the file tree |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions 'select' but doesn't disclose behavioral traits such as whether this loads the tree into memory, sets a default context, requires specific permissions, or has side effects. The description is minimal and lacks operational details needed for an agent to understand the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with zero waste: 'Select an existing file tree to work with'. It's appropriately sized for the tool's apparent simplicity, though this conciseness may contribute to gaps in other dimensions.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'select' entails operationally, what happens after selection (e.g., sets context for other tools), or the return value. For a tool with one parameter and no structured behavioral hints, the description should provide more context to guide effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the parameter 'filename' documented as 'Name of the JSON file containing the file tree'. The description adds no additional meaning beyond this, as it doesn't mention parameters at all. With high schema coverage, the baseline score of 3 is appropriate, as the schema adequately defines the parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Select an existing file tree to work with' states a clear verb ('select') and resource ('file tree'), but it's vague about what 'select' means operationally. It distinguishes from siblings like 'create_file_tree' by specifying 'existing', but doesn't clarify how this differs from 'list_saved_trees' or other file-related tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description implies it's for selecting an existing file tree, but doesn't specify prerequisites (e.g., must have saved trees), exclusions, or direct comparisons to siblings like 'list_saved_trees' or 'create_file_tree'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_file_importanceC
Manually set the importance ranking of a specific file
| Name | Required | Description | Default |
|---|---|---|---|
| filepath | Yes | The path to the file to update | |
| importance | Yes | The importance value to set (0-10) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states this is a manual setting operation, implying mutation, but doesn't address whether this overwrites existing values, requires specific permissions, has side effects, or provides confirmation of success. For a mutation tool with zero annotation coverage, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any wasted words. It's appropriately sized and front-loaded with the core action, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a mutation tool with no annotations and no output schema, the description is incomplete. It doesn't explain what happens on success/failure, whether changes are reversible, or how this interacts with sibling tools like 'recalculate_importance'. For a tool that modifies system state, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters ('filepath' and 'importance') clearly documented in the schema. The description adds no additional parameter semantics beyond what the schema already provides, such as format examples or edge cases, so it meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('manually set') and target ('importance ranking of a specific file'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'get_file_importance' (read) or 'recalculate_importance' (automatic calculation), which would be needed for a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'recalculate_importance' (automatic calculation) or 'get_file_importance' (read-only). It also doesn't mention prerequisites such as file existence or permissions, leaving usage context unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
set_file_summaryC
Set the summary of a specific file
| Name | Required | Description | Default |
|---|---|---|---|
| filepath | Yes | The path to the file to update | |
| summary | Yes | The summary text to set |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states the tool sets a file summary, implying a mutation operation, but fails to address critical aspects like permissions required, whether the operation is idempotent, error handling, or side effects. This leaves significant gaps in understanding the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with zero wasted words. It front-loads the core purpose efficiently, making it easy to parse and understand quickly without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's mutation nature, lack of annotations, and no output schema, the description is incomplete. It doesn't cover behavioral traits like error conditions, response format, or integration with sibling tools, leaving the agent with insufficient context for reliable use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, clearly documenting both parameters ('filepath' and 'summary'). The description adds no additional semantic context beyond what the schema provides, such as format examples or constraints, so it meets the baseline for adequate but minimal value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Set') and the target resource ('summary of a specific file'), making the purpose immediately understandable. However, it doesn't distinguish this tool from its sibling 'get_file_summary', which retrieves rather than sets file summaries, leaving room for improvement in sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., file existence), exclusions, or related tools like 'get_file_summary' for retrieval, leaving the agent without contextual usage cues.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
14 tool updates
v1.0.0- First observed
create_file_tree - First observed
debug_list_all_files - First observed
delete_file_tree - First observed
find_important_files - First observed
generate_diagram - First observed
get_file_importance - First observed
get_file_summary - First observed
list_files - First observed
list_saved_trees - First observed
read_file_content - First observed
recalculate_importance - First observed
select_file_tree - First observed
set_file_importance - First observed
set_file_summary
TDQS
Every tool has a clearly distinct purpose with no ambiguity. Tools like 'create_file_tree', 'delete_file_tree', and 'select_file_tree' handle tree management, while 'read_file_content', 'get_file_summary', and 'set_file_summary' focus on file content operations. The separation between listing functions ('debug_list_all_files', 'list_files', 'list_saved_trees') and importance calculations ('get_file_importance', 'set_file_importance', 'recalculate_importance') is well-defined, preventing misselection.
All tool names follow a consistent verb_noun pattern with snake_case throughout. Verbs like 'create', 'delete', 'list', 'get', 'set', 'read', 'find', 'generate', 'select', and 'recalculate' are used predictably with corresponding nouns. There are no deviations in naming conventions, making the tool set highly readable and predictable.
With 14 tools, the count is well-scoped for managing file trees and analyzing file importance in a project. Each tool earns its place by covering distinct aspects such as tree configuration, file listing, content access, importance ranking, and diagram generation. This number is neither too sparse nor overwhelming, fitting the server's purpose effectively.
The tool surface provides complete CRUD/lifecycle coverage for file tree management and file analysis. It includes creation, selection, listing, and deletion of trees, along with operations for reading, summarizing, and setting importance for files. Tools like 'recalculate_importance' and 'generate_diagram' add advanced functionality, leaving no obvious gaps that would cause agent failures in this domain.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Deterministic context layer for your codebase: change impact, blast radius, answers with receipts.
Give your AI agent a persistent map of your project's structure, dependencies, and bugs.
Code intelligence platform for AI agents. 20 tools for architecture, security & impact analysis.
Ground-truth code graph for your codebase: exact callers, callees, symbols & dependencies.
Related MCP Servers
- FlicenseBqualityDmaintenanceA Model Context Protocol server that helps AI code editors locate TypeScript symbol definitions in codebases, particularly useful for finding original definitions of imported symbols and classes.116-
- AlicenseCqualityDmaintenanceA TypeScript-based Model Context Protocol toolkit that enables AI to interact with code files, manage translations, build projects, and search for files and code content.33165MIT
- AlicenseNot gradedqualityDmaintenanceA structural codebase indexer that exposes 18 tools via the Model Context Protocol for AI-assisted code navigation, enabling efficient querying of functions, classes, dependencies, and call chains without reading entire files.62AGPL 3.0
- AlicenseNot gradedqualityBmaintenanceEnables Claude Code to query a TypeScript dependency graph and retrieve the minimal set of files needed for code review, implementation, or debugging.MIT
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/admica/FileScopeMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server