grepai-mcp-tools

Original🇺🇸 English
Translated

Reference for all GrepAI MCP tools. Use this skill to understand available MCP tools and their parameters.

12installs
Added on

NPX Install

npx skill4agent add yoanbernabeu/grepai-skills grepai-mcp-tools

Tags

Translated version includes tags in frontmatter

GrepAI MCP Tools Reference

This skill provides a complete reference for all tools available through GrepAI's MCP server.

When to Use This Skill

  • Understanding available MCP tools
  • Learning tool parameters and options
  • Integrating GrepAI with AI assistants
  • Debugging MCP tool usage

Starting the MCP Server

bash
grepai mcp-serve
The server exposes tools via the Model Context Protocol.

Available Tools

1. grepai_search

Semantic code search using embeddings.

Parameters

ParameterTypeRequiredDefaultDescription
query
stringYes-Search query describing what to find
limit
numberNo10Maximum results to return
compact
booleanNofalseReturn compact output (no content)
format
stringNo"json"Output format: "json" or "toon" (v0.26.0+)

Example Request

json
{
  "tool": "grepai_search",
  "parameters": {
    "query": "user authentication middleware",
    "limit": 5,
    "compact": true,
    "format": "toon"
  }
}

Response (Compact)

json
{
  "q": "user authentication middleware",
  "r": [
    {"s": 0.92, "f": "src/auth/middleware.go", "l": "15-45"},
    {"s": 0.85, "f": "src/auth/jwt.go", "l": "23-55"},
    {"s": 0.78, "f": "src/handlers/auth.go", "l": "10-40"}
  ],
  "t": 3
}

Response (Full)

json
{
  "query": "user authentication middleware",
  "results": [
    {
      "score": 0.92,
      "file": "src/auth/middleware.go",
      "start_line": 15,
      "end_line": 45,
      "content": "func AuthMiddleware() gin.HandlerFunc {\n    ..."
    }
  ],
  "total": 3
}

2. grepai_trace_callers

Find all functions that call a specified symbol.

Parameters

ParameterTypeRequiredDefaultDescription
symbol
stringYes-Function/method name to trace
compact
booleanNofalseReturn compact output (no context)
format
stringNo"json"Output format: "json" or "toon" (v0.26.0+)

Example Request

json
{
  "tool": "grepai_trace_callers",
  "parameters": {
    "symbol": "Login",
    "compact": true
  }
}

Response (Compact)

json
{
  "q": "Login",
  "m": "callers",
  "c": 3,
  "r": [
    {"f": "handlers/auth.go", "l": 42, "fn": "HandleAuth"},
    {"f": "handlers/auth_test.go", "l": 15, "fn": "TestLoginSuccess"},
    {"f": "cmd/main.go", "l": 88, "fn": "RunCLI"}
  ]
}

Response (Full)

json
{
  "query": "Login",
  "mode": "callers",
  "count": 3,
  "results": [
    {
      "file": "handlers/auth.go",
      "line": 42,
      "caller": "HandleAuth",
      "context": "user.Login(ctx, credentials)"
    }
  ]
}

3. grepai_trace_callees

Find all functions called by a specified symbol.

Parameters

ParameterTypeRequiredDefaultDescription
symbol
stringYes-Function/method name to trace
compact
booleanNofalseReturn compact output (no context)
format
stringNo"json"Output format: "json" or "toon" (v0.26.0+)

Example Request

json
{
  "tool": "grepai_trace_callees",
  "parameters": {
    "symbol": "ProcessOrder",
    "compact": true
  }
}

Response (Compact)

json
{
  "q": "ProcessOrder",
  "m": "callees",
  "c": 4,
  "r": [
    {"f": "services/order.go", "l": 45, "fn": "validateOrder"},
    {"f": "services/order.go", "l": 48, "fn": "calculateTotal"},
    {"f": "services/order.go", "l": 51, "fn": "applyDiscount"},
    {"f": "services/order.go", "l": 55, "fn": "sendConfirmation"}
  ]
}

4. grepai_trace_graph

Build a complete call graph starting from a symbol.

Parameters

ParameterTypeRequiredDefaultDescription
symbol
stringYes-Root function for the graph
depth
numberNo2Maximum recursion depth
compact
booleanNofalseReturn compact JSON format
format
stringNo"json"Output format: "json" or "toon" (v0.26.0+)

Example Request

json
{
  "tool": "grepai_trace_graph",
  "parameters": {
    "symbol": "main",
    "depth": 3,
    "compact": true
  }
}

Response (Compact)

json
{
  "q": "main",
  "d": 3,
  "r": {
    "n": "main",
    "c": [
      {
        "n": "initialize",
        "c": [
          {"n": "loadConfig"},
          {"n": "connectDB"}
        ]
      },
      {
        "n": "startServer",
        "c": [
          {"n": "registerRoutes"}
        ]
      }
    ]
  },
  "s": {"nodes": 6, "depth": 3}
}

Response (Full)

json
{
  "query": "main",
  "mode": "graph",
  "depth": 3,
  "root": {
    "name": "main",
    "file": "cmd/main.go",
    "line": 10,
    "children": [
      {
        "name": "initialize",
        "file": "cmd/main.go",
        "line": 15,
        "children": [...]
      }
    ]
  },
  "stats": {
    "nodes": 6,
    "max_depth": 3
  }
}

5. grepai_index_status

Check the health and status of the code index.

Parameters

ParameterTypeRequiredDefaultDescription
verbose
booleanNofalseInclude detailed information
format
stringNo"json"Output format: "json" or "toon" (v0.26.0+)

Example Request

json
{
  "tool": "grepai_index_status",
  "parameters": {
    "verbose": true
  }
}

Response

json
{
  "status": "healthy",
  "project": "/path/to/project",
  "embedder": {
    "provider": "ollama",
    "model": "nomic-embed-text",
    "status": "connected"
  },
  "store": {
    "backend": "gob",
    "location": ".grepai/index.gob"
  },
  "index": {
    "files": 245,
    "chunks": 1234,
    "last_updated": "2025-01-28T10:30:00Z"
  },
  "daemon": {
    "running": true,
    "pid": 12345
  }
}

Compact Format Reference

When
compact: true
, responses use abbreviated keys:
Full KeyCompact KeyDescription
query
q
Search query or symbol
results
r
Results array
total
t
Total count
count
c
Count
score
s
Similarity score
file
f
File path
line
l
Line number(s)
mode
m
Trace mode
depth
d
Graph depth
name
n
Node name
children
c
Child nodes
stats
s
Statistics
function
fn
Function name

Token Efficiency

Compact mode reduces tokens significantly:
Response TypeFullCompactSavings
Search (5 results)~800~15081%
Trace callers (10)~600~12080%
Trace graph (depth 3)~1200~25079%

Error Responses

Index Not Found

json
{
  "error": "Index not found. Run 'grepai watch' first.",
  "code": "INDEX_NOT_FOUND"
}

Embedder Connection Failed

json
{
  "error": "Cannot connect to embedding provider. Is Ollama running?",
  "code": "EMBEDDER_UNAVAILABLE"
}

Symbol Not Found

json
{
  "error": "Symbol 'FunctionName' not found in index.",
  "code": "SYMBOL_NOT_FOUND"
}

Invalid Parameters

json
{
  "error": "Parameter 'query' is required.",
  "code": "INVALID_PARAMETERS"
}

Best Practices for AI Integration

  1. Use compact mode: Reduces token usage by ~80%
  2. Limit results: Request only what you need
  3. Check status first: Use
    grepai_index_status
    before searches
  4. Handle errors: Check for error responses
  5. Combine tools: Search + trace for full understanding

MCP Protocol Details

Request Format

json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "grepai_search",
    "arguments": {
      "query": "authentication",
      "limit": 5,
      "compact": true
    }
  }
}

Response Format

json
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\"q\":\"authentication\",\"r\":[...],\"t\":5}"
      }
    ]
  }
}

Output Format

MCP tools reference summary:
📚 GrepAI MCP Tools Reference

Tools available:

1. grepai_search
   - Semantic code search
   - Params: query*, limit, compact

2. grepai_trace_callers
   - Find function callers
   - Params: symbol*, compact

3. grepai_trace_callees
   - Find function callees
   - Params: symbol*, compact

4. grepai_trace_graph
   - Build call graph
   - Params: symbol*, depth, compact

5. grepai_index_status
   - Check index health
   - Params: verbose

* = required parameter

Compact mode: ~80% token reduction