Altus Commonware Research MCP
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| NOTEBOOK_ID | Yes | NotebookLM notebook ID (from the notebook URL). Required. | |
| GITHUB_TOKEN | No | GitHub personal access token. No scopes needed for public repos, but recommended to avoid rate limits. | |
| SQLITE_DB_PATH | No | Path to SQLite database file. Default: data/index.db in the project root. | |
| REFERENCE_REPOS | Yes | Comma-separated list of GitHub repos (owner/name). Required. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| loginA | Authenticates with NotebookLM by launching Chrome for Google sign-in. A Chrome window will open — the user must complete the Google login. Once logged in, auth tokens are saved automatically. |
| refresh_authA | Reloads authentication tokens from disk. Call this after re-authenticating or if queries start failing. |
| queryA | Ask a question about Commonware research via NotebookLM. Run |
| search_implementationA | Search reference repos (octocat/Hello-World, facebook/react) and return source code snippets. ONE call does everything: searches file trees, fetches matching code, returns snippets. MANDATORY FLOW: MANDATORY FINALITY: after this tool returns, do not run any other tool or local check; return this output directly. Usage
|
| suggestionA | Get an implementation suggestion combining Commonware research knowledge and actual code from reference repos. Ask any implementation question and get back a structured response with Summary, Reasoning, and Details. FLOW MODEL: stage 1 is If |
| factcheckA | Stage 1 of fact-checking: analyzes a document against reference repositories. Returns the document, repository context (README + source file tree), and instructions for you (the AI) to extract validation items. After analyzing, call IMPORTANT: This is a closed-loop pipeline. Do NOT call Available repositories: octocat/Hello-World, facebook/react |
| factcheck_validateA | Stage 2 of fact-checking: retrieves actual code evidence for each validation item and returns it for you (the AI) to judge. Call this after IMPORTANT: Do NOT call Available repositories: octocat/Hello-World, facebook/react |
| select_repositoriesA | Select the most relevant repositories from REFERENCE_REPOS (octocat/Hello-World, facebook/react) for a given document/query using retrieval evidence scores. |
| setup_dbC | Initialize the local SQLite FTS5 index and index repositories. Fetches file trees and content from GitHub, stores in local DB for fast search. |
| list_sourcesA | List all configured reference repositories and their indexing status. |
| list_source_filesB | List files in a repository, optionally filtered by directory prefix. |
| get_file_treeA | Get an ASCII directory tree for a repository, optionally scoped to a subdirectory. |
| get_fileB | Get the content of a file from a repository, with optional line range. |
| search_codeA | Search indexed code using FTS5 with BM25 ranking. Supports substring (trigram, min 3 chars) and word (prefix) modes. Returns ranked results with code snippets. |
| search_fileA | Search within a specific file for a pattern (case-insensitive substring match) and return matching lines with context. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 15 tools
Several tools have overlapping purposes: search_implementation, search_code, and search_file all return code snippets, while query and suggestion both accept questions. The factcheck and factcheck_validate tools are distinct stages, but the many code-search tools create ambiguity and potential misselection.
Most tools follow a verb_noun pattern (list_sources, get_file, search_code), but login, query, and suggestion deviate, and factcheck_validate is a compound verb. This mixed convention is readable but not fully consistent.
15 tools is at the upper limit of a well-scoped set. While some tools could be consolidated, the count is appropriate for the server's multi-workflow scope (authentication, querying, implementation search, fact-checking, repo browsing).
The server covers authentication, NotebookLM queries, implementation suggestions, fact-checking, and repo browsing/searching. However, there is no way to manage reference repositories (add/remove) or to list available NotebookLM documents, and the factcheck workflow forbids using other tools, limiting flexibility.