Skip to main content
Glama
clarenous
by clarenous

get_flow

Retrieve a specific workflow by its ID to access its description, execution steps, and input schema for method calls.

Instructions

"Use this tool to retrieve a specific workflow by its ID.

Workflow is sequence of steps that are executed in order to get some result. Flow comes with description, steps and input schema of all methods to call.

You can call this tool once you have a flowId which usually you can get from: user directly OR using get-tools method."

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
flowIdYesThe ID of the workflow to retrieve.

Implementation Reference

  • The execute method implements the core logic of the 'get_flow' tool, fetching flow data from the veyraxClient API using the provided flowId and returning it formatted as JSON text.
    async execute({ flowId }: z.infer<typeof this.schema>) {
      try {
        const { data } = await veyraxClient.get(`/flow/get-flow/${flowId}`);
    
        return {
          content: [
            {
              type: "text" as const,
              text: JSON.stringify(data, null, 2),
            },
          ],
        };
      } catch (error) {
        throw error;
      }
    }
  • Zod schema defining the input shape for the tool, requiring a single 'flowId' string parameter.
    schema = z.object({
      flowId: z.string().describe("The ID of the workflow to retrieve."),
    });
  • src/index.ts:15-15 (registration)
    Registers the GetFlowTool instance with the MCP server.
    new GetFlowTool().register(server);
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the tool as a retrieval operation ('retrieve'), which implies it's likely read-only, and mentions what information is returned ('description, steps and input schema'). However, it doesn't address important behavioral aspects like error conditions (what happens with invalid flowId), authentication requirements, rate limits, or whether the operation is idempotent. The description adds some value but leaves significant gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is reasonably concise with three sentences that each serve a purpose: stating the tool's function, explaining what a workflow is, and providing usage prerequisites. It's front-loaded with the core purpose. However, the second sentence explaining workflows could be considered slightly verbose for a tool description, and there's some redundancy in mentioning 'get-tools method' when 'get_tools' is a sibling tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 1 parameter with 100% schema coverage but no annotations and no output schema, the description is moderately complete. It explains the purpose and provides usage context, but lacks important behavioral details about error handling, authentication, and what the return structure looks like. For a retrieval tool with no output schema, the description should ideally provide more information about the return format beyond 'description, steps and input schema'.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the single parameter 'flowId' well-documented in the schema. The description doesn't add any meaningful parameter information beyond what's already in the schema. It mentions 'flowId' in the context of where to obtain it, but this is usage guidance rather than parameter semantics. The baseline of 3 is appropriate given the high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'retrieve a specific workflow by its ID' with the resource being 'workflow' and the verb being 'retrieve'. It provides additional context about what a workflow is ('sequence of steps...'), which helps understanding. However, it doesn't explicitly differentiate from sibling tools like 'get_tools' or 'tool_call' beyond mentioning 'get-tools method' as a source for flowId.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use this tool: 'once you have a flowId' and mentions two sources for obtaining flowId ('user directly OR using get-tools method'). This gives practical guidance on prerequisites. However, it doesn't explicitly state when NOT to use this tool or provide direct alternatives among the sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/clarenous/veyrax-mcp'

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