Skip to main content
Glama

Server Info

server_info

Checks version, update availability, auth status, storage warnings, active profile, and visible MCP/provider capabilities for NotebookLM MCP.

Instructions

Get version, auth status, and conservative MCP capability visibility.

AI assistants: If update_available is True, inform the user that a new version is available and suggest updating with the provided command.

auth_status is the result of an AuthHealthChecker probe. The checker runs a multi-probe strategy (homepage fetch + API fallback) with 30-second TTL caching and mtime-based bypass on auth-file changes. The reported value may therefore be up to 30 seconds old, and an external nlm login is picked up within one check cycle without waiting for the TTL to expire.

auth_status meanings:

  • "configured" — homepage (or API fallback) check passed; credentials are good. Cached credentials may be reported as configured for up to 30 seconds.

  • "not_configured" — no credentials are stored (first-time setup).

  • "stale" — credentials are known-bad (expired or past the 7-day heuristic). Operations will fail; ask the user to run nlm login to refresh.

  • "unverified" — the check could not be completed (network error, timeout, non-200 response). Cached credentials may still work for actual API calls, so do not assume the user needs to re-auth.

  • "error" — unexpected exception inside the check itself.

Returns: dict with version info: - version: Current installed version - latest_version: Latest version on PyPI (or None if check failed) - update_available: True if a newer version is available - auth_status: configured | stale | unverified | not_configured | error - storage_warning: Short warning if conflict/pending op exists (or None) - update_command: Command to run to update - mcp_capabilities: Built-in tool groups visible in this server process - provider_capabilities: Explicitly unprobed provider/account capabilities

  • active_profile: Which saved account is in use and why (session switch or saved default)

  • profiles: Saved accounts with email, storage mode (plain/protected) and any storage problems. Metadata only; never opens the OS keystore.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.9.5
  2. Removedv0.8.9
  3. First observedv0.6.13

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden and does so well: it discloses the 30s TTL caching, mtime bypass, that external `nlm login` is picked up within one cycle, the meaning of each auth_status value, that storage_warning reflects a conflict/pending op, and that profile metadata never opens the OS keystore.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with a one-line summary followed by clearly labeled sections (agent guidance, auth_status meanings, returns). It is longer than typical, and the Returns block largely restates the output schema, which is mild redundancy, but the auth_status semantics earn their space.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool is a read-only status probe with an output schema already present, the description supplies exactly the interpretive context the schema cannot: what each auth_status value implies for the user and how stale the reported value may be. Nothing needed to interpret or act on the result is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so the baseline is 4. The description's field-level detail applies to return values rather than inputs, and inputs require no semantic explanation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: returns version, auth status, and MCP/provider capability visibility. This is clearly distinguishable from every sibling (notebook/chat/collection/studio tools), so an agent can route to it without inspecting the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit downstream behavior for the agent (inform the user and suggest update_command when update_available is True) and tells the agent not to assume re-auth on 'unverified'. It stops short of explicitly contrasting with the sibling refresh_auth or stating when to prefer one over the other.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.