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.1.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.1-py3-none-any.whl (20.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: testigo_recall_mcp-0.5.1.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.1.tar.gz
Algorithm Hash digest
SHA256 f7ae16eca0c40eebf0de6ed7c3099113a157acc616efcfa3a4bee8c23c7e400d
MD5 82c88ff8820f26ac1093eb7994c317ee
BLAKE2b-256 465753387b6bd217223c2be146b9d56665aa4ebb8eadaa4438fac13ce9446ead

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for testigo_recall_mcp-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8d1282ee20a9a23b882e80cd42b0c9749ff00747b8b8d1e91d5fc5e68ad524d4
MD5 415f2f37e9a783547d8950807b494390
BLAKE2b-256 8781a0447094b05ee4ab9bea6206bad56969395ccbe76930921e6b2f95725c2e

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