Skip to main content
Glama

actors-mcp-server

Official
by apify
MIT License
7,198
465
  • Apple
key_value_store_collection.ts2.54 kB
import { z } from 'zod'; import zodToJsonSchema from 'zod-to-json-schema'; import { ApifyClient } from '../apify-client.js'; import { HelperTools } from '../const.js'; import type { InternalTool, ToolEntry } from '../types.js'; import { ajv } from '../utils/ajv.js'; const getUserKeyValueStoresListArgs = z.object({ offset: z.number() .describe('Number of array elements that should be skipped at the start. The default is 0.') .default(0), limit: z.number() .max(10) .describe('Maximum number of array elements to return. The default value (and maximum) is 10.') .default(10), desc: z.boolean() .describe('If true or 1 then the stores are sorted by the createdAt field in descending order. Default: sorted in ascending order.') .default(false), unnamed: z.boolean() .describe('If true or 1 then all the stores are returned. By default, only named key-value stores are returned.') .default(false), }); /** * https://docs.apify.com/api/v2/key-value-stores-get */ export const getUserKeyValueStoresList: ToolEntry = { type: 'internal', tool: { name: HelperTools.KEY_VALUE_STORE_LIST_GET, actorFullName: HelperTools.KEY_VALUE_STORE_LIST_GET, description: `List key-value stores owned by the authenticated user. Actor runs automatically produce unnamed stores (set unnamed=true to include them). Users can also create named stores. The results will include basic info for each store, sorted by createdAt (ascending by default). Use limit, offset, and desc to paginate and sort. USAGE: - Use when you need to browse available key-value stores (named or unnamed). USAGE EXAMPLES: - user_input: List my last 10 key-value stores (newest first) - user_input: List unnamed key-value stores`, inputSchema: zodToJsonSchema(getUserKeyValueStoresListArgs), ajvValidate: ajv.compile(zodToJsonSchema(getUserKeyValueStoresListArgs)), call: async (toolArgs) => { const { args, apifyToken } = toolArgs; const parsed = getUserKeyValueStoresListArgs.parse(args); const client = new ApifyClient({ token: apifyToken }); const stores = await client.keyValueStores().list({ limit: parsed.limit, offset: parsed.offset, desc: parsed.desc, unnamed: parsed.unnamed, }); return { content: [{ type: 'text', text: JSON.stringify(stores) }] }; }, } as InternalTool, };

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/apify/actors-mcp-server'

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