smarter-sheet-processor-service
An MCP endpoint providing comprehensive programmatic interaction with Smartsheet environments. It orchestrates automated data workflows, facilitates AI-driven analytical processing on clinical or operational datasets, and ensures stringent adherence to organizational data governance policies.
Author

terilios
Quick Info
Actions
Tags
Smartsheet Platform Integration Engine
This server acts as a Model Context Protocol (MCP) bridge, enabling sophisticated, automated manipulation and deep analysis of data residing within Smartsheet workbooks. It is engineered to support high-integrity operations, particularly in regulated sectors like healthcare, by enforcing validation and preserving formulaic integrity during modifications.
Core Functionality Overview
This service centralizes the execution of data lifecycle management tasks within Smartsheet, ranging from schema adjustments to complex analytical computations. It is designed to be the programmatic interface for AI agents interacting with spreadsheet-based operational data.
Value Proposition for Enterprise Use
- Integrity Assurance: Strict validation layers prevent data corruption during bulk writes or structure alterations.
- AI Enrichment: Leverages large language models (via Azure OpenAI) to derive actionable insights from unstructured text fields (e.g., clinical narratives, feedback logs).
- Formula Safety: Automatically maps and relocates dependent formulas when columns are manipulated.
- Governance Alignment: Supports complex domain-specific scoring, crucial for regulatory compliance in healthcare analytics (e.g., protocol adherence, resource efficiency tracking).
Feature Set Index (34 Operations)
This engine exposes 34 distinct operational tools categorized below:
| Category | Tool Count | Key Examples |
|---|---|---|
| Data Manipulation | 5 | smartsheet_write, smartsheet_update, smartsheet_delete |
| Schema & Metadata | 4 | smartsheet_add_column, smartsheet_rename_column, get_column_map |
| Advanced Querying | 2 | smartsheet_search, get_all_row_ids |
| Structural Navigation | 5 | list_workspaces, create_workspace, get_workspace |
| Attachment Handling | 4 | smartsheet_upload_attachment, smartsheet_download_attachment |
| Discussion Management | 4 | smartsheet_create_discussion, smartsheet_add_comment |
| Audit & History | 2 | smartsheet_get_cell_history, smartsheet_get_row_history |
| Cross-Sheet Logic | 4 | smartsheet_validate_cross_references, smartsheet_create_cross_reference |
| AI Analytics Engine | 3 | start_batch_analysis, get_job_status, cancel_batch_analysis |
| System Prompts | 1 | get_prompt (Accesses 6 pre-defined analytical/setup guides) |
AI Analytical Capabilities (start_batch_analysis)
This specialized tool enables asynchronous analysis of sheet data, chunking content intelligently to respect LLM token limits. It supports predefined analysis profiles or fully customized instructions.
- Profiles:
summarize,sentiment,custom. - Healthcare Focus: Scoring clinical protocols, assessing operational efficiency metrics, and quantifying research impact.
- Performance: Executes in optimized micro-batches (3 rows at a time) for throughput maximization.
Operational Resources
Static configuration blueprints and dynamically generated data views are accessible via dedicated URIs:
Static Blueprints (4)
smartsheet://templates/project-plan: Standardized task management blueprint.smartsheet://schemas/column-types: Exhaustive reference for API-supported data types.smartsheet://best-practices/formulas: Repository of optimized formula patterns.
Dynamic Views (5)
smartsheet://{sheet_id}/summary: Real-time sheet health and KPI aggregation.smartsheet://{sheet_id}/gantt-data: Structured output tailored for Gantt visualization.smartsheet://{sheet_id}/health-report: Data quality analysis identifying integrity gaps.
Deployment & Execution
The service supports two primary communication mechanisms:
- Standard I/O (STDIO): Default for local execution or integration within command-line tooling environments (requires Node.js runtime and an isolated Python environment).
- HTTP Endpoint: Enables remote access for web-based or network-bound MCP clients.
Environmental Requirements
Successful operation mandates the presence of:
- Node.js (LTS versions supported: 16, 18, 20).
- Python (3.8+ for the operational backend).
- Smartsheet API Authentication Token.
- Azure OpenAI Credentials (Required for AI feature execution).
Initializing the Runtime
Environment setup prioritizes isolation via Conda for Python dependencies:
bash
1. Setup Isolated Environment
conda create -n sheet_env python=3.11 nodejs -y conda activate sheet_env
2. Install Node Dependencies
npm install
3. Install Python Dependencies (from within smartsheet_ops directory)
pip install -e .
Dependencies include: smartsheet-python-sdk, openai, tiktoken
4. Compile Server
npm run build
Running in STDIO Mode (Default)
Initiate the compiled server to listen for MCP commands over standard streams, typically managed by a supervising client (like Cline):
bash
Example startup command on Linux/macOS
PYTHON_PATH=/path/to/sheet_env/bin/python3 SMARTSHEET_API_KEY=... node build/index.js --transport stdio
Quality Assurance and Maintenance
Continuous integration is managed via an extensive 8-stage GitHub Actions pipeline ensuring stability across dual-language components (TypeScript/Python).
Key CI Stages: TypeScript Linting, Python Static Analysis, Unit Testing Matrix (Node 16/18/20 & Python 3.8-3.11), Combined Code Coverage via Codecov, Security Audits (npm audit, Bandit), and Integration Testing.
Developers must adhere to a minimum coverage threshold (80% for Python logic) and pass all static analysis checks before merging. Reference the repository's CI workflow definition for the full execution sequence.
