Skip to main content
Glama

chargebee_code_planner

Generate integration workflows and code snippets for implementing Chargebee functionality in your application. Specify your goal and programming language to get accurate implementation guidance.

Instructions

Use this tool for any Chargebee integration questions or implementation needs.

Always use this tool to get the accurate integration code guide for Chargebee. This is the main tool developers need when asking about implementing Chargebee functionality (like "how to update billing address", "how to create subscription", "how to handle webhooks", etc.).

This tool will take in parameters about integrating with Chargebee in their application and generates an integration workflow along with the code snippets.

It takes the following arguments:

  • goal (string): What is the user's goal?

  • language (enum): Programming language the code to be generated in. Check the user's application language.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
goalYesWhat is the user's goal?
languageNoProgramming language the code to be generated in. Check the user's application language.

Implementation Reference

  • The execute handler function for the 'chargebee_code_planner' tool. It calls chargebeeAIClient.getCodePlanner with the provided goal and optional language, returning the result or an error message.
    const generateCodePlanner = async ( parameters: z.infer<typeof codePlannerParameters>, ) => { try { const results = await chargebeeAIClient.getCodePlanner({ query: parameters.goal, language: parameters.language, }); return results; } catch (error) { if (error instanceof Error) { console.error('Error generating code planner:', error.message); return `Failed to generate code planner: ${error.message}`; } console.error('Error generating code planner:', error); return 'Failed to generate code planner'; } };
  • Zod schema defining the input parameters for the tool: 'goal' (required string) and 'language' (optional enum of programming languages).
    const codePlannerParameters = z.object({ goal: z.string().describe(goalParamDescription), language: z .enum(['node', 'python', 'curl', 'java', 'go', 'ruby', 'php', 'dotnet']) .describe(languageParamDescription) .optional(), });
  • The tool configuration object defining the method name, name, description, parameters schema, and execute handler.
    export const codePlannerTool = { method: 'chargebee_code_planner', name: 'Chargebee Code Planner', description: codePlannerPrompt, parameters: codePlannerParameters, execute: generateCodePlanner, };
  • src/tools/index.ts:1-8 (registration)
    Imports the codePlannerTool and includes it in the exported 'tools' array used by the MCP server.
    import { Tool } from '../types.js'; import { documentationSearchTool } from './documentation-search.js'; import { codePlannerTool } from './code-planner.js'; export const tools: Tool[] = [ codePlannerTool, documentationSearchTool, ];
  • src/mcp.ts:43-75 (registration)
    Registers all tools from the 'tools' array on the MCP server, using each tool's method, description, parameters, and execute function wrapped in error handling.
    private registerTools() { tools.forEach((tool) => { this.tool( tool.method, tool.description, tool.parameters.shape, async (arg: any) => { try { const result = await tool.execute(arg, this); return { content: [ { type: 'text' as const, text: JSON.stringify(result, null, 2), }, ], }; } catch (error) { return { content: [ { type: 'text' as const, text: `Error: ${error instanceof Error ? error.message : String(error)}`, }, ], isError: true, }; } }, ); }); }

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/ampcome-mcps/chargebee-mcp'

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