trigger_report
Queue an AI-visibility report for a project. Costs 0.3 credits per keyword per engine, returns a job ID instantly.
Instructions
Queue a new AI-visibility report for a project. Cost: 0.3 credits × keywords × engines. Returns immediately with a job ID (202). Poll get_report or list_reports to check status.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| projectId | Yes |
Implementation Reference
- src/tools/reports.js:14-14 (handler)The handler function for trigger_report - makes a POST request to /projects/{projectId}/reports/trigger using the api client.
handler: async ({ projectId }) => api.post(`/projects/${projectId}/reports/trigger`), - src/tools/reports.js:9-13 (schema)Input schema for trigger_report - expects an object with a required 'projectId' string property.
inputSchema: { type: 'object', properties: { projectId: { type: 'string' } }, required: ['projectId'], }, - src/index.js:31-41 (registration)Registration of reportTools (which includes trigger_report) into the ALL_TOOLS array, then indexed by name in a Map for dispatch.
const ALL_TOOLS = [ ...projectTools, ...keywordTools, ...reportTools, ...quickTestTools, ...keywordResearchTools, ...competitorTools, ...opportunityTools, ]; const toolByName = new Map(ALL_TOOLS.map((t) => [t.name, t])); - src/client.js:78-83 (helper)The api helper object providing post() used by the trigger_report handler to make the HTTP request.
export const api = { get: (path, query) => request('GET', path, { query }), post: (path, body) => request('POST', path, { body }), patch: (path, body) => request('PATCH', path, { body }), delete: (path) => request('DELETE', path), };