# searchcode (remote · api.searchcode.com)

Code intelligence for LLMs. Analyze, search, and retrieve code from any public git repository.

- Trust score: 60/100 (medium)
- Change this week: +3
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- remote · `api.searchcode.com`: 60/100 (this document), [markdown](https://verifymcp.io/servers/com-searchcode-mcp/v1-mcp.md), [page](https://verifymcp.io/servers/com-searchcode-mcp/v1-mcp)

## Channel facts

- Endpoint: `https://api.searchcode.com/v1/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Endpoint Security**: 57/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not fully verified: no authorisation is required to call this server, and 6 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 57/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 2267 tokens (~377/item across 6 items; 6 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Capabilities**: 40/100
  - Spec-recency check failed: implements MCP spec 2025-03-26; the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add --transport http com-searchcode-mcp https://api.searchcode.com/v1/mcp
```

### Codex

```toml
[mcp_servers.com-searchcode-mcp]
url = "https://api.searchcode.com/v1/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-searchcode-mcp": {
      "type": "remote",
      "url": "https://api.searchcode.com/v1/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-searchcode-mcp --url https://api.searchcode.com/v1/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-searchcode-mcp:
    url: "https://api.searchcode.com/v1/mcp"
```

### Other

```json
{
  "mcpServers": {
    "com-searchcode-mcp": {
      "type": "http",
      "url": "https://api.searchcode.com/v1/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 60, +1)

No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-31 (score 59, +1)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 58, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-29 (score 58, +1)

No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-27 (score 57, +1)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-26 (score 56)

First indexed and scored.

## MCP tools (6)

### `code_analyze` (~361 tokens)

Instant repo overview — languages, complexity, file count, tech stack, code quality findings, and credential scanning. Use as your first call to understand any remote public codebase. Supports language filtering and path scoping (for large monorepos, analyze a subdirectory instead of the full repo). When analysing multiple repositories, call in parallel rather than sequentially. Dependency/build directories excluded by default.

Input parameters:

- `detail_level` (string): Controls response verbosity. summary returns top 20 across all languages; full returns top 20 per language. Use summary for portfolio reviews, hiring assessments, and high-level overviews. Use full f…
- `include_all_dirs` (boolean): Include dependency/build/cache directories that are excluded by default (vendor, node_modules, third_party, target, build, dist, Pods, generated, etc.). Set to true if you need to analyze generated/v…
- `language` (string): Filter results to a specific language (e.g. "Java", "Go", "Python").
- `path` (string): Subdirectory to scope analysis to (e.g. 'src', 'clang/lib'). Only files under this path are walked and analyzed — use this for large monorepos where full analysis is too slow or when the user's quest…
- `repository` (string, required): Git URL of a public remote repository
- `scan_test_files` (boolean): Include test files in code quality and credential scan results. Test files are excluded by default to reduce false positives (e.g. test credit card numbers, mock credentials). Set to true if you need…

### `code_search` (~487 tokens)

Fast code search across any public git repo. Returns file paths, line numbers, and code snippets with context. Supports regex, boolean queries, fuzzy matching, and structural filters (declarations, usages, strings, comments). Dependency/build directories excluded by default.

Input parameters:

- `case_sensitive` (boolean): Whether to match case-sensitively.
- `code_filter` (string): Structural filter to narrow matches to specific code regions. only-declarations and only-usages use heuristic patterns and support 30+ languages (Go, Python, JS/TS, Rust, Java, C/C++, C#, Ruby, PHP,…
- `context_lines` (integer): Lines of context before and after each match.
- `include_all_dirs` (boolean): Include dependency/build/cache directories that are excluded by default (vendor, node_modules, third_party, target, build, dist, Pods, generated, etc.). Set to true if you need to search generated/ve…
- `max_matches_per_file` (integer): Maximum matches to show per file (cap: 50). Keeps responses compact for files with many hits. The response includes matches_in_file (total) so you know if more exist.
- `max_results` (integer): Maximum number of file results to return (cap: 100).
- `offset` (integer): Skip this many results before returning. Use for paging.
- `query` (string, required): Search query. Keywords are ANDed — use OR for exploratory multi-term searches (e.g. auth OR login OR session). Prefer single precise terms over multi-keyword phrases. Supports OR, NOT, "phrases", reg…
- `repository` (string, required): Git URL of a public remote repository
- `snippet_mode` (string): auto (ranked relevance), grep (every matching line), or summary (1 best match per file, no context — very compact). Use auto when exploring or discovering where something is used across a codebase (e…

### `code_get_file` (~403 tokens)

Get code from a remote public git repository — either a specific function/class by name, a line range, or a full file. PREFERRED WORKFLOW: When search results or findings have already identified a specific function, method, or class, use symbol_name to extract just that declaration. This avoids fetching entire files and keeps context focused. Only fetch full files when you need a broad understanding of a file you haven't seen before. For supported languages (Go, Python, TypeScript, JavaScript, Java, C, C++, C#, Kotlin, Swift, Rust) the response includes a symbols list of declarations with line ranges. This is not a first-call tool — use code_analyze or code_search first to identify targets, then extract precisely what you need.

Input parameters:

- `end_line` (integer): Last line to return (inclusive). If omitted, returns to end of file. Cannot combine with symbol_name.
- `include_adjacent_symbols` (boolean): When true and symbol_name is set, includes structurally related declarations (nearby siblings) alongside the target symbol.
- `max_lines` (integer): Lines to return (max: 2000). When reading an unfamiliar file for orientation, set this to 2000. When you already know which function or class you need (from search or findings results), prefer symbol…
- `path` (string, required): File path relative to repository root
- `repository` (string, required): Git URL of a public remote repository
- `start_line` (integer): First line to return (1-based). Cannot combine with symbol_name.
- `symbol_name` (string): PREFERRED for targeted retrieval. Name of a function/method/class to extract — returns only that declaration. Use this when search results or findings have pointed you to a specific symbol, instead o…

### `code_file_tree` (~378 tokens)

List files and directories in any public git repo. Supports fuzzy file search (query parameter), language/path filtering, and depth control. Combine query with path_filter to search within a directory subset. Use to explore project layout, find files by name, or browse specific directories. Results capped at 1000 files; response includes total_files, files_shown, and truncated fields. Use language or path_filter to narrow large repos. Dependency/build directories excluded by default.

Input parameters:

- `include_all_dirs` (boolean): Include dependency/build/cache directories that are excluded by default (vendor, node_modules, third_party, target, build, dist, Pods, generated, etc.). Set to true if you need to see generated/vendo…
- `include_stats` (boolean): If true, include line count and file size for each file.
- `language` (string): Filter to only show files of this language (e.g. "Go", "Java").
- `max_depth` (integer): Maximum directory depth to return. If omitted, returns full tree.
- `max_results` (integer): Max fuzzy matches to return (default 20, max 100). Only used with query.
- `path_filter` (string): Filter to restrict tree to matching paths. Supports both glob patterns (e.g. 'pkg/**', 'src/**/*.go') and token-style filters (e.g. 'pkg/api .go'). Glob patterns are auto-converted to token filters.…
- `query` (string): Fuzzy search query for finding files by approximate name. Returns ranked matches instead of tree. Examples: 'main.go', 'auth handler'. Can be combined with path_filter to search within a directory su…
- `repository` (string, required): Git URL of a public remote repository

### `code_get_files` (~131 tokens)

Get contents of multiple files from a remote public git repository in a single call. Reduces round-trips when you need to read several related files. Max 10 files per batch, 5000 total lines budget across all files. Each file supports optional line ranges. Failed files return per-file errors without blocking other files.

Input parameters:

- `max_lines` (integer): Per-file safety cap on lines returned (cap: 2000).
- `paths` (array, required): List of files to read. Each entry has a path and optional line range.
- `repository` (string, required): Git URL of a public remote repository

### `code_get_findings` (~222 tokens)

Get detailed code quality findings from a remote public git repository. Returns rule IDs, line numbers, severity, category, descriptions, and source snippets. Supports filtering by file path, severity (error, warning, info), and category (security, deprecated, safety, correctness, maintainability, accessibility, modernization, performance, concurrency). Use after code_analyze to drill into specific findings. Shares the same analysis cache — no duplicate work if analyze already ran.

Input parameters:

- `category` (string): Filter findings by category.
- `max_results` (integer): Maximum number of findings to return (cap: 200).
- `offset` (integer): Skip this many findings before returning. Use for paging.
- `path` (string): Filter findings to files matching this path prefix (e.g. "pkg/api/" or "src/main.go").
- `repository` (string, required): Git URL of a public remote repository
- `scan_test_files` (boolean): Include findings from test files. By default test files are excluded.
- `severity` (string): Filter findings by severity level.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-searchcode-mcp/v1-mcp#diagnostics

## Score history

- 2026-08-03: 60
- 2026-08-02: 60
- 2026-08-01: 59
- 2026-07-31: 59
- 2026-07-30: 58
- 2026-07-29: 58
- 2026-07-28: 57
- 2026-07-27: 57
- 2026-07-26: 56

## Links

- Remote endpoint: https://api.searchcode.com/v1/mcp
- Changelog RSS feed: https://verifymcp.io/servers/com-searchcode-mcp/v1-mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-searchcode-mcp/v1-mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/com-searchcode-mcp/v1-mcp
