Local codebase search for agents: hybrid keyword/semantic search, locate, expand, related code.
MCPpedia last refreshed this data
io.github.CloudCorpRecords/repofind is an MCP server that local codebase search for agents: hybrid keyword/semantic search, locate, expand, related code. Its tool list has not been published yet over stdio, requires no API key, and scores 60/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"repofind": {
"args": [
"-y",
"@reneturcios/repofind",
"mcp"
],
"command": "npx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Local codebase search for agents: hybrid keyword/semantic search, locate, expand, related code.
Run this in your terminal to verify the server starts. Then let us know if it worked - your result helps other developers.
npx -y '@reneturcios/repofind' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
Checked @reneturcios/repofind against OSV.dev.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in search
Open-source web scraper for AI agents with scrape, crawl, and map tools
MCP server for advanced web search using Tavily
MCP server for enterprise local codebase indexing, semantic search, and code dependency graphs.
The official MCP server implementation for the Perplexity API Platform
MCP Security Weekly
Get CVE alerts and security updates for io.github.CloudCorpRecords/repofind and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
Finding code in a repository you have never opened
usually starts with a guess: a word to grep, a filename
to try. repofind replaces the guessing with an index.
Point it at a local directory and it walks the tree —
skipping .git, node_modules, files over a megabyte,
and anything outside a source-and-text extension
allowlist — splits each file into consecutive 40-line
chunks, and ranks those chunks against your question.
One call returns the five best places to look, each with
its file, line range, the chunk text, and a score.
Ranking is hybrid. A pinned BM25 scorer (k1 = 1.2,
b = 0.75) over the chunk texts always runs. When a
TAKARA_API_KEY is present in the environment, an
embeddings step joins in: the query and the chunks are
embedded through an OpenAI-compatible endpoint and each
chunk's final score becomes bm25 + 10 * max(0, cosine). Without a key — or if the embedder fails —
the result says so plainly in its notes and ranks by
keyword alone. By default only the best hit per file is
kept, so five hits mean five different files to open.
The other tools cover the rest of the exploration loop.
locate finds an exact substring — an env var, a
symbol, an error code — and reports it as a count, a
file list, bare locations, or full lines. expand
takes a hit you already have and returns its chunk plus
the neighbouring chunks in the same file. find_related
takes the same anchor and ranks chunks from every other
file against it. read_benchmark rolls up saved
benchmark-mode queries into a token-savings total. The
original product's auth tool is not part of this
rebuild: its interactive device login and AWS-profile
validation cannot be reproduced from the published
spec, so the surface here is five of the six tools.
npx @reneturcios/repofind search '{"query": "retry backoff logic", "repo": "."}'
npx @reneturcios/repofind locate '{"literal": "DATABASE_URL", "mode": "locations"}'
npx @reneturcios/repofind expand '{"file_path": "src/client.ts", "anchor_line": 83}'
npx @reneturcios/repofind find_related '{"file_path": "src/client.ts", "anchor_line": 83}'
npx @reneturcios/repofind read_benchmark '{}'
npx @reneturcios/repofind --version
Each tool subcommand takes the tool's arguments as one
JSON string and prints the result as JSON. Exit codes:
0 on success, 1 on a runtime error, 2 on a usage
error.
Environment variables: TAKARA_API_KEY enables the
semantic half; MIRU_OPENAI_BASE_URL (default
https://infer.takara.ai/v1) and
MIRU_OPENAI_EMBEDDING_MODEL (default ds1-miru-int8)
configure the embeddings endpoint;
MIRU_MAX_INDEX_FILES caps the index (default 10000);
MIRU_BENCHMARK_HISTORY_PATH overrides the benchmark
history location.
npx -y @reneturcios/repofind mcp
MCP client config:
{
"mcpServers": {
"repofind": {
"command": "npx",
"args": ["-y", "@reneturcios/repofind", "mcp"]
}
}
}
search — Hybrid semantic + keyword search over an
indexed local codebase. Default for code exploration
— one call per question.
query (string, required) — natural language or
code queryrepo (string, optional) — local directory to
index; defaults to the working directoryinclude / exclude (string arrays, optional) —
gitignore-style glob patterns against repo-relative
pathsdedupe_by_file (boolean, default true) — keep
the best hit per fileReturns {hits, ranking, notes} with at most 5
hits; each hit is {file_path, absolute_path, start_line, end_line, anchor_line, truncated, snippet, score} with the score rounded to 4
decimals.
locate — Find exact substrings (env vars, symbols,
error codes) in an indexed local codebase.
literal (string, required); mode one of
count, files, locations, lines (default
lines); limit caps locations/lines;
ignore_case (default false); repo, include,
exclude as in `sear