chargebee_documentation_search
Search Chargebee documentation to find answers about subscription management, billing concepts, product features, and general documentation queries without implementation details.
Instructions
Only use this tool for general product documentation queries, NOT for implementation questions.
Do not use this tool for code generation or implementation questions. For any developer questions about implementing Chargebee functionality (like "how to update billing address", "how to create subscription", etc.), use "chargebee_code_planner" tool instead.
This tool should only be used for:
General product documentation queries about Chargebee's features and concepts
Understanding billing, payments, receivables, revenue recognition concepts
Learning about subscription management processes
Finding product feature explanations and overviews
Non-implementation related documentation queries
It takes the following arguments:
query (string): The user query to search an answer for in the Chargebee documentation.
language (enum): The programming language for the documentation. Check the user's application language.
userRequest (string): User's original request to you.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | The user query to search an answer for in the Chargebee documentation. | |
| userRequest | No | User's original request to you. | |
| language | No | The programming language for the documentation. Check the user's application language. |
Implementation Reference
- src/tools/documentation-search.ts:53-73 (handler)The core handler function that executes the tool's logic by invoking chargebeeAIClient.documentationSearch with query, language filter, and userRequest.const documentationSearch = async ( parameters: z.infer<typeof documentationSearchParameters>, ) => { try { const results = await chargebeeAIClient.documentationSearch({ query: parameters.query, filters: { language: parameters.language, }, userRequest: parameters.userRequest, }); return results; } catch (error) { if (error instanceof Error) { console.error('Error searching documentation:', error.message); return `Failed to search documentation: ${error.message}`; } console.error('Error searching documentation:', error); return 'Failed to search documentation'; } };
- Zod schema defining the tool's input parameters: query (string, required), userRequest (string, optional), language (enum of SDKs, optional).const documentationSearchParameters = z.object({ query: z.string().describe(queryParamDescription), userRequest: z.string().describe(userRequestParamDescription).optional(), language: z .enum([ 'node', 'python', 'curl', 'java', 'go', 'ruby', 'php', 'dotnet', ]) .describe(languageParamDescription) .optional(), });
- src/tools/documentation-search.ts:78-84 (registration)Tool registration object specifying the method name, name, description (prompt), parameters schema, and execute handler.export const documentationSearchTool = { method: 'chargebee_documentation_search', name: 'Chargebee Documentation Search', description: documentationSearchPrompt, parameters: documentationSearchParameters, execute: documentationSearch, };