local-code-index
This server indexes and semantically searches local code repositories (TypeScript, JavaScript, and Java) using AST-aware parsing (Tree-sitter), Ollama embeddings, and LanceDB ā running entirely on your machine with no API keys required.
Index a repository (
index_repository): Parse and embed an entire codebase using Tree-sitter AST chunking, storing structured code components (classes, methods, decorators) in an isolated LanceDB table.List indexed repositories (
list_indexed_repositories): View all currently registered and indexed codebases in the system.Search a single codebase (
search_codebase): Perform semantic vector search within a specific repository, with configurable file filters and a token budget (default: 4,000 tokens).Search all codebases (
search_all_codebases): Run a cross-repository semantic search across every indexed project simultaneously, with a per-repo result limit and global token budget (default: 6,000 tokens).Delete a repository (
delete_repository): Remove a repository and its vector data from LanceDB using either its directory path or database table name.
The server automatically skips node_modules, build outputs, .env files, and files over 2MB to protect performance and data privacy.
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., "@local-code-indexsearch for the authenticate method 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.
Local Code Index - MCP Server š
A high-performance, fully local, open-source Model Context Protocol (MCP) server built to index massive codebases into an easily searchable format for AI models.
This tool is explicitly optimized for TypeScript, JavaScript, and Java, utilizing official Tree-sitter AST parsing to capture complete code structures (classes, methods, decorators, annotations, and Javadoc comments) instead of blind text fragments. It runs entirely on your machine via Ollama and LanceDB, requiring zero API keys and protecting your intellectual property.
š ļø Features
AST-Aware Structural Chunking: Groups methods, classes, and relevant context (like
@Get()decorators in NestJS or Javadoc strings in Spring Boot) into unified semantic records.Scalable Multi-Repo Architecture: Automatically provisions isolated database tables per repository. Scale up to 100+ codebases incrementally without performance or query degradation.
Cross-Repository Search: Allows AI models to scan one repository or run a global matrix query across all indexed projects simultaneously.
Production-Grade File Filtering: Automatically skips
node_modules, build outputs, binaries, lockfiles, and environment secrets (.env).Sub-Second Latency: Automatically compiles localized IVF-PQ vector indexes on larger repositories to keep query speeds under a second.
Related MCP server: codesteer-atlas
šļø Architecture Design
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā Your Massive Codebase (TS, JS, Java) ā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāā¬āāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā (Tree-sitter AST Parsing)
ā¼
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā Semantic Chunks (Functions, Classes, Decorators) ā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāā¬āāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā (Local Ollama nomic-embed-text)
ā¼
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā Isolated LanceDB Tables (repo_A, repo_B, etc.) ā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāā¬āāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā
āāāāāāāāāāā“āāāāāāāāāā
ā¼ ā¼
[ search_codebase ] [ search_all_codebases ]
ā² ā²
āāāāāāāāāāā¬āāāāāāāāāā
ā (Model Context Protocol)
ā¼
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
ā Your AI Workspace Environment (Cursor / Cline) ā
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāš¦ Project Structure
Ensure your local project directory matches this setup:
local-code-index/
āāā pyproject.toml # Pin-point environment and tool configurations
āāā src/
ā āāā local_code_index/
ā āāā __init__.py
ā āāā cli.py # Cross-platform CLI (uv run local-code-index ...)
ā āāā parser_utils.py # Official Tree-sitter AST parsing layer
ā āāā server.py # FastMCP server tool and LanceDB engine
āāā README.md # Project documentationš Quick Start & Installation
1. Start Your Local Embedding Model
Make sure Ollama is installed and active on your machine, then download the code-optimized embedding vector weights:
ollama pull nomic-embed-text2. Install the Project Package
Navigate to your project directory and run the compilation step using uv (or standard pip):
cd local-code-index
uv pip install -e .3. Register the VS Code / Editor Extension
To connect this local tool to your AI chat interface, register it inside your favorite editor extension configurations. The MCP server advertises itself as Multi-Repo Indexer (set via FastMCP("Multi-Repo Indexer") in server.py); we recommend using the same name for the config key so the display is consistent across panels.
For Cursor (Cursor Settings -> Features -> MCP)
Name:
Multi-Repo IndexerType:
commandCommand:
uv --directory "/absolute/path/to/local-code-index" run python -m local_code_index.server
For Cline (cline_mcp_settings.json)
Add this configuration snippet inside your mcpServers settings payload:
{
"mcpServers": {
"Multi-Repo Indexer": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/local-code-index",
"run",
"python",
"-m",
"local_code_index.server"
],
"disabled": false
}
}
}š» Managing the Index from the Integrated Terminal
Indexing and maintenance are driven by a single built-in CLI command (local-code-index) that ships with the package ā no ~/.bashrc or ~/.zshrc editing required, and it works the same on Windows PowerShell, macOS and Linux.
A shorter alias lci is also installed and points at the exact same CLI, so the two invocations below are interchangeable:
uv run local-code-index idx . # full name
uv run lci idx . # short aliasThe CLI entry point is registered automatically via
[project.scripts]inpyproject.tomlduring theuv pip install -e .step from the Quick Start. Run it throughuvso the project's virtualenv is used:
uv run lci --helpAvailable Commands
Command | Description | Example |
| Index a repository folder (defaults to current directory) |
|
| Remove a repository from the index |
|
| List all currently indexed repositories |
|
| Semantic search across all indexed codebases |
|
| Semantic search within one indexed repository |
|
Each command accepts --help for full flag details (token budgets, limit-per-repo, file filters, etc.), for example:
uv run local-code-index find --help
# Usage: local-code-index find [-h] [--limit-per-repo N] [--token-budget N] [-v] query ...Concise vs. Verbose Output (-v / --verbose)
By default, find and search print a concise response ā one line per hit showing [repo] file (line) type distance | Preview: <first 80 chars> ā so you can quickly locate where something lives without scrolling through full source blocks.
Pass -v (or --verbose) to switch to the verbose response, which prints the complete source block for each hit (the original behavior):
# concise (default): one scannable line per match
uv run local-code-index find "JwtAuthGuard validation logic"
# verbose: include the full code block for every match
uv run local-code-index find -v "JwtAuthGuard validation logic"
uv run local-code-index search . "webhook signature" --verboseTip: If you prefer even shorter invocations, you can either (a) use the built-in
lcialias (uv run lci idx .), (b) dropuv runentirely and calllci ...directly after activating the project virtualenv, or (c) create an alias of your own (alias idx="uv --directory /path/to/local-code-index run lci"). The CLI itself needs no special shell setup.
š„ Practical Examples & Usage
Workflow 1: From the Integrated Terminal
Simply step into any repository folder on your system and index it with a single command ā no shell profile edits needed:
cd ~/dev/projects/my-nest-api
uv run local-code-index idx .
# Output: Success: Codebase 'my-nest-api' indexed completely (420 nodes with basic vector direct lookup).If you want to run a quick query across everything you've saved:
uv run local-code-index find "JwtAuthGuard validation logic"Workflow 2: Conversational Prompts via AI Agents (Cursor / Cline)
Once the server status bar is green inside your editor panel, the underlying LLM gains access to your protocol tools natively. You can now use fluid language to ask complex architectural questions.
š” Example 1: Isolating Features in a Specific Repo
User: "Check my
payment-servicerepo. Do we have a specific method handling webhook signatures?"AI Interaction: The model implicitly runs
search_codebaseagainst your project, targeting keyword vectors. It receives the whole relevant function block and returns a complete synthesis of your webhook logic.
š” Example 2: Cross-Repository Code Archeology
User: "I need to implement a data-stream handler in this repo. Scan all our indexed codebases to see if we've written a reuseable utility class for this elsewhere so I can copy its pattern."
AI Interaction: The model triggers
search_all_codebasesto search across your microservices. It highlights a match found under ashared-java-utilsdirectory, complete with its accompanying Javadocs.
š” Example 3: Auditing Active Deployments
User: "List our indexed repositories and tell me which ones are running on our old database schema patterns."
AI Interaction: The model runs
list_indexed_repositoriesto find all your project paths and walks through them to identify outdated code conventions.
š Security & Performance Exclusions
To safeguard memory, protect confidential keys, and maximize performance, files that match the following attributes are omitted from processing:
Directories Skipped:
.git,.github,node_modules,dist,build,.vscode,target,bin,vendor,__pycache__, virtualenvs (venv/.venv/env), cache dirs (.mypy_cache,.ruff_cache,.pytest_cache,.tox,.eggs,.cache),site-packages, and any*.egg-infodirectory.Extensions Tracked:
.js,.jsx,.ts,.tsx,.java.Blacklisted Configuration Profiles:
package-lock.json,.env,.env.local,tsconfig.json.Size Caps: Any source code file larger than 2MB is automatically skipped to prevent execution bottlenecks.
š” How the Safeguard Works
Context Window Safety: The default token budget for single-repo searches is set to
4000tokens, and global cross-repo searches are capped at6000tokens.Dynamic Truncation: When the model requests information, the server maps out the top search matches. If a large block threatens to exceed the remaining budget, the engine stops adding data and appends a clean warning flag (
ā ļø WARNING: Global cross-repo results truncated...).Model Autonomy: Because these limits are exposed as parameterized inputs (
token_budget: int = 6000), sophisticated AI agents like Cursor or Cline can choose to scale the budget up or down depending on their specific model limits.
Available Tools
5 toolsdelete_repositoryB
Removes a repository completely from LanceDB using either its system directory path OR its explicit database table name.
| Name | Required | Description | Default |
|---|---|---|---|
| repo_path_or_table | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It mentions 'removes completely' implying destruction, but lacks details on irreversibility, confirmation, permissions, error conditions, or side effects.
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 clear sentence, front-loaded with the action and identifier options. No wasted words, though it could be slightly expanded without losing conciseness.
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 presence of an output schema, the description need not explain return values. However, it lacks behavioral context for a destructive operation, such as success indication or irreversible effects. Adequate but incomplete.
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 coverage is 0%, so the description compensates by explaining that the single parameter can be either a system directory path or a database table name, adding meaning beyond the schema's string type.
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 removes a repository completely from LanceDB, specifying two identification methods (system directory path or database table name). It distinguishes from sibling tools like index_repository and search_codebase.
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 vs alternatives, nor any prerequisites or warnings. The description only states what the tool does without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
index_repositoryC
Indexes a repository folder with verbose terminal debugging logs.
| Name | Required | Description | Default |
|---|---|---|---|
| repo_path | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. It mentions 'verbose terminal debugging logs' which hints at output verbosity, but does not clarify if indexing is destructive, idempotent, or requires network access. Important traits like side effects or safety constraints are omitted.
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 sentence, highly concise and front-loaded with the main action. However, it is so brief that it sacrifices necessary details, which slightly reduces effectiveness. It earns full marks for structure but not for 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 simplicity (one parameter, no nested objects) and the existence of an output schema, the description should still cover parameter semantics and usage context. The lack of parameter explanation and usage guidance makes it incomplete for an agent to use reliably.
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% description coverage (no parameter descriptions), yet the tool description does not compensate by explaining the 'repo_path' parameter. The agent is left without any guidance on what constitutes a valid path (e.g., absolute vs relative, local vs remote), making correct invocation difficult.
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 'indexes' and the resource 'repository folder', making the primary action obvious. It includes an extra behavioral detail about verbose logs. However, it does not explicitly differentiate from sibling tools like 'search_codebase' or 'list_indexed_repositories' beyond the verb, but the verb itself is distinct enough.
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 'search_codebase' or 'delete_repository'. It does not mention prerequisites, expected context, or conditions under which indexing is appropriate, leaving the agent to infer usage without support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_indexed_repositoriesA
Lists all active codebase repositories registered inside the system database.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It notes the list includes 'active' repositories, which is useful, but lacks details on authentication, rate limits, or behavior when the database is empty.
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 sentence with 9 words, conveying the essential purpose without any extraneous information. It is optimally concise.
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 has no parameters and an output schema exists (which presumably documents return values), the description is nearly complete. It could optionally hint at what the output contains (e.g., repository IDs, names) but is sufficient for a simple listing tool.
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 zero parameters, so there are no parameter semantics to add. The description does not need to compensate for schema gaps. The 100% schema coverage and absence of parameters justify a baseline of 4.
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 lists all active codebase repositories in the system database, using a specific verb and resource. It naturally distinguishes from sibling tools (delete, index, search) which perform different operations.
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 explicit usage guidance is provided. The purpose is implied but there is no mention of when to use this tool versus search_codebase or search_all_codebases for finding specific repositories.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_all_codebasesC
Executes a high-speed cross-query across all indexed tables simultaneously with a global token limit.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| token_budget | No | ||
| limit_per_repo | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Mentions 'high-speed' and 'global token limit' but provides no information on idempotency, side effects, authentication needs, or error behavior. With no annotations, the description fails to disclose critical behavioral traits.
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?
Extremely concise at one sentence, no filler words. However, it lacks structure such as bullet points or distinct sections that could improve readability for an AI agent.
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 three parameters with no descriptions and an output schema present, the description only provides a high-level operation name. It omits use-case context, parameter semantics, and result expectations, leaving significant gaps.
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 0% and the description does not define any parameter. 'token_budget' and 'limit_per_repo' are left unexplained despite being critical for correct invocation.
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?
Uses specific verb 'executes a cross-query' and resource 'all indexed tables', clearly distinguishing it from sibling 'search_codebase' that likely targets a single repository. The scope is unmistakable.
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 explicit guidance on when to use this tool versus alternatives like 'search_codebase'. The description implies it covers all indexed tables, but lacks when-not-to-use or context for selecting among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_codebaseB
Semantically queries code blocks from an isolated indexed codebase path with a token ceiling safeguard.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | ||
| repo_path | Yes | ||
| file_filter | No | ||
| token_budget | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It mentions a token ceiling safeguard, hinting at a limit, but does not detail behavior when the limit is reached or confirm read-only nature. The semantic query aspect is stated but not elaborated.
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 sentence that is concise and front-loaded with the core action. It earns its place without unnecessary words, though more structure could improve 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?
Although an output schema exists, the description lacks context on prerequisites (e.g., the codebase must be indexed), the meaning of 'isolated', and parameter interplay. With 5 parameters, the description is too brief to be fully informative.
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 0%, so the description needs to compensate. However, it adds no parameter-specific details beyond the high-level purpose. The parameters repo_path, query, limit, file_filter, token_budget are not explained in 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 uses specific verbs and resources, stating it performs semantic queries on code blocks from an isolated indexed codebase path with a token ceiling safeguard. This clearly differentiates it from sibling tools like search_all_codebases, which searches across all codebases.
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 implies usage for a single isolated codebase path, but does not explicitly state when to use this tool versus alternatives like search_all_codebases. No when-not-to-use guidance is provided.
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.
5 tool updates
v0.1.0- First observed
delete_repository - First observed
index_repository - First observed
list_indexed_repositories - First observed
search_all_codebases - First observed
search_codebase
TDQS
Each tool has a distinct purpose: adding, listing, searching (single or all), and deleting repositories. No overlapping functionality.
Tools follow a verb_noun pattern with snake_case, though 'list_indexed_repositories' slightly deviates from the simpler 'repository' stem used by others.
With 5 tools, the set is well-scoped for a code indexing server, covering essential operations without redundancy.
Core CRUD operations are present (index, list, search, delete), but an explicit update or re-index tool is missing, though index can be re-run.
Maintenance
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
An MCP server that gives your AI access to the source code and docs of all public github repos
Capability registry for the agentic economy. Semantic search over verified MCP server listings.
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
Related MCP Servers
- FlicenseAqualityCmaintenanceA local MCP server that provides semantic code search for Python codebases using tree-sitter for chunking and LanceDB for vector storage. It enables natural language queries to find relevant code snippets based on meaning rather than just text matching.33-
- AlicenseAqualityAmaintenanceLocal MCP server for semantic code search using Tree-sitter AST parsing, local embeddings, and hybrid search; enables indexing and querying codebases entirely offline.5MIT
- AlicenseNot gradedqualityDmaintenanceAST-aware codebase indexing with semantic search, exposed as an MCP server. Enables semantic search and file context retrieval across your codebase using natural language queries.141MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that indexes your codebase using tree-sitter AST parsing and gives AI tools instant access to structural intelligence like dependency graphs, call trees, and dead code detection from a local SQLite database.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/ciulla/local-code-index'
If you have feedback or need assistance with the MCP directory API, please join our Discord server