Tools
Reference for every tool exposed by the Temso MCP server.
Most tools are read-only. A set of write tools can also modify your project's configuration — these require an API key with the mcp:write scope (see Write tools below). Your assistant picks the right tool from your question — this reference tells you what's available and how each tool behaves.
Project selection
Every tool except list-projects takes an optional projectId:
| Parameter | Type | Description |
|---|---|---|
projectId | string (optional) | Project to query. Can be omitted when your connection has access to exactly one project; otherwise the assistant must call list-projects first and pass an ID. |
list-projects
Lists the projects your connection can access, with their IDs and names. The assistant calls this first when it doesn't know which project ID to use. No parameters.
Analytics tools
All analytics tools share these parameters on top of projectId:
| Parameter | Type | Description |
|---|---|---|
days | number (optional) | Days to look back from today. Default: 14. Ignored when startDate and endDate are set. |
startDate | string (optional) | Start date in ISO format (YYYY-MM-DD). Use together with endDate. |
endDate | string (optional) | End date in ISO format (YYYY-MM-DD). Use together with startDate. |
languages | string[] (optional) | Filter by language codes, e.g. ["en", "de"]. |
countries | string[] (optional) | Filter by country codes, e.g. ["US", "DE"]. |
personaIds | string[] (optional) | Filter by persona IDs. |
offeringIds | string[] (optional) | Filter by offering IDs. |
promptIds | string[] (optional) | Filter by prompt IDs. |
models | string[] (optional) | Filter by AI model names. |
Tools marked paged additionally accept:
| Parameter | Type | Description |
|---|---|---|
limit | number (optional) | Max results to return. |
sortBy | string (optional) | Field to sort by. |
sortOrder | asc | desc (optional) | Sort direction. |
fetch-brand-rankings
Fetches AI visibility brand rankings within a time range — visibility, source presence, mentions, responses, and share of voice per brand, for your own brand and competitors. Paged, default limit 20.
fetch-share-of-voice
Fetches the share of voice breakdown showing your brand versus competitors within a time range.
fetch-performance-breakdown
Fetches your brand's AI visibility performance grouped by a dimension.
| Parameter | Type | Description |
|---|---|---|
dimension | language | country | offering | persona | models (required) | Dimension to group results by. |
fetch-prompt-analytics
Fetches per-prompt performance analytics for your own brand within a time range. Paused prompts are excluded.
fetch-brand-perception
Fetches brand perception analytics — how brands are described in AI answers (e.g. reliable, innovative, affordable).
| Parameter | Type | Description |
|---|---|---|
mode | total | byBrand (optional) | total for your own brand only, byBrand for a comparison across all brands. Default: byBrand. |
fetch-sentiment
Fetches own-brand sentiment analytics from Perception > Sentiment, including positive, neutral, and negative shares plus a breakdown by model or another dimension.
| Parameter | Type | Description |
|---|---|---|
dimension | language | country | offering | persona | models (optional) | Dimension to group the sentiment breakdown by. Default: models. |
fetch-sentiment-sources
Fetches source pages for a selected sentiment bucket from Perception > Sentiment > Sources. Paged, default limit 20.
| Parameter | Type | Description |
|---|---|---|
sentiment | positive | neutral | negative (required) | Sentiment bucket to fetch sources for. |
fetch-perception-sources
Fetches source pages for a selected brand-perception attribute from Perception > Attributes > Sources. Use fetch-brand-perception first to discover available attribute names. Paged, default limit 20.
| Parameter | Type | Description |
|---|---|---|
attribute | string (required) | Perception attribute, e.g. reliable, innovative, or affordable. |
fetch-top-domains
Fetches the top cited source domains with presence, brand mentions, category, and model coverage within a time range. Paged, default limit 20, sorted by response count descending.
fetch-source-urls
Fetches individual source URLs with citation analytics within a time range. Paged, default limit 50.
| Parameter | Type | Description |
|---|---|---|
domainContains | string (optional) | Only return URLs whose domain contains this text. |
urlContains | string (optional) | Only return URLs containing this text. |
minCited | number (optional) | Minimum cited percentage, from 0 to 100. |
fetch-cited-pages
Alias of fetch-source-urls for cited-page/source-URL analytics — same parameters. Paged, default limit 50.
Configuration tools
These take only projectId and return the project's setup:
fetch-brand-details
Fetches your own brand's details.
fetch-competitors
Fetches the competitors tracked in the project.
fetch-prompts
Fetches the prompts configured for monitoring.
fetch-personas
Fetches the configured personas.
fetch-offerings
Fetches the configured offerings/products.
fetch-monitor-settings
Fetches the monitoring settings: run frequency and which AI models are tracked.
Action planner tools
fetch-campaigns
Fetches campaigns for a project.
| Parameter | Type | Description |
|---|---|---|
status | open | completed | dismissed (optional) | Filter by campaign status. |
fetch-actions
Fetches actions with optional filters.
| Parameter | Type | Description |
|---|---|---|
campaignId | string (optional) | Filter by campaign ID. |
status | open | in_progress | completed | dismissed (optional) | Filter by action status. |
priority | high | medium | low (optional) | Filter by priority label. |
page | number (optional) | Page number, 1-indexed. |
limit | number (optional) | Page size, max 100. |
sortBy | createdAt | updatedAt | priority (optional) | Sort field. |
sortOrder | asc | desc (optional) | Sort order. |
Content pieces
Read content pieces and their per-step outputs. These tools are designed for progressive disclosure — list pieces first, inspect one piece's steps, then read a single step's output — so your assistant pulls only what it needs instead of loading whole documents.
fetch-content-pieces
Lists content pieces as compact one-line summaries (id, status, title, format, current step). No step bodies are returned.
| Parameter | Type | Description |
|---|---|---|
status | created | processing | waiting_for_input | revising | ready | published | failed | archived (optional) | Filter by piece status. |
formatKey | string (optional) | Filter by content format key (e.g. blog_guide, linkedin_thought_leadership). |
fetch-content-piece
Returns one piece's header and a per-step table (label, kind, human-input policy, current revision, quality/brandkit/factcheck outcomes, size). Metadata only — no step bodies.
| Parameter | Type | Description |
|---|---|---|
pieceId | string (required) | The content piece id, from fetch-content-pieces. |
read-content-piece-step
Reads a single step's output, rendered to markdown (doc/markdown steps) or pretty JSON (json steps) and length-capped. Image steps have no readable artifact.
| Parameter | Type | Description |
|---|---|---|
pieceId | string (required) | The content piece id, from fetch-content-pieces. |
step | string (required) | The step id, from fetch-content-piece. |
Write tools
These tools modify your project's configuration and mirror the write capabilities of the in-app Project Manager Agent. They apply changes immediately — your AI assistant is the approval surface, so review proposed changes before confirming.
Write tools require an API key with the mcp:write scope. Keys with only
mcp:read (and legacy keys created before scopes existed) cannot see or call
these tools. See Setup for how to grant scopes.
Each write tool takes the optional projectId parameter described above. The bulk-apply-* tools accept an operations array so you can create, update, and delete several items in a single call:
| Parameter | Type | Description |
|---|---|---|
operations | array (required) | One or more { op, data } entries. op is create, update, or delete. create takes the entity fields; update and delete take data._id plus any fields to change. |
Each call returns a summary with per-operation results (succeeded, failed, total, and a results array), so a failure on one item does not abort the rest of the batch.
update-brand-details
Updates your own brand's details. All fields optional: name, description, website, aliases (string[]), domainAliases (string[]).
bulk-apply-competitors
Creates / updates / deletes tracked competitors. Create fields: name, website (URL), optional description. Update fields: _id plus any of name, website, description.
bulk-apply-offerings
Creates / updates / deletes offerings (products/services). Create fields: name, optional description. Update fields: _id plus any of name, description.
bulk-apply-topics
Creates / updates / deletes topics. Create fields: name, optional description. Update fields: _id plus any of name, description.
bulk-apply-personas
Creates / updates / deletes personas. Create fields: name, description. Update fields: _id plus any of name, description.
bulk-apply-prompt-tags
Creates / updates / deletes prompt tags. Create fields: name, color. Update fields: _id plus any of name, color.
bulk-apply-prompts
Creates / updates / deletes (archives) prompts. Create fields: text, language, country, and optional tagIds, personaId, offeringId, topicId. Update fields: _id plus any of language, type, isPaused, tagIds, personaId, offeringId, topicId (pass null to clear a link). A delete operation archives the prompt.