242 Commits

Author SHA1 Message Date
Simon Larsen
338a2dc2cc refactor: Rename MCP-Generated directory to MCP and update related references in scripts and documentation 2025-06-25 17:09:27 +01:00
Simon Larsen
d400271f3c refactor: Remove MCPServerGenerator class and related methods for code cleanup 2025-06-25 16:56:59 +01:00
Simon Larsen
d4b0ac7b9c feat: Update README and MCPServerGenerator for consistent directory usage and improved API key example 2025-06-25 16:56:10 +01:00
Simon Larsen
8edcdd37e3 feat: Update MCP package configuration and add server generator
- Enhanced package.json with detailed description, keywords, and repository information.
- Updated scripts for building and starting the server.
- Added new dependencies for axios and dotenv.
- Modified tsconfig.json for improved TypeScript settings.
- Introduced MCPServerGenerator class to automate server file generation.
- Implemented methods to generate essential files: package.json, Index.ts, MCPService, APIClient, configuration utilities, README, tsconfig, nodemon config, and Dockerfile.
- Ensured proper error handling and environment variable validation in the generated code.
2025-06-25 16:53:24 +01:00
Simon Larsen
ed65a477e4 feat: Rename MCP-Generated directory to MCP for consistency across workflows and scripts 2025-06-25 16:51:30 +01:00
Simon Larsen
98e3386d22 feat: Implement OpenAPI Parser and MCP Server Generator
- Added OpenAPIParser class for parsing OpenAPI specifications and extracting MCP tools.
- Introduced StringUtils class for string manipulation utilities.
- Defined TypeScript interfaces for OpenAPI operations, parameters, and schemas.
- Created GenerateMCPServer script to orchestrate the generation of the MCP server from OpenAPI spec.
- Developed README.md for comprehensive documentation on usage and features of the MCP server.
- Implemented publish-mcp-server.sh script for automating the publishing process to NPM and GitHub.
- Established a structured output directory for generated MCP server files, including configuration and documentation.
2025-06-25 16:47:23 +01:00
Simon Larsen
fe879d86ce feat: Update linting commands to use npx eslint with increased memory limit and caching 2025-06-24 21:45:10 +01:00
Simon Larsen
9e63a4cbf5 feat: Enhance lint-batches.sh with configurable options for cache, memory, format, timeout, and batch size 2025-06-24 21:25:44 +01:00
Simon Larsen
1b70517463 feat: Refactor DataSourceGenerator, DocumentationGenerator, OpenAPIParser, ResourceGenerator, and StringUtils for improved readability and maintainability 2025-06-24 20:16:45 +01:00
Simon Larsen
38f79900cc feat: Enhance multi-platform build process and improve error messages for provider generation 2025-06-24 20:03:02 +01:00
Simon Larsen
83838da879 feat: Enhance DataSourceGenerator and OpenAPIParser to support dynamic imports and identify read operations for GET and POST methods 2025-06-24 18:37:11 +01:00
Simon Larsen
4e6e7cf354 feat: Replace linting commands with a new script to handle batch linting and prevent memory issues 2025-06-24 18:23:34 +01:00
Simon Larsen
8f9c463d85 feat: Enhance OpenAPIParser and ResourceGenerator to support optional and computed fields in schema handling 2025-06-24 15:20:04 +01:00
Simon Larsen
f8c8f26cab feat: Enhance response handling for list and object types in ResourceGenerator 2025-06-24 13:29:57 +01:00
Simon Larsen
a923b0f885 refactor: Update default value handling to consider both create and update schemas in ResourceGenerator 2025-06-24 13:18:38 +01:00
Simon Larsen
23c57a1483 feat: Add support for complex objects in OpenAPIParser and ResourceGenerator 2025-06-24 12:52:00 +01:00
Simon Larsen
d3106e4ac8 refactor: Enhance resource schema handling by adding support for default values and list types in ResourceGenerator 2025-06-24 12:17:47 +01:00
Simon Larsen
a0acf8cac2 feat: Add operationSchemas to TerraformResource and implement schema generation for CRUD operations in OpenAPIParser 2025-06-24 11:53:18 +01:00
Simon Larsen
b29df21b4d refactor: Enhance OpenAPI schema handling by incorporating default values in ModelSchema and ResourceGenerator 2025-06-24 11:21:47 +01:00
Simon Larsen
5794e40fd1 docs: Update contributing guidelines to clarify repository status and forking instructions 2025-06-23 15:52:45 +01:00
Simon Larsen
51faf12723 refactor: Enhance OpenAPI example handling in DocumentationGenerator and OpenAPIParser 2025-06-23 15:50:06 +01:00
Simon Larsen
1c658651ac refactor: Change provider parameter from "host" to "oneuptime_url" for clarity and consistency 2025-06-23 15:42:28 +01:00
Simon Larsen
482c6d3e0b refactor: Improve toSnakeCase method to handle consecutive uppercase letters and camelCase conversion 2025-06-23 15:41:01 +01:00
Simon Larsen
441ab82acf refactor: Update documentation to mark api_key as required for authentication 2025-06-23 15:27:14 +01:00
Simon Larsen
7d18b81ea5 refactor: Update api_key to be required for authentication in DocumentationGenerator and ProviderGenerator 2025-06-23 15:20:29 +01:00
Simon Larsen
a8c3ca5f01 refactor: Change provider parameter from "host" to "oneuptime_url" for clarity and consistency 2025-06-23 15:18:49 +01:00
Simon Larsen
a701f5eff0 refactor: Improve code formatting for better readability in DataSourceGenerator, ResourceGenerator, and StringUtils 2025-06-23 14:22:20 +01:00
Simon Larsen
24803362cb refactor: Enhance publish script for OneUptime Terraform Provider with improved argument parsing, validation, and error handling 2025-06-20 21:28:19 +01:00
Simon Larsen
1dcd3664c7 refactor: Add PostWithSelect method and update resource handling for API calls 2025-06-20 17:34:22 +01:00
Simon Larsen
f8d80b59ac refactor: Add createdByUserId and deletedByUserId to computed fields check in OpenAPIParser 2025-06-20 16:41:24 +01:00
Simon Larsen
36f6561b2c refactor: Enhance response value handling in generateResponseSetter method 2025-06-20 15:55:06 +01:00
Simon Larsen
5ed9b8ec24 refactor: Improve handling of Terraform map and response data in ResourceGenerator 2025-06-20 15:49:02 +01:00
Simon Larsen
672caa8c0a refactor: Change authorization header from Bearer token to APIKey in DoRequest method 2025-06-20 14:40:46 +01:00
Simon Larsen
46e7d9aca6 refactor: Preserve original OpenAPI parameter and property names in ResourceGenerator and OpenAPIParser 2025-06-20 14:38:24 +01:00
Simon Larsen
aa617ec0ba refactor: Enhance handling of Terraform map and list types in ResourceGenerator 2025-06-20 14:33:49 +01:00
Simon Larsen
3c7426ffac refactor: Sanitize attribute names in DataSourceGenerator and ResourceGenerator to avoid reserved keywords 2025-06-20 13:50:49 +01:00
Simon Larsen
09a8d89106 refactor: Update API host URL in README and scripts for consistency 2025-06-20 12:35:30 +01:00
Simon Larsen
3e8273ce55 refactor: Improve code formatting and readability in OpenAPIParser and StringUtils 2025-06-20 12:17:02 +01:00
Simon Larsen
7f08319da2 refactor: Enhance type annotations for methods and variables in OpenAPIParser, ResourceGenerator, StringUtils, and TerraformProviderGenerator 2025-06-20 00:09:33 +01:00
Simon Larsen
9f8c88ec91 refactor: Improve code formatting and readability across multiple generator files 2025-06-20 00:02:47 +01:00
Simon Larsen
571858aad5 refactor: Enhance type annotations and access modifiers across the Terraform provider codebase
- Updated constructors and methods in various classes to use public access modifiers for better clarity.
- Added explicit type annotations for variables and function return types to improve type safety and readability.
- Refactored the DocumentationGenerator, FileGenerator, GoCodeGenerator, GoModuleGenerator, OpenAPIParser, ProviderGenerator, ResourceGenerator, StringUtils, TerraformProviderGenerator, and GenerateProvider scripts.
- Removed deprecated Index.ts file related to Terraform provider generation.
2025-06-19 23:57:50 +01:00
Simon Larsen
6c6612fde9 refactor: Improve readability and consistency in example generation and resource imports 2025-06-19 23:45:00 +01:00
Simon Larsen
30dd60f01f feat: Add example generation for resource documentation and enhance schema handling 2025-06-19 23:32:39 +01:00
Simon Larsen
f9372928fd refactor: Enhance handling of map and list types in resource generation, adding comments for future implementation 2025-06-19 21:35:42 +01:00
Simon Larsen
0475f1cbea refactor: Update import determination logic based on actual usage and resource operations 2025-06-19 21:25:18 +01:00
Simon Larsen
461b64eb56 Refactor code for improved readability and consistency
- Updated formatting in DocumentationGenerator.ts for better readability.
- Enhanced writeFileInDir method in FileGenerator.ts with consistent formatting.
- Refactored GoCodeGenerator.ts for improved code structure and readability.
- Improved error handling and formatting in OpenAPIParser.ts.
- Enhanced ProviderGenerator.ts with consistent formatting for file writing.
- Refactored ResourceGenerator.ts for improved readability and consistency.
- Updated StringUtils.ts for better formatting and readability.
- Improved TerraformProviderGenerator.ts with consistent formatting.
- Refactored GenerateProvider.ts for better error handling and readability.
- Updated Index.ts for improved formatting and consistency.
2025-06-19 21:05:06 +01:00
Simon Larsen
37c8ab5405 refactor: Remove debug logging from schema processing in OpenAPIParser 2025-06-19 19:51:26 +01:00
Simon Larsen
f73a964916 feat: Add build and installation script generation for Terraform provider 2025-06-19 19:50:32 +01:00
Simon Larsen
d9412b6c0c refactor: Improve operation type determination and schema extraction in OpenAPIParser 2025-06-19 19:46:49 +01:00
Simon Larsen
eed38eed8d refactor: Update host configuration to remove '/api' path and clarify documentation 2025-06-19 19:14:04 +01:00