|
@@ -115,7 +115,12 @@ class ApiBasedToolSchemaParser:
|
|
|
|
|
|
# check if there is a operation id, use $path_$method as operation id if not
|
|
|
if 'operationId' not in interface['operation']:
|
|
|
- interface['operation']['operationId'] = f'{interface["path"]}_{interface["method"]}'
|
|
|
+ # remove special characters like / to ensure the operation id is valid ^[a-zA-Z0-9_-]{1,64}$
|
|
|
+ path = interface['path']
|
|
|
+ if interface['path'].startswith('/'):
|
|
|
+ path = interface['path'][1:]
|
|
|
+ path = path.replace('/', '_')
|
|
|
+ interface['operation']['operationId'] = f'{path}_{interface["method"]}'
|
|
|
|
|
|
bundles.append(ApiBasedToolBundle(
|
|
|
server_url=server_url + interface['path'],
|