Seatable Mcp

by brianmoney

460 downloads Not rated yet

About

A comprehensive Model Context Protocol (MCP) server for SeaTable that exposes end‑to‑end database capabilities (schema introspection, CRUD, querying, linking, select option management, and file attachment stubs) through 18+ rigorously defined tools. You can run it:

Explore

- Complete CRUD Operations: Create, read, update, delete rows and tables
- Advanced Querying: Client-side filtering with DSL and raw SQL support
- Schema Management: Create, modify, and delete tables and columns
- Safe SQL Execution: Parameterized queries with injection protection
- Real-time Health Monitoring: Connection status and latency tracking
- Production Ready: Comprehensive error handling and logging
- Mock Mode: In-memory testing without live SeaTable connection

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Seatable Mcp
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

No installation required! This MCP server can be used directly with npx -y @aspereo/mcp-seatable.

Alternatively, you can install globally:

npm install -g @aspereo/mcp-seatable

git clone https://github.com/brianmoney/mcp-seatable
cd mcp-seatable
npm install
npx wrangler deploy

npx mcp-remote https://your-worker-name.your-account.workers.dev/sse


Features:

- ✅ Persistent sessions with Durable Objects
- ✅ Both SSE (/sse) and Streamable HTTP (/mcp) transports
- ✅ Automatic scaling and global distribution
- ✅ Zero cold start issues
- ✅ Built-in health monitoring

npm install -g @aspereo/mcp-seatable
PORT=3001 MCP_SEATABLE_TRANSPORT=sse mcp-seatable

All deployment methods need these environment variables:

- SEATABLE_SERVER_URL - Your SeaTable server (e.g., https://cloud.seatable.io)
- SEATABLE_API_TOKEN - Your SeaTable API token
- SEATABLE_BASE_UUID - Your SeaTable base UUID

Optional:

- SEATABLE_TABLE_NAME - Default table name
- SEATABLE_MOCK=true - Enable mock mode for testing

bash

All configuration is done through environment variables:

- SEATABLE_SERVER_URL - Your SeaTable server URL
- SEATABLE_API_TOKEN - Your SeaTable API token
- SEATABLE_BASE_UUID - Your SeaTable base UUID
- SEATABLE_TABLE_NAME - Optional default table name
- SEATABLE_MOCK - Set to true for offline testing with mock data
- SEATABLE_ACCESS_TOKEN_EXP - Token expiry (default: 1h)
- SEATABLE_TOKEN_ENDPOINT_PATH - Custom token endpoint path if needed

You can also use mcp-seatable as a library in your Node.js applications:

npm install @aspereo/mcp-seatable
import { createMcpServer } from '@aspereo/mcp-seatable'

// Create and start the MCP server
const server = await createMcpServer({
serverUrl: 'https://your-seatable-server.com',
apiToken: 'your-api-token',
baseUuid: 'your-base-uuid',
})

// The server will handle MCP protocol communications

| Feature | Cloudflare Worker | Local SSE Server | Traditional CLI |
| ---------------------- | ---------------------------------- | --------------------------- | ----------------------------- |
| Scalability | ✅ Auto-scaling, global | 📍 Single instance | 📍 Per-client process |
| Session Management | ✅ Durable Objects (persistent) | ⚠️ In-memory (may timeout) | ✅ Direct stdio |
| Network Access | ✅ HTTPS endpoints | ✅ HTTP endpoints | ❌ Local only |
| Cold Starts | ✅ Eliminated with Durable Objects | ✅ Always warm | ❌ Process startup |
| Transport Support | ✅ Both SSE + Streamable HTTP | ✅ SSE only | ✅ stdio only |
| Use Cases | Production, multi-user, web apps | Development, testing, demos | IDE integration, personal use |


npx wrangler deploy                  # Deploy to Cloudflare Workers
npm run cf:secrets:sync             # Sync environment to Worker

Set up complete development environment with VS Code configs and MCP Inspector:

bash

./scripts/setup-test-env.sh


1. Clone this repository
2. Install dependencies:
bash
npm install
3. Copy .env.example to .env and configure your SeaTable settings
4. Run in development mode:
bash
npm run dev

bash

Our server provides 18+ comprehensive tools for complete SeaTable database management:

Test specific MCP tools using the included test script:

```bash

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "seatable mcp": {
            "seatable": {
                "command": "npx",
                "args": [
                    "-y",
                    "@aspereo/mcp-seatable"
                ],
                "env": {
                    "SEATABLE_SERVER_URL": "https://your-seatable-server.com",
                    "SEATABLE_API_TOKEN": "your-api-token",
                    "SEATABLE_BASE_UUID": "your-base-uuid"
                }
            }
        }
    }
}

McpServers

{
    "seatable": {
        "command": "npx",
        "args": [
            "-y",
            "@aspereo/mcp-seatable"
        ],
        "env": {
            "SEATABLE_SERVER_URL": "https://your-seatable-server.com",
            "SEATABLE_API_TOKEN": "your-api-token",
            "SEATABLE_BASE_UUID": "your-base-uuid"
        }
    }
}

mcp-seatable

A comprehensive Model Context Protocol (MCP) server for SeaTable that exposes end‑to‑end database capabilities (schema introspection, CRUD, querying, linking, select option management, and file attachment stubs) through 18+ rigorously defined tools. You can run it:

- As a local CLI (stdio) MCP server
- As an HTTP SSE server for local or remote IDEs
- As a globally distributed Cloudflare Worker (dual transport: /sse + /mcp)

Version 1.0.3 introduces fully explicit Zod schemas for every tool in the Cloudflare Worker path, eliminating earlier adapter ambiguity and ensuring reliable argument delivery across hosts.

> NOTE: As of v1.0.3 the Cloudflare Worker deployment exposes all tools without authentication. Do NOT deploy to a public URL containing sensitive data until OAuth + scoped permissions (planned) are enabled. You can mitigate risk by keeping the Worker URL private or restricting via Cloudflare Access.

🚀 Deployment Options

Option 1: Cloudflare Workers (Recommended for Production)

Deploy your own scalable MCP server on Cloudflare Workers with session persistence and dual transport support:

```bash

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.