{"tools":[{"name":"user_login","description":"Authenticate a user and get session token","inputSchema":{"properties":{"username":{"title":"Username","type":"string"},"password":{"title":"Password","type":"string"}},"required":["username","password"],"title":"user_loginArguments","type":"object"}},{"name":"user_logout","description":"Logout and clear stored session","inputSchema":{"properties":{},"title":"user_logoutArguments","type":"object"}},{"name":"server_logout","description":"Clear stored session token on server (same as user_logout alias)","inputSchema":{"properties":{},"title":"server_logoutArguments","type":"object"}},{"name":"whoami","description":"Return currently authenticated user (if any)","inputSchema":{"properties":{},"title":"whoamiArguments","type":"object"}},{"name":"get_config","description":"Get current database configuration and connection information","inputSchema":{"properties":{},"title":"get_configArguments","type":"object"}},{"name":"update_config","description":"Update database connection string","inputSchema":{"properties":{"connection_string":{"title":"Connection String","type":"string"}},"required":["connection_string"],"title":"update_configArguments","type":"object"}},{"name":"check_status","description":"Check database connection status","inputSchema":{"properties":{},"title":"check_statusArguments","type":"object"}},{"name":"list_objects","description":"List database objects (schemas, tables, views)\n\n            Args:\n                schema: Optional schema name to list objects from.\n                limit: Maximum number of objects to return (default: 100).\n                offset: Number of objects to skip for pagination.\n                connection_id: Optional connection ID to use instead of the active connection.\n                owner_username: Username of the connection owner (for super admin cross-user access).\n            ","inputSchema":{"properties":{"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema"},"limit":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":100,"title":"Limit"},"offset":{"default":0,"title":"Offset","type":"integer"},"connection_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Connection Id"},"owner_username":{"default":"","title":"Owner Username","type":"string"}},"title":"list_objectsArguments","type":"object"}},{"name":"execute_sql","description":"Execute a read-only SQL query (SELECT) against the active database connection","inputSchema":{"properties":{"sql":{"title":"Sql","type":"string"},"timeout":{"default":30,"title":"Timeout","type":"integer"},"limit":{"default":1000,"title":"Limit","type":"integer"},"include_metadata":{"default":false,"title":"Include Metadata","type":"boolean"},"connection_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Connection Id"},"owner_username":{"default":"","title":"Owner Username","type":"string"}},"required":["sql"],"title":"execute_sqlArguments","type":"object"}},{"name":"run_query","description":"Alias of execute_sql. Execute a read-only SQL SELECT query with optional timeout, limit, and metadata.","inputSchema":{"properties":{"sql":{"title":"Sql","type":"string"},"timeout":{"default":30,"title":"Timeout","type":"integer"},"limit":{"default":1000,"title":"Limit","type":"integer"},"include_metadata":{"default":false,"title":"Include Metadata","type":"boolean"},"connection_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Connection Id"},"owner_username":{"default":"","title":"Owner Username","type":"string"}},"required":["sql"],"title":"run_queryArguments","type":"object"}},{"name":"describe_table","description":"Get complete schema information for a database table (columns, types, primary keys, foreign keys, indexes)","inputSchema":{"properties":{"table_name":{"title":"Table Name","type":"string"},"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema"},"connection_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Connection Id"},"owner_username":{"default":"","title":"Owner Username","type":"string"}},"required":["table_name"],"title":"describe_tableArguments","type":"object"}},{"name":"get_table_relationships","description":"Get all foreign key relationships between tables in the database","inputSchema":{"properties":{"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema"},"connection_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Connection Id"},"owner_username":{"default":"","title":"Owner Username","type":"string"}},"title":"get_table_relationshipsArguments","type":"object"}},{"name":"connect","description":"Connect to the database","inputSchema":{"properties":{},"title":"connectArguments","type":"object"}},{"name":"disconnect","description":"Disconnect from the database","inputSchema":{"properties":{},"title":"disconnectArguments","type":"object"}},{"name":"validate_connection","description":"Validate a database connection string (format, network, and actual connection)","inputSchema":{"properties":{"connection_string":{"title":"Connection String","type":"string"}},"required":["connection_string"],"title":"validate_connectionArguments","type":"object"}},{"name":"build_connection","description":"Build and validate a SQLAlchemy connection string from individual parameters (dialect, host, port, database, etc.)","inputSchema":{"properties":{"dialect":{"title":"Dialect","type":"string"},"database":{"title":"Database","type":"string"},"driver":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Driver"},"username":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Username"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"host":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Host"},"port":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Port"},"query":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"default":null,"title":"Query"}},"required":["dialect","database"],"title":"build_connectionArguments","type":"object"}},{"name":"add_connection","description":"Add a new database connection for the authenticated user","inputSchema":{"properties":{"name":{"title":"Name","type":"string"},"connection_string":{"title":"Connection String","type":"string"},"description":{"default":"","title":"Description","type":"string"}},"required":["name","connection_string"],"title":"add_connectionArguments","type":"object"}},{"name":"list_connections","description":"List all database connections for the authenticated user","inputSchema":{"properties":{},"title":"list_connectionsArguments","type":"object"}},{"name":"get_connection","description":"Get details of a specific connection","inputSchema":{"properties":{"connection_id":{"title":"Connection Id","type":"string"}},"required":["connection_id"],"title":"get_connectionArguments","type":"object"}},{"name":"update_connection","description":"Update a connection (name, connection_string, description)","inputSchema":{"properties":{"connection_id":{"title":"Connection Id","type":"string"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Name"},"connection_string":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Connection String"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Description"}},"required":["connection_id"],"title":"update_connectionArguments","type":"object"}},{"name":"get_active_connection","description":"Get the currently active connection for the authenticated user","inputSchema":{"properties":{},"title":"get_active_connectionArguments","type":"object"}},{"name":"activate_connection","description":"Activate a database connection for the authenticated user.\n\n            Args:\n                connection_id: ID of the connection to activate.\n                owner_username: Username of the connection owner (optional).\n                               Super admins can pass a different user's username to\n                               activate connections owned by other users.\n            ","inputSchema":{"properties":{"connection_id":{"title":"Connection Id","type":"string"},"owner_username":{"default":"","title":"Owner Username","type":"string"}},"required":["connection_id"],"title":"activate_connectionArguments","type":"object"}},{"name":"test_connection","description":"Test a database connection.\n\n            Args:\n                connection_id: ID of the connection to test.\n                owner_username: Username of the connection owner (optional).\n                               Super admins can pass a different user's username.\n            ","inputSchema":{"properties":{"connection_id":{"title":"Connection Id","type":"string"},"owner_username":{"default":"","title":"Owner Username","type":"string"}},"required":["connection_id"],"title":"test_connectionArguments","type":"object"}},{"name":"remove_connection","description":"Remove a database connection for the authenticated user","inputSchema":{"properties":{"connection_id":{"title":"Connection Id","type":"string"}},"required":["connection_id"],"title":"remove_connectionArguments","type":"object"}},{"name":"create_user","description":"Create a new user in the multi-user system. Super admins can create users with any role in any organization. Org admins can create common or org_admin users in their organization.","inputSchema":{"properties":{"username":{"title":"Username","type":"string"},"password":{"title":"Password","type":"string"},"email":{"title":"Email","type":"string"},"full_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Full Name"},"role":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Role"},"organization_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Organization Id"}},"required":["username","password","email"],"title":"create_userArguments","type":"object"}},{"name":"list_users","description":"List all users in the system","inputSchema":{"properties":{},"title":"list_usersArguments","type":"object"}},{"name":"get_user","description":"Get details for a specific user (default self)","inputSchema":{"properties":{"username":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Username"}},"title":"get_userArguments","type":"object"}},{"name":"update_user","description":"Update a user (email, full_name, password, role). Super admins can change any user's role. Org admins can promote/demote between common and org_admin in their organization.","inputSchema":{"properties":{"username":{"title":"Username","type":"string"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Email"},"full_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Full Name"},"password":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Password"},"role":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Role"}},"required":["username"],"title":"update_userArguments","type":"object"}},{"name":"delete_user","description":"Delete a user","inputSchema":{"properties":{"username":{"title":"Username","type":"string"}},"required":["username"],"title":"delete_userArguments","type":"object"}},{"name":"create_organization","description":"Create a new organization (super-admin only)","inputSchema":{"properties":{"name":{"title":"Name","type":"string"},"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Display Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Description"}},"required":["name"],"title":"create_organizationArguments","type":"object"}},{"name":"list_organizations","description":"List organizations (super-admin sees all, org-admin sees own)","inputSchema":{"properties":{},"title":"list_organizationsArguments","type":"object"}},{"name":"get_organization","description":"Get organization details","inputSchema":{"properties":{"org_name":{"title":"Org Name","type":"string"}},"required":["org_name"],"title":"get_organizationArguments","type":"object"}},{"name":"update_organization","description":"Update organization (super-admin only)","inputSchema":{"properties":{"org_name":{"title":"Org Name","type":"string"},"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Display Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"active":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Active"}},"required":["org_name"],"title":"update_organizationArguments","type":"object"}},{"name":"delete_organization","description":"Delete organization (super-admin only)","inputSchema":{"properties":{"org_name":{"title":"Org Name","type":"string"}},"required":["org_name"],"title":"delete_organizationArguments","type":"object"}},{"name":"list_organization_users","description":"List all users in an organization","inputSchema":{"properties":{"org_name":{"title":"Org Name","type":"string"}},"required":["org_name"],"title":"list_organization_usersArguments","type":"object"}},{"name":"list_organization_connections","description":"List all database connections in an organization","inputSchema":{"properties":{"org_name":{"title":"Org Name","type":"string"}},"required":["org_name"],"title":"list_organization_connectionsArguments","type":"object"}},{"name":"add_semantic_map","description":"Add a new semantic mapping between business concepts and database structures","inputSchema":{"properties":{"concept":{"title":"Concept","type":"string"},"type":{"title":"Type","type":"string"},"table":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Table"},"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Schema"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"aliases":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"title":"Aliases"},"column_mappings":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"default":null,"title":"Column Mappings"},"from_table":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"From Table"},"to_table":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"To Table"},"join_condition":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Join Condition"}},"required":["concept","type"],"title":"add_semantic_mapArguments","type":"object"}},{"name":"list_semantic_maps","description":"List all semantic mappings for the active connection","inputSchema":{"properties":{"type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Type"}},"title":"list_semantic_mapsArguments","type":"object"}},{"name":"get_semantic_mapping","description":"Get complete details of a specific semantic mapping by ID","inputSchema":{"properties":{"mapping_id":{"title":"Mapping Id","type":"string"}},"required":["mapping_id"],"title":"get_semantic_mappingArguments","type":"object"}},{"name":"update_semantic_map","description":"Update an existing semantic mapping","inputSchema":{"properties":{"mapping_id":{"title":"Mapping Id","type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"aliases":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"default":null,"title":"Aliases"},"column_mappings":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"default":null,"title":"Column Mappings"}},"required":["mapping_id"],"title":"update_semantic_mapArguments","type":"object"}},{"name":"delete_semantic_map","description":"Delete a semantic mapping","inputSchema":{"properties":{"mapping_id":{"title":"Mapping Id","type":"string"}},"required":["mapping_id"],"title":"delete_semantic_mapArguments","type":"object"}},{"name":"suggest_semantic_maps","description":"Auto-suggest semantic entity and relationship mappings from current DB schema (non-destructive)","inputSchema":{"properties":{"include_columns":{"default":true,"title":"Include Columns","type":"boolean"},"type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Type"},"limit":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Limit"}},"title":"suggest_semantic_mapsArguments","type":"object"}},{"name":"create_api_key","description":"Create a new API key for the authenticated user","inputSchema":{"properties":{"name":{"title":"Name","type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Description"},"expires_in_days":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Expires In Days"}},"required":["name"],"title":"create_api_keyArguments","type":"object"}},{"name":"list_my_api_keys","description":"List all API keys for the authenticated user","inputSchema":{"properties":{},"title":"list_my_api_keysArguments","type":"object"}},{"name":"revoke_api_key","description":"Revoke (delete) an API key","inputSchema":{"properties":{"key_id":{"title":"Key Id","type":"string"}},"required":["key_id"],"title":"revoke_api_keyArguments","type":"object"}},{"name":"natural_query","description":"Gerar e opcionalmente executar SQL seguro a partir de linguagem natural usando contexto semântico e de schema","inputSchema":{"properties":{"query":{"title":"Query","type":"string"},"run_mode":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Run Mode"},"limit":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Limit"},"include_sql":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Include Sql"},"include_mappings_used":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"title":"Include Mappings Used"},"connection_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Connection Id"},"owner_username":{"default":"","title":"Owner Username","type":"string"}},"required":["query"],"title":"natural_queryArguments","type":"object"}},{"name":"oauth_get_login_url","description":"Get OAuth 2.0 authorization URL for manual authentication (for clients that cannot open browser automatically)","inputSchema":{"properties":{"client_type":{"default":"desktop","title":"Client Type","type":"string"}},"title":"oauth_get_login_urlArguments","type":"object"}},{"name":"update_claude_config","description":"Bootstrap Tool: Automatically configure Claude Desktop with OAuth token (PUBLIC - no auth required). Updates claude_desktop_config.json with the provided token, creates backup, and preserves other MCP servers.","inputSchema":{"properties":{"token":{"title":"Token","type":"string"},"server_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Server Name"}},"required":["token"],"title":"update_claude_configArguments","type":"object"}}]}