Implement organization member support in the TypeScript MCP server to align with the GraphQL backend changes from support-organization-members. Changes to src/mcp_server.ts: - Update create_member tool definition: * Add memberType enum field (INDIVIDUAL, ORGANIZATION) * Add companyName field for organizations * Remove firstName from required fields * Update description to explain conditional requirements - Update update_member tool definition: * Add memberType and companyName fields * Update description to mention type transitions - Update all GraphQL queries and mutations: * Add memberType and companyName to listMembers query * Add memberType and companyName to getMember query * Add memberType and companyName to createMember mutation * Add memberType and companyName to updateMember mutation - Update formatMember function: * Check memberType to determine formatting approach * Show "Type: Individual" or "Type: Organization" * For individuals: display "Name: firstName lastName" * For organizations: display "Company: companyName" * For organizations with contact: display "Contact Person: firstName lastName" * Maintain backward compatibility (defaults to INDIVIDUAL if missing) Testing: - All 11 implementation tasks completed - Created test script test_organization_members.py - Verified individual member creation with validation - Verified organization member creation with companyName - Verified organization with contact person - Verified member listing with mixed types - Verified GraphQL schema introspection includes MemberType enum - Verified validation: INDIVIDUAL requires firstName, ORGANIZATION requires companyName All tests passed successfully. MCP server now fully supports both individual and organization members with proper formatting and validation. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1.1 KiB
1.1 KiB
Tasks: Update MCP Server for Organization Members
- Update
create_membertool definition with memberType and companyName fields - Update
update_membertool definition with memberType and companyName fields - Add memberType and companyName to listMembers GraphQL query
- Add memberType and companyName to getMember GraphQL query
- Add memberType and companyName to createMember mutation response
- Add memberType and companyName to updateMember mutation response
- Update formatMember function to distinguish between individual and organization members
- Test individual member creation (verify existing behavior)
- Test organization member creation (verify new behavior)
- Test member listing with mixed member types (verify formatting)
- Verify GraphQL schema introspection includes MemberType enum
Note: All changes are in a single file: src/mcp_server.ts