Skip to main content

MCP server for querying testigo-recall knowledge bases

Project description

testigo-recall-mcp

MCP server that exposes a pre-scanned codebase knowledge base to AI agents. Instead of reading source files directly, agents query pre-extracted facts about code behavior, design decisions, and assumptions — saving time and tokens.

Works with Claude Code, Cursor, Windsurf, and any MCP-compatible client.

Installation

pip install testigo-recall-mcp

Configuration

GitHub Releases (default)

Auto-downloads knowledge base .db files from a GitHub release:

{
  "mcpServers": {
    "testigo-recall": {
      "command": "testigo-recall-mcp",
      "env": {
        "TESTIGO_RECALL_REPO": "owner/repo",
        "GITHUB_TOKEN": "ghp_..."
      }
    }
  }
}

Azure Blob Storage

Downloads .db files from an Azure Blob Storage container. Auth uses your existing az login session — no secrets needed:

{
  "mcpServers": {
    "testigo-recall": {
      "command": "testigo-recall-mcp",
      "env": {
        "TESTIGO_RECALL_AZURE_URL": "https://account.blob.core.windows.net/container"
      }
    }
  }
}

Auth priority: SAS token > az login bearer token > public container.

Local files

Point directly at local .db files (useful for development/demos):

{
  "mcpServers": {
    "testigo-recall": {
      "command": "testigo-recall-mcp",
      "env": {
        "TESTIGO_RECALL_DB_PATH": "/path/to/knowledge.db"
      }
    }
  }
}

All backends can be combined — DBs are merged at startup.

Environment Variables

Variable Description
TESTIGO_RECALL_REPO GitHub repo(s), comma-separated (e.g. owner/repo). Auto-downloads from knowledge-base release tag.
TESTIGO_RECALL_AZURE_URL Azure Blob Storage container URL(s), comma-separated.
TESTIGO_RECALL_AZURE_SAS Optional SAS token for Azure (read+list). Not needed if az login is active.
TESTIGO_RECALL_DB_PATH Local .db file path(s), comma-separated.
GITHUB_TOKEN GitHub token for private repos. Public repos work without auth.

Tools

The server exposes 6 tools to AI agents:

search_codebase

Full-text search across the knowledge base. Returns facts ranked by relevance. Supports semicolon-separated multi-query batching (e.g. "auth login; session JWT; middleware").

  • query — search keywords
  • category — optional filter: behavior, design, or assumption
  • min_confidence — confidence threshold 0.0-1.0
  • limit — max results (default: 20)
  • repo_name — optional filter to scope to one repository

get_module_facts

Deep dive into a specific module. Use search_codebase first to discover module IDs.

  • module_id — e.g. SCAN:backend/app/api or PR-123

get_recent_changes

Most recently extracted facts across the codebase.

  • category — optional filter
  • limit — number of results (default: 10)

get_component_impact

Blast radius analysis — shows what depends on a component and what it depends on.

  • component_name — file path or service name (e.g. api_service.py)

list_modules

Lists all scanned modules in the knowledge base. Call without arguments for a compact repo summary.

  • repo_name — optional repository filter

get_repo_dependencies

Cross-repo dependency graph from package manifests (go.mod, package.json).

  • repo_name — optional filter
  • directionoutgoing, incoming, or both

How It Works

The knowledge base contains pre-extracted facts organized by category:

  • behavior — what the code does (triggers, outcomes)
  • design — how it's built (decisions, patterns, trade-offs)
  • assumption — what it expects (invariants, prerequisites)

Facts come from two sources:

  • SCAN facts (SCAN:module/path) — current state of a module, refreshed automatically
  • PR facts (PR-123) — what a specific PR changed, preserved as history

The server uses SQLite with FTS5 full-text search for fast, relevance-ranked queries.

Multi-repo support

All backends support multiple repositories in a single MCP server instance. Each repo gets its own .db file, stored in a shared location (GitHub release, Azure container, or local directory). The server downloads all .db files and merges them into a unified knowledge base at startup.

knowledge-base/
  ├── frontend-app.db
  ├── backend-api.db
  ├── shared-lib.db
  └── infrastructure.db

Use list_modules() to see all available repos, and repo_name parameter on search_codebase to scope queries.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

testigo_recall_mcp-0.5.2.tar.gz (26.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

testigo_recall_mcp-0.5.2-py3-none-any.whl (20.2 kB view details)

Uploaded Python 3

File details

Details for the file testigo_recall_mcp-0.5.2.tar.gz.

File metadata

  • Download URL: testigo_recall_mcp-0.5.2.tar.gz
  • Upload date:
  • Size: 26.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for testigo_recall_mcp-0.5.2.tar.gz
Algorithm Hash digest
SHA256 97c5300880fa957ba7f975795b59dc94c1f0f8c2d51f8975ac3969027e85d116
MD5 95385d8918e6c48fb41bc50a797c3841
BLAKE2b-256 c2ffbb2f274cee39ca8508fac76c11f74a680ee655a0ce6602b860286a795a49

See more details on using hashes here.

File details

Details for the file testigo_recall_mcp-0.5.2-py3-none-any.whl.

File metadata

File hashes

Hashes for testigo_recall_mcp-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fd054bde0ffb2df07f36339ee61fed11bc5d6ad558b459646210cd9f4a07ad51
MD5 d8d8e40b073bdb9443ab745324a12fb6
BLAKE2b-256 2396a9ef3a7675ac9505f2a1f7eff30f2437d78c950282bddaeecc2351821035

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page