List every project the signed-in user can open. Other tools need a projectSlug from this list.
Call this first in a new chat. Cache the slug for the rest of the session. Do not invent slugs from the company name.
Why you need it
Agents often know a brand name (“Acme”) but not the tracker slug (acme-4k2p). MCP is scoped to projects the user can already open in the UI. This tool is how the agent discovers those slugs, domains, and roles.
Use it when:
- The chat just started and you have no slug yet.
- A later tool said the project was not found.
- You need to pick among several workspaces (agency accounts).
Skip it only if this session already returned a slug you confirmed with the user.
Capabilities
- List projects the user owns or is a member of.
- Return
slugfor every other tool. - Show
role(OWNERorMEMBER) so the agent does not assume admin. - Hint next steps in
usagewhen the list is empty.
Parameters
None. The input object is empty.
| Name | Type | Required | Description |
|---|---|---|---|
| (none) | (none) | (none) | No arguments. Auth is the OAuth session. |
Input
{}
Output
{
"count": 2,
"dataStatus": "ok",
"projects": [
{
"domain": "acme.com",
"name": "Acme",
"role": "OWNER",
"slug": "acme"
},
{
"domain": "other.io",
"name": "Other",
"role": "MEMBER",
"slug": "other"
}
],
"usage": "Pass `projectSlug` from this list to `aiseo_list_sources`, `aiseo_list_prompts`, `aiseo_list_snippets`, or `aiseo_list_competitors`.",
"userId": "user_01H…"
}
| Field | Meaning |
|---|---|
dataStatus | ok or no_data |
count |