list_databases
List all public databases exposed by this MCP server with their metadata (entry counts, last updated, descriptions).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
List all public databases exposed by this MCP server with their metadata (entry counts, last updated, descriptions).
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly indicates a read-only listing operation with no side effects, which is inherent in the verb 'List'. However, it does not address potential pagination, response size limits, or what happens if no databases exist, leaving some behavioral aspects undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence that fully captures the tool's function and output without any redundant wording. Every element earns its place, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (no parameters, no output schema), the description sufficiently covers what the tool does and returns. It lists the exact metadata fields, which provides adequate context for an agent to decide when to call it, though it could optionally mention the response format or pagination for extra completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the input schema is empty, so there are no parameter semantics to explain. The baseline for 0 params is 4, and the description adds value by describing the output metadata (entry counts, last updated, descriptions), which gives the agent context for what to expect without needing parameter details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'List' with a clear resource 'all public databases exposed by this MCP server' and explicitly mentions the metadata returned, making the tool's purpose unambiguous. It distinguishes from sibling tools like get_da or search_* which focus on individual entities or searches, while this tool provides a comprehensive catalog of available databases.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies the tool is for discovery of all public databases, providing context for when to use it (e.g., to see what data sources are available) without needing to consider alternatives. While it does not explicitly name alternative tools or when not to use them, the scope 'all public databases' effectively separates it from the entity-specific siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Every tool has a clearly distinct purpose: get_* retrieves specific records, search_* queries databases, top_* provides rankings, and list_* enumerates metadata. The overlap between search_cjp and search_cjp_documents is explicitly resolved in their descriptions.
All tool names follow a consistent verb_noun pattern with underscore separators: get_, search_, list_, top_. The pluralization of search_das vs get_da matches the function, and search_capost is a clear abbreviation.
15 tools is well within the ideal range for a public-records server covering four entity types. Each tool earns its place, covering retrieval, search, ranking, and metadata listing without unnecessary bloat.
The surface covers the full read-only workflow: discover databases, search records, retrieve full details, rank by severity, and navigate site pages. No obvious gaps exist for the stated purpose of exposing California justice system records.