Skip to main content
Glama

Hologres MCP Server

Official
by aliyun
utils.cpython-313.pyc8.81 kB
� ph���d�SSKrSSKJr SSKrSSKrSSKJr S SjrS SjrS SjrSr Sr S r g) �N)�sql)� get_db_configc���SnSnX::ad[5n[R"S 0UD6nSUlUR 5nUR S5 UR 5 SSS5 U$[R"S U35e!,(df  U$=f![RaGnSU3nUS- nX::a.[SUS-SUS-S 35 [R"S 5 SnAOSnAff=fX::aM�N�) Nr�Tz SELECT 1;zConnection failed: �zRetrying connection (attempt z of z)...�z7Failed to connect to Hologres database after retrying: �) r�psycopg�connect� autocommit�cursor�execute�fetchone�Error�print�time�sleep)�retries�attempt�err_msg�config�connr �es �i/Users/timothyding/Documents/git_files/ali_inner_git/hologres-mcp-server/src/hologres_mcp_server/utils.py�connect_with_retryrs����G��G� � � �"�_�F��?�?�,�V�,�D�"�D�O�����&����{�+����!���K� �-�-�Q�RY�QZ�[� \�\����K���}�}� �+�A�3�/�G� �q�L�G��!��5�g��k�]�$�w�QR�{�m�SW�X�Y�� � �1� ���  �� � s5�7B�"B�$ B� B�B�B�C4�-=C/�/C4c���[5n[5nUR5nURU5 UR 5nUR Vs/sHowSPM nnU(aXh4sSSS5 sSSS5 $UsSSS5 sSSS5 $s snf!,(df  O=fSSS5 g!,(df  g=f![ an S[U 53sSn A $Sn A ff=f)zHandle readResource method.rN�Error executing query: )rrr r�fetchall� description� Exception�str) � resource_name�query� with_headersrrr �rows�desc�headersrs r�handle_read_resourcer(s��� �_�F� 2� � !�T�����&����u�%����(��/5�/A�/A�B�/A�t��7�/A��B���=� ��"� !� ���"� !��C�����"� !� !�� �2�(��Q���1�1��2�s{� C�B7�0B�B�% B�0 B7�9 C�B� B7� C�B� B* �&B7�.C�7 C�C�C� C*� C%�C*�%C*c �R�[5n[5nUR5nU(aURS5 URU5 US:XaSU3sSSS5 sSSS5 $UR(a�URVs/sHofSPM nnUR 5nUV s/sH"n SR [[U 55PM$ n n SR SR U5/U -5sSSS5 sSSS5 $US:Xa$URn S U S 3sSSS5 sSSS5 $SSS5 SSS5 g s snfs sn f!,(df  O=fSSS5 g!,(df  g=f![an S [U 53sSn A $Sn A ff=f) zHandle callTool method.z&set hg_computing_resource='serverless'�gather_hg_table_statisticsz Successfully Nr�,� �execute_dml_sqlzQuery executed successfully. z rows affected.zQuery executed successfullyr) rrr rrr�join�mapr!�rowcountr ) � tool_namer#� serverlessrrr r&�columnsr%�row�result� row_countrs r�handle_call_toolr70sk�� �_�F�2� � !�T�����&���N�N�#K�L����u�%�� <�<�*�5�'�2���"� !��%�%�39�3E�3E�F�3E�4�A�w�3E�G�F�!�?�?�,�D�AE�F��#�c�h�h�s�3��}�5��F�F��9�9�c�h�h�w�&7�%8�6�%A�B�%��"� !�(�"3�3� &���I�:�9�+�_�U�+��"� !�09�/�"� !�� G��F�#����"� !� !��2 �2�(��Q���1�1��2�s�� F�E3�4E� E3�$ F�.E� E�E�1)E�%E�? E3� F�E�) E3�2 F�<E�=E3�F� E� E& �"E3�*F�3 F�=F�F� F&� F!�F&�!F&c��UR[R"S5X/5 UR5nU(aUS$S$)Nzg SELECT definition FROM pg_views WHERE schemaname = %s AND viewname = %s r�rr�SQLr)r � schema_name� view_namer5s r�get_view_definitionr=PsE�� �N�N�3�7�7�� � � "� $� �_�_� �F��6�!�9�(�D�(�c��UR[R"S5X#U/5 UR5nU(aUS$S$)Na SELECT col_description(att.attrelid, att.attnum) FROM pg_attribute att JOIN pg_class cls ON att.attrelid = cls.oid JOIN pg_namespace nsp ON cls.relnamespace = nsp.oid WHERE cls.relname = %s AND att.attname = %s AND nsp.nspname = %s rr9)r r;� table_name� column_namer5s r�get_column_commentrBYsG�� �N�N�3�7�7�� � �K� 0� 2��_�_� �F��6�!�9�(�D�(r>c �>�[5n[R"S0UD6nSUlUR 5n[ X@U5nU(d![ SUS35 SSS5 SSS5 g/n[RRU5nUGH�nURn [U [RR5(dM;U RGH=n [U [RR5(dM/[U R [RR"5(dMdU R R$SR&n U R R$SR&n U R(=(d U n [+X@X�5nU(dM�UR-[.R0"S5XX�U/5 UR35nU(a USbGMSUS US U S US 3 nUR5U5 GM@ GM� U(aUR7SS 5 S R9U5sSSS5 sSSS5 $!,(df  O=fSSS5 g!,(df  g=f![:a nSnAgSnAff=f)NTzView 'z ' not found.rrra� SELECT col_description((SELECT oid FROM pg_class WHERE relname = %s AND relnamespace = (SELECT oid FROM pg_namespace WHERE nspname = %s)), attnum) FROM pg_attribute WHERE attname = %s AND attrelid = (SELECT oid FROM pg_class WHERE relname = %s AND relnamespace = (SELECT oid FROM pg_namespace WHERE nspname = %s)) zCOMMENT ON COLUMN �.z IS 'z';z1-- Infer view column comments from related tablesr,r )rr r r r r=r�pglast�parser� parse_sql�stmt� isinstance�ast� SelectStmt� targetList� ResTarget�val� ColumnRef�fields�sval�namerBrrr:r�append�insertr.r )r;r<rrr �view_definition�comment_statements�parsed�raw_stmtrH�target� source_table� source_column� target_column�column_comment�view_column_comment� statementrs r�try_infer_view_commentsr`ds'��%���� �_�_� &�v� &�$�"�D�O�����&�"5�f�9�"U��&��F�9�+�\�:�;�� �'� &�&(�"����0�0��A�� &�H�#�=�=�D�!�$�� � �(=�(=�>�>�&*�o�o�F�)�&�&�*�*�2F�2F�G�G�#-�f�j�j�&�*�*�:N�:N�#O�#O�39�:�:�3D�3D�Q�3G�3L�3L�L�4:�J�J�4E�4E�a�4H�4M�4M�M�4:�K�K�4P�=�M�5G��]i�5y�N�'5�~�(.���s�w�w�@,�8-�09�}�al�.m� )o� ?E�o�o�>O�(;�/B�FY�Z[�F\�Fd�:L�[�M�YZ�[d�Ze�ef�gt�fu�uz�|J�{K�KM�9N�I�,>�,E�,E�i�,P�!'6�!'�(&�&�-�-�a�1d�e��y�y�!3�4�=��'� &�����'� &� &��D �����s� J�I7�$I�I7�&J�/AI� 7I�1I�=A,I�-AI�6AI� I7� J� I* �&I7�.J�7 J�J�J� J�J)�)F) r rrEr�hologres_mcp_server.settingsrrr(r7r=rBr`r r>r�<module>rcs4���� � �6�]�,2�$2�@)� )�&r>

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/aliyun/alibabacloud-hologres-mcp-server'

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