Skip to main content
Glama
Unilytics MCP Server

Unilytics MCP Server

Official

list_projects

Read-only

Retrieve the Unilytics projects you own or that are shared with you, including project IDs, names, domains, and roles, with cursor-based paging for complete results.

Instructions

List the user's Unilytics projects (their clients): the ones they own and the ones shared with them.

Returns each project's project_id, name, domain and the user's role. Other project tools take
the project_id. `total` counts every project; `next_cursor` (when set) is passed back as
`cursor` for the next page. An account with no project gets an empty list and a `note` saying so.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "list_projects"
  }
}

Input Schema

NameRequiredDescriptionDefault
cursorNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.1.0
    • removedInput schema / properties / config
      Removed value: -{
      -  "default": null,
      -  "title": "config",
      -  "type": "string"
      -}
    • addedInput schema / properties / cursor
      Added value: +{
      +  "default": null,
      +  "title": "Cursor",
      +  "type": "string"
      +}
  2. First observedv1.0.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false, openWorldHint=false), but the description adds real behavioral detail: it enumerates returned fields, explains that total counts every project, describes the next_cursor → cursor paging handoff, and specifies the edge case of an empty account returning a list plus a note. It omits error/failure behavior and any limits, which keeps it below a 5.

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?

It is front-loaded with purpose and scope, then moves to return shape, routing, and pagination with no filler sentences. Sentence two mixes return values with the routing hint, a minor structural wrinkle, but every sentence earns its place.

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?

There is no output schema, so the description must describe the return values, and it does so precisely (project_id, name, domain, role, total, next_cursor, note). Combined with the annotation-covered safety profile and the pagination explanation, nothing an agent needs to call this correctly 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 single parameter has 0% schema description coverage, so the description must carry the meaning, and it does: it explains that next_cursor is passed back as cursor for the next page, which the bare schema cannot convey. The only gap is that it does not state that omitting cursor starts at page one, though that is strongly implied.

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?

Names a specific verb and resource ('List the user's Unilytics projects') and immediately scopes it to owned plus shared projects, using the '(their clients)' clarification so an agent knows what a project means in this product. It also distinguishes itself from siblings by stating that other project tools take the project_id.

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?

The line 'Other project tools take the project_id' makes the intended role as an ID-discovery step clear, implicitly telling the agent to call this before project-scoped tools. It stops short of an explicit 'call this first' instruction or any when-not-to-use guidance, so it is clear but not fully prescriptive.

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

Deploy Server

Other Tools