Skip to main content
Glama

get-pages

Retrieve Shopify store pages by specifying search criteria and limit results for targeted data extraction and management.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
searchTitleNo

Implementation Reference

  • The main handler function 'execute' that performs the GraphQL query to fetch pages from Shopify and processes the response.
    execute: async (input: GetPagesInput) => { try { const { searchTitle, limit } = input; const query = gql`${GET_PAGES_QUERY}`; const variables = { first: limit }; const data = await shopifyClient.request(query, variables) as { pages: { edges: Array<{ node: { id: string; title: string; handle: string; bodySummary: string; body: string; createdAt: string; updatedAt: string; publishedAt: string; }; }>; pageInfo: { hasNextPage: boolean; hasPreviousPage: boolean; startCursor: string; endCursor: string; }; }; }; return { pages: data.pages.edges.map(edge => ({ id: edge.node.id, title: edge.node.title, handle: edge.node.handle, bodySummary: edge.node.bodySummary, body: edge.node.body, createdAt: edge.node.createdAt, updatedAt: edge.node.updatedAt, publishedAt: edge.node.publishedAt })) }; } catch (error) { console.error("Error fetching pages:", error); throw new Error( `Failed to fetch pages: ${ error instanceof Error ? error.message : String(error) }` ); } }
  • Zod schema defining the input parameters for the get-pages tool.
    const GetPagesInputSchema = z.object({ searchTitle: z.string().optional().describe("Optional search term to filter pages by title"), limit: z.number().default(10).describe("Maximum number of pages to return (default: 10)") });
  • src/index.ts:157-169 (registration)
    MCP server registration of the 'get-pages' tool, wrapping the execute handler and defining inline input schema.
    server.tool( "get-pages", { searchTitle: z.string().optional(), limit: z.number().default(10) }, async (args) => { const result = await getPages.execute(args); return { content: [{ type: "text", text: JSON.stringify(result) }] }; } );
  • src/index.ts:74-74 (registration)
    Initialization of the getPages tool with the Shopify GraphQL client.
    getPages.initialize(shopifyClient);
  • src/index.ts:16-16 (registration)
    Import of the getPages tool module.
    import { getPages } from "./tools/getPages.js";

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/luckyfarnon/Shopify-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server