CCM
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Claude Code Marketplaces

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Skill index
  • MCP index
  • Marketplace index
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by mertbuilds.com

Independent project, not affiliated with Anthropic
annasmazhar avatar

Pyspark Mcp

annasmazhar/pyspark_mcp
STDIOregistry active
Summary

This is a PySpark migration and optimization toolkit built on SQLGlot. It converts SQL between dialects (PostgreSQL, Oracle, Redshift, MySQL, Snowflake) and generates PySpark DataFrame API code from SQL queries. The AWS Glue integration generates complete job templates, handles DynamicFrame conversions, and analyzes S3 partitioning strategies. You also get code review tools that scan existing PySpark for performance issues, suggest join strategies, and detect duplication across hundreds of files with concurrent batch processing. Reach for this when migrating legacy SQL workloads to Spark or when you need to generate Glue jobs without writing boilerplate. It won't handle recursive CTEs natively but provides Spark SQL equivalents and guidance for edge cases.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →

PySpark MCP Server

SQL migration assistance, AWS Glue job template generation, and Spark code optimization — as an MCP server.

Not the live-Spark pyspark-mcp package. This project is SQL → PySpark / Glue source generation, published as pyspark-tools. SemyonSinchenko/pyspark-mcp introspects a running SparkSession. A deprecated pyspark-mcp console script remains here so old configs keep working; it prints a warning, then starts this server.

CI Pipeline Python 3.11+ License: MIT

What It Does

  • SQL Dialect Transpilation — Convert between PostgreSQL, Oracle, Redshift, MySQL, Snowflake, and Spark SQL using SQLGlot
  • PySpark DataFrame API Generation — Generate DataFrame API source text from SQL, with optimization hints
  • AWS Glue templates — Job script strings, DynamicFrame conversions, Data Catalog definitions, S3 layout advice
  • Batch Processing — Walk SQL files/directories and emit converted modules
  • Code Review & Optimization — Pattern-based review of existing PySpark source
  • Pattern Detection — Find duplicated snippets and suggest utilities

What It Doesn't Do

  • Recursive CTEs → provides Spark SQL equivalent + guidance (PySpark has no native recursive CTE support)
  • MERGE/PIVOT/CONNECT BY → transpiles to Spark SQL, provides DataFrame API guidance
  • Perfect 1:1 DataFrame API transpilation for all SQL — complex queries get Spark SQL + recommendations
  • It does not start a SparkSession, submit Glue jobs, or execute SQL
  • optimize(mode="code") returns suggestions; it does not rewrite your code
  • glue_s3 is a path heuristic (no AWS call, no measured speedups)
  • It does not replace SemyonSinchenko/pyspark-mcp for live catalog/plans

Why this vs calling sqlglot yourself

SQLGlot already transpiles dialects. This MCP adds three things around that kernel: DataFrame-API pretty-printing with join/window/cast mappings that the conversion tests lock, Glue job boilerplate strings (bookmarks, DynamicFrames, catalog tables) so an agent can emit a file instead of assembling one, and a 14-tool FastMCP surface so an LLM picks convert / mode=sql instead of wiring sqlglot itself. If you only need sqlglot.transpile(...), use sqlglot.

Quick Start

pip install pyspark-tools
pyspark-tools

Zero-clone alternative: uvx pyspark-tools. run_server.py is a development convenience that inserts sys.path and prints startup banners. Prefer pyspark-tools in configs and production.

Try it

pip install pyspark-tools
python -c "from pathlib import Path; from pyspark_tools.sql_converter import SQLToPySparkConverter as C; from pyspark_tools.consolidated_tools import glue_job; c,s,o=C(),Path('examples'),Path('examples/out'); [(o/f'{n}.py').write_text(c.convert_sql_to_pyspark((s/f'{n}.sql').read_text(), dialect=d).pyspark_code) for n,d in [('postgres_orders','postgres'),('oracle_decode','oracle')]]; (o/'orders_etl_glue.py').write_text(glue_job(mode='template', job_name='orders_etl', sql_query=(s/'postgres_orders.sql').read_text())['template'])"

Writes the same files as examples/out/. MCP stdio CLI: pyspark-tools.

Example: SQL → PySpark

SELECT o.customer_id, c.name, SUM(o.amount) AS total
FROM orders o
JOIN customers c ON o.customer_id = c.id
WHERE o.status = 'paid'
GROUP BY o.customer_id, c.name

Call convert with mode=sql. Captured converter output (dialect=spark):

from pyspark.sql import SparkSession
from pyspark.sql.functions import (
    col, lit, when, count, sum as spark_sum, avg, min, max, countDistinct,
    coalesce, concat, datediff, date_add, to_date,
    row_number, rank, lag, lead,
)
from pyspark.sql.window import Window

# Generated from SPARK SQL
spark = SparkSession.builder.appName('SQLToPySpark').getOrCreate()

# Load table: customers
customers_df = spark.table('customers')
# Load table: orders
orders_df = spark.table('orders')

# Main query
result_df = (orders_df.alias('o')
    .join(customers_df.alias('c'), (col('o.customer_id') == col('c.id')), 'inner')
    .filter((col('o.status') == lit('paid')))
    .groupBy(col('o.customer_id'), col('c.name'))
    .select(col('o.customer_id'), col('c.name'), (spark_sum(col('o.amount'))).alias('total')))

Exact output depends on dialect detection and fallbacks; conversion tests in tests/test_sql_conversion_fixes.py pin the important constructs. Notebook-style import * / show() is opt-in via style="notebook" on the converter.

MCP Configuration

Claude Desktop

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "pyspark": {
      "command": "pyspark-tools",
      "args": []
    }
  }
}

Hermes Agent

Add to ~/.hermes/config.yaml:

mcp:
  servers:
    pyspark:
      command: pyspark-tools
      enabled_tools: all

Docker

The image is stdio only (FastMCP over stdin/stdout). There is no HTTP server on port 8000. docker compose up is for local tests, not a health-checkable web service.

docker compose --profile test run --rm pyspark-tools-test

Tools

Three primary tools. The other eleven routers stay registered this minor version but are deprecated — prefer convert, glue_job, and review.

convert — SQL → PySpark (including mode=batch_dir)

convert(mode="sql", sql_query="SELECT id FROM users", dialect="postgres")
convert(mode="batch_dir", directory_path="etl/", output_dir="out")

glue_job — Glue 5.0 job template strings

glue_job(mode="template", job_name="orders_etl", sql_query="SELECT * FROM orders")

review — code review, patterns, duplicates

review(mode="code", code="df = spark.table('t')\ndf.collect()")

Legacy / deprecated: analyze, optimize, glue_schema, glue_s3, glue_data, refactor, search, context, batch_status, s3_source, analytics. Still callable; do not advertise to new agents.

Security

This MCP can read local files (SQL, TXT, PDF) and, if the [aws] extra is installed, list/read S3 with the host's default AWS credentials. File tools only allow paths under the process working directory (or an explicit base_path / FileHandler(base_directory=...)). That is not a sandbox.

Run the server under a restricted OS account. Do not point it at secrets directories. Do not attach AWS credentials with write access unless you intend S3 reads via s3_source / glue_s3. Optional extras:

pip install "pyspark-tools[aws]"    # boto3 for S3/Glue catalog helpers
pip install "pyspark-tools[spark]"  # pyspark — not required at runtime; generated code only

Development

python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"

# Test
pytest tests/ -v --cov=pyspark_tools

# Format
black pyspark_tools tests
isort pyspark_tools tests

# Lint
flake8 pyspark_tools tests

Requires Python 3.11+ (matches the CI matrix).

Architecture

pyspark_tools/
├── server.py              # FastMCP server + helper implementations
├── consolidated_tools.py  # 14 @app.tool() routers
├── sql_converter.py       # SQLGlot-based transpilation + DataFrame API generation
├── aws_glue_integration.py # Glue job templates, DynamicFrame, Data Catalog
├── advanced_optimizer.py  # Performance analysis + optimization suggestions
├── batch_processor.py     # Concurrent file processing
├── code_reviewer.py       # PySpark code review patterns
├── duplicate_detector.py  # Code deduplication
├── data_source_analyzer.py # Data source analysis (optional boto3)
└── file_utils.py          # File I/O with allow-root checks

License

MIT — see LICENSE.


mcp-name: io.github.AnnasMazhar/pyspark-mcp

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
Categories
Cloud & Infrastructure
Registryactive
Packagepyspark-tools
TransportSTDIO
UpdatedMay 9, 2026
View on GitHub

Related Cloud & Infrastructure MCP Servers

View all →
autario avatar
Autario Data Analytics Platform

autario/data

Access 2,300+ verified public datasets from World Bank, IMF, Eurostat, OECD, WHO, FRED, and more. Search, query, and publish data visualizations with real data. ## What you can do - **Search** across 2,300+ datasets by topic, category, or keyword - **Query** any dataset with filters, sorting, and field selection - **Get schema** and column statistics before querying - **Publish charts** with Plotly specs — Autario pulls real data, no hallucinated values - **Create datasets** and write your own data ## Categories Finance, Trade, Technology, Health, Demographics, Energy, Environment, Infrastructure, E-Commerce ## Setup No setup needed for reading data. For publishing charts, get free API keys at https://autario.com/account ## Links - npm: `npx autario-mcp` - Documentation: https://autario.com/documentation - API: https://autario.com/api/v1/public/datasets
ayushagrawal288 avatar
memex

ayushagrawal288/memex

Persistent memory for AI agents — semantic + recency search, ONNX embeddings, Docker Compose.
carbon-arc avatar
Carbon Arc

carbon-arc/mcp

The infrastructure for the AI economy: primitives for inference, agents, and decisions.
chicogonzales avatar
Plith

chicogonzales/plith

AI agent infrastructure: dedup, cost prediction, validation, governance, failure intelligence.
ciprianpater avatar
srv-d7aoqmh5pdvs7391dcqg

ciprianpater/srv-d7aoqmh5pdvs7391dcqg

# NWO Robotics MCP Server Control real robots, IoT devices, and autonomous agent swarms through natural language — powered by the [NWO Robotics API](https://nwo.capital). --- ## What This Server Does This MCP server exposes the full NWO Robotics API as 64 ready-to-use tools. Any MCP-compatible AI agent (Claude, ChatGPT, Cursor, etc.) can use it to: - Send natural language instructions to physical robots - Run Visual-Language-Action (VLA) inference on live camera feeds - Plan, validate, and execute multi-step robot tasks - Monitor sensors, detect slip, and fuse multi-modal data - Train robots online with reinforcement learning - Register and manage agent identities on Base mainnet via the Cardiac biometric ID system No local installation needed. The server runs on Render and is ready to connect. --- ## Tools Overview ### 🤖 VLA Inference & Models Run Vision-Language-Action inference on any supported robot. Send a text instruction and camera images, receive joint action vectors in real time. Supports auto model routing, ultra-low-latency Cloudflare edge inference (28ms avg), and WebSocket streaming at up to 50Hz. `vla_inference` · `edge_inference` · `list_models` · `get_model_info` · `get_streaming_config` --- ### 🦾 Robot Control & State Query live robot state (joint angles, gripper, battery, position), execute pre-computed action sequences, and fuse camera + lidar + thermal + force + GPS sensor inputs into a single inference call. `query_robot_state` · `execute_actions` · `sensor_fusion` · `robot_query` · `get_agent_status` --- ### 🗺️ Task Planning & Learning Decompose complex instructions into ordered subtasks, execute them step by step, poll progress, and log outcomes so the model learns and improves with every run. `task_planner` · `execute_subtask` · `status_poll` · `learning_recommend` · `learning_log` --- ### 🔑 Agent Management Self-register a new AI agent in under 2 seconds, check your monthly API quota, upgrade tiers by paying ETH, and manage robot registrations and capabilities. | Tier | Calls/month | Cost | |------|-------------|------| | Free | 100,000 | $0 | | Prototype | 500,000 | ~0.015 ETH/mo | | Production | Unlimited | ~0.062 ETH/mo | `register_agent` · `check_balance` · `pay_upgrade` · `create_wallet` · `register_robot` · `update_agent` · `get_agent_info` --- ### 🔍 Agent Discovery Discover all available execution modes (mock / simulated / live), robot types, VLA models, and sensor capabilities. Validate tasks with a dry-run before committing to execution. `nwo_health` · `nwo_whoami` · `discover_capabilities` · `dry_run` · `plan_task` --- ### 🔌 ROS2 Bridge (Physical Robots) Connect directly to physical robots over the ROS2 bridge. Send joint commands, submit action sequences, and trigger emergency stops on one or all robots within 10ms. Supported: UR5e, Panda, Spot, Unitree G1, and more. `ros2_list_robots` · `ros2_robot_status` · `ros2_send_command` · `ros2_submit_action` · `ros2_emergency_stop` · `ros2_emergency_stop_all` · `ros2_get_robot_types` --- ### 🧪 Physics Simulation Simulate trajectories, check for collisions, estimate joint torques, validate grasps, and plan collision-free motions with MoveIt2 — before touching real hardware. `simulate_trajectory` · `check_collision` · `estimate_torques` · `validate_grasp` · `plan_motion` · `get_scene_library` · `generate_scene` --- ### 📐 Embodiment & Calibration Browse the robot embodiment registry (DOF, joint limits, sensors), download URDF models, get normalization parameters for VLA inference, and run automatic joint calibration. `list_embodiments` · `get_robot_specs` · `get_normalization` · `download_urdf` · `get_test_results` · `compare_robots` · `run_calibration` · `calibrate_confidence` --- ### 🧠 Online RL & Fine-Tuning Start online reinforcement learning sessions, stream state/action/reward telemetry, build fine-tuning datasets from logged runs, and launch LoRA fine-tuning jobs on any base VLA model. `start_rl_training` · `submit_rl_telemetry` · `create_finetune_dataset` · `start_finetune_job` --- ### 🖐️ Tactile Sensing (ORCA Hand) Read 256-taxel tactile sensor arrays from the ORCA robot hand, assess grip quality and object texture, and detect slip in real time to prevent dropped objects. `read_tactile` · `process_tactile` · `detect_slip` --- ### 📦 Dataset Hub Access 1.54 million+ human robot demonstrations for the Unitree G1 humanoid (430+ hours, LeRobot-compatible format) for training and fine-tuning. `list_datasets` --- ### 🫀 Cardiac Blockchain Identity (Base Mainnet) Register AI agents on Base mainnet and receive a permanent soul-bound Digital ID (`rootTokenId`). Issue verifiable credentials for task authorization, swarm control, location access, and payments — all gasless via the NWO relayer. Smart contracts deployed on Base Mainnet (Chain ID 8453): - `NWOIdentityRegistry` — `0x78455AFd5E5088F8B5fecA0523291A75De1dAfF8` - `NWOAccessController` — `0x29d177bedaef29304eacdc63b2d0285c459a0f50` - `NWOPaymentProcessor` — `0x4afa4618bb992a073dbcfbddd6d1aebc3d5abd7c` `cardiac_register_agent` · `cardiac_identify_agent` · `cardiac_renew_key` · `cardiac_issue_credential` · `cardiac_check_credential` · `cardiac_grant_access` · `cardiac_get_nonce` · `cardiac_check_access` · `cardiac_payment_process` --- ### 🔮 Cardiac Oracle Validate ECG biometric data from smartwatches to authenticate human identities, compute cardiac hashes, and verify recent validations. `oracle_health` · `oracle_validate_ecg` · `oracle_hash_ecg` · `oracle_verify` --- ## Supported Robot Models | Model | Type | Capabilities | |-------|------|--------------| | `xiaomi-robotics-0` | VLA | Grasp, navigate, manipulate | | `pi05` | VLA | General manipulation | | `groot_n1.7` | VLA | Humanoid control | | `deepseek-ocr-2b` | OCR | Label reading, text recognition | --- ## Example Usage **Pick and place:** > "Pick up the red box from the table and place it on shelf B" **Sensor query:** > "What is the temperature in warehouse zone 3?" **Safety:** > "Run a safety check before moving robot_001 to the loading dock" **Swarm:** > "Deploy all available robots to patrol the perimeter" **Learning:** > "What grip technique should I use for fragile glass objects?" --- ## Links - 🌐 [NWO Capital](https://nwo.capital) - 📄 [Agent Skill File](https://nwo.capital/webapp/agent.md) - 📖 [API Docs](https://nwo.capital/webapp/nwo-robotics.html) - 🧬 [Cardiac SDK](https://github.com/RedCiprianPater/nwo-cardiac-sdk) - 🔑 [Get API Key](https://nwo.capital/webapp/api-key.php) - 🤗 [Live Demo](https://huggingface.co/spaces/PUBLICAE/nwo-robotics-api-demo) - 📜 [OpenAPI Spec](https://nwo.capital/openapi.yaml) --- ## Support 📧 support@nwo.capital
cmcgrabby-hue avatar
Syndicate Links

cmcgrabby-hue/syndicate-links

Commission infrastructure for AI commerce — program discovery, attribution, and settlement.