get_keyword_research
Retrieve a specific keyword research run by its ID to analyze AI visibility data and insights.
Instructions
Get a single keyword-research run by ID.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| researchId | Yes |
Implementation Reference
- src/tools/keywordResearch.js:38-47 (handler)Tool definition and handler for 'get_keyword_research'. The handler calls api.get('/keyword-research/${researchId}') to fetch a single keyword-research run by its ID.
{ name: 'get_keyword_research', description: 'Get a single keyword-research run by ID.', inputSchema: { type: 'object', properties: { researchId: { type: 'string' } }, required: ['researchId'], }, handler: async ({ researchId }) => api.get(`/keyword-research/${researchId}`), }, - src/tools/keywordResearch.js:41-45 (schema)Input schema for 'get_keyword_research'. Expects an object with a required 'researchId' (string) property.
inputSchema: { type: 'object', properties: { researchId: { type: 'string' } }, required: ['researchId'], }, - src/index.js:27-36 (registration)Imports and spreads keywordResearchTools into ALL_TOOLS, registering 'get_keyword_research' (along with the other keyword research tools) with the MCP server.
import { keywordResearchTools } from './tools/keywordResearch.js'; import { competitorTools } from './tools/competitors.js'; import { opportunityTools } from './tools/opportunities.js'; const ALL_TOOLS = [ ...projectTools, ...keywordTools, ...reportTools, ...quickTestTools, ...keywordResearchTools, - src/client.js:78-83 (helper)The api.get() method used by the handler. Delegates to the generic request() function to make a GET request to the SurfRank public API.
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), };