listTools
Discover and access all development and debugging tools available on the Expo MCP Server for managing Expo-based React Native applications.
Instructions
List all available tools in this MCP server
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "listTools"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/index.ts:63-82 (handler)The handler function for the 'listTools' tool. It accesses the internal '_tools' property of the FastMCP server instance to retrieve the list of registered tools, formats them as a markdown-style list in a text content block, and returns it. Includes error handling with logging.
execute: async (_, { log }) => { try { // Get all the tools (this is a workaround since we don't have direct access to the tools list) const tools = Object.keys((server as any)["_tools"] || {}); return { content: [ { type: "text", text: `Available tools:\n${tools .map((tool) => `- ${tool}`) .join("\n")}`, }, ], }; } catch (error: any) { log.error(`Error listing tools: ${error.message}`); throw new Error(`Failed to list tools: ${error.message}`); } }, - src/index.ts:59-83 (registration)Registration of the 'listTools' tool using server.addTool(). Includes the tool name, description, empty parameters schema (no input required), and points to the inline handler function.
server.addTool({ name: "listTools", description: "List all available tools in this MCP server", parameters: z.object({}), execute: async (_, { log }) => { try { // Get all the tools (this is a workaround since we don't have direct access to the tools list) const tools = Object.keys((server as any)["_tools"] || {}); return { content: [ { type: "text", text: `Available tools:\n${tools .map((tool) => `- ${tool}`) .join("\n")}`, }, ], }; } catch (error: any) { log.error(`Error listing tools: ${error.message}`); throw new Error(`Failed to list tools: ${error.message}`); } }, }); - src/index.ts:62-62 (schema)The Zod schema for listTools input parameters, which is an empty object indicating no input parameters are required.
parameters: z.object({}),