Spark SQL MCP
This community MCP server enables AI assistants to query Spark SQL clusters via the Thrift/HiveServer2 protocol. It supports schema discovery, listing databases and tables, and executing read-only SQL queries. It is compatible with Apache Spark, AWS EMR, Hive, Impala, and Presto, offering multiple authentication methods including NONE, LDAP, Kerberos, and CUSTOM.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Execute read-only SQL queries against a Spark cluster
- List all available databases in the cluster
- Describe table structures and schemas
- Discover tables within a specific database
Source and maintenance
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
spark-sql-mcp-server 0.1.2
{
"version": "0.1.2",
"transport": "stdio",
"identifier": "spark-sql-mcp-server",
"registryType": "pypi",
"environmentVariables": [
{
"name": "SPARK_HOST",
"format": "string",
"isRequired": true,
"description": "Hostname of the Spark Thrift Server"
},
{
"name": "SPARK_PORT",
"format": "number",
"description": "Port of the Spark Thrift Server (default: 10000)"
},
{
"name": "SPARK_DATABASE",
"format": "string",
"description": "Default database to use"
},
{
"name": "SPARK_AUTH",
"format": "string",
"description": "Authentication method: NONE, LDAP, KERBEROS, CUSTOM, or NOSASL"
},
{
"name": "SPARK_USERNAME",
"format": "string",
"description": "Username for LDAP authentication"
},
{
"name": "SPARK_PASSWORD",
"format": "string",
"description": "Password for LDAP authentication"
},
{
"name": "SPARK_KERBEROS_SERVICE_NAME",
"format": "string",
"description": "Kerberos service name (default: hive)"
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"spark-sql-mcp": {
"command": "uvx",
"args": [
"spark-sql-mcp-server==0.1.2"
],
"env": {
"SPARK_HOST": "<YOUR_SPARK_HOST>",
"SPARK_PORT": "<YOUR_SPARK_PORT>",
"SPARK_DATABASE": "<YOUR_SPARK_DATABASE>",
"SPARK_AUTH": "<YOUR_SPARK_AUTH>",
"SPARK_USERNAME": "<YOUR_SPARK_USERNAME>",
"SPARK_PASSWORD": "<YOUR_SPARK_PASSWORD>",
"SPARK_KERBEROS_SERVICE_NAME": "<YOUR_SPARK_KERBEROS_SERVICE_NAME>"
}
}
}
}Cline
{
"mcpServers": {
"spark-sql-mcp": {
"command": "uvx",
"args": [
"spark-sql-mcp-server==0.1.2"
],
"env": {
"SPARK_HOST": "<YOUR_SPARK_HOST>",
"SPARK_PORT": "<YOUR_SPARK_PORT>",
"SPARK_DATABASE": "<YOUR_SPARK_DATABASE>",
"SPARK_AUTH": "<YOUR_SPARK_AUTH>",
"SPARK_USERNAME": "<YOUR_SPARK_USERNAME>",
"SPARK_PASSWORD": "<YOUR_SPARK_PASSWORD>",
"SPARK_KERBEROS_SERVICE_NAME": "<YOUR_SPARK_KERBEROS_SERVICE_NAME>"
}
}
}
}VS Code
{
"servers": {
"spark-sql-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"spark-sql-mcp-server==0.1.2"
],
"env": {
"SPARK_HOST": "<YOUR_SPARK_HOST>",
"SPARK_PORT": "<YOUR_SPARK_PORT>",
"SPARK_DATABASE": "<YOUR_SPARK_DATABASE>",
"SPARK_AUTH": "<YOUR_SPARK_AUTH>",
"SPARK_USERNAME": "<YOUR_SPARK_USERNAME>",
"SPARK_PASSWORD": "<YOUR_SPARK_PASSWORD>",
"SPARK_KERBEROS_SERVICE_NAME": "<YOUR_SPARK_KERBEROS_SERVICE_NAME>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"spark-sql-mcp": {
"command": "uvx",
"args": [
"spark-sql-mcp-server==0.1.2"
],
"env": {
"SPARK_HOST": "<YOUR_SPARK_HOST>",
"SPARK_PORT": "<YOUR_SPARK_PORT>",
"SPARK_DATABASE": "<YOUR_SPARK_DATABASE>",
"SPARK_AUTH": "<YOUR_SPARK_AUTH>",
"SPARK_USERNAME": "<YOUR_SPARK_USERNAME>",
"SPARK_PASSWORD": "<YOUR_SPARK_PASSWORD>",
"SPARK_KERBEROS_SERVICE_NAME": "<YOUR_SPARK_KERBEROS_SERVICE_NAME>"
}
}
}
}Let your agent find its tools
Find servers like Spark SQL MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.