Clappia Mcp

io.github.clappia-dev由 GitHub 账号 clappia-dev 发布v1.0.1更新于 Oct 24, 2026

An MCP server that provides Clappia workspace, forms, workflows, submissions, and analytics

概览

AI 生成的概览

一个 MCP 服务器,将助手连接到 Clappia 无代码平台,用于管理应用、表单、字段、提交记录和分析。

可以做什么
创建并查看 Clappia 应用,包括分区、字段定义、元数据和布局选项。添加和更新字段,包括校验规则、显示与可编辑条件以及响应式布局设置。创建、编辑并检索表单提交记录,支持筛选和分页。更改提交状态并可附加评论,按邮箱重新分配提交负责人。按自定义维度获取提交聚合数据用于分析。
适用场景
适用于运营或业务团队在 Clappia 上运行表单、巡检应用或审批流程,并希望助手在不使用网页界面的情况下构建应用结构、填写或更新提交记录、或获取聚合结果的场景。
运行要求
作为本地 Python 进程运行(需要 Python 3.8 或更高版本、uv 包管理器),也可使用已发布的 Docker 镜像,由 Claude for Desktop 等 MCP 客户端启动。需要一个具有工作区管理员权限的 Clappia 工作区、工作区 ID,以及通过 CLAPPIA_API_KEY 环境变量提供的 API 密钥。需要通过网络以 HTTPS 访问 Clappia API。
安装前请注意
该 API 密钥可访问工作区的应用和提交数据,应妥善保管并避免共享配置文件。服务器可以创建和修改应用、字段和提交记录,更改状态并重新分配负责人,因此误操作会影响实际运营数据。提交数据(包括字段值和邮箱地址)会发送到 Clappia 的 API。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Clappia Mcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Clappia MCP (Model Context Protocol)

A Python-based MCP server that provides a comprehensive interface for interacting with the Clappia platform. This server enables programmatic management of Clappia applications, forms, submissions, and more.

Clappia is a no-code platform that allows businesses, operations teams, and non-developers to create custom apps—like inspection forms, approval workflows, field data collection tools, internal dashboards, and more—without writing a single line of code. It's used across industries for automating manual processes, digitizing paperwork, and improving operational efficiency. Click here to learn more.

Features

  • App Management

    • Create new Clappia apps with customizable sections and fields

    • Retrieve detailed app definitions with field metadata

  • Submission Management

    • Create new submissions with field data
    • Edit existing submissions with validation
    • Update submission status with optional comments
    • Manage submission owners with email-based assignments
    • Retrieve submissions with advanced filtering and pagination
    • Get submission aggregations for analytics with customizable dimensions
  • Field Management

    • Add new fields with comprehensive configuration options
    • Update field properties including validation, display conditions, and layout
    • Configure field validations (number, email, URL, custom)
    • Set up conditional logic for field display and editability
    • Manage field layouts with responsive design options

Prerequisites

  • Python 3.8 or higher
  • uv python package manager
  • Access to Clappia API Key and Workplace ID
  • Claude for Desktop (or any other MCP Clients)

Installation

  1. Set up Clappia API Access:

    • Visit your Workplace in Clappia (https://<your_workplace>.clappia.com), you need to have Workplace Manager Access to this Workplace.
    • Visit Workplace Settings. Note your Workplace ID.
    • Visit Workplace Settings -> Preferences -> API Keys. Note your API Key, generate one if it is not yet generated.
  2. Set up Claude for Desktop:

    • Download Claude for Desktop for macOS or Windows
    • Install and launch Claude for Desktop
    • Open Claude menu → Settings → Developer → Edit Config
    • Add the following configuration to claude_desktop_config.json:
      json
      {   "mcpServers": {      "clappia-mcp": {         "command": "uv",         "args": [            "--directory",            "/Users/<YOUR_DIECTORY>/Desktop/clappia-mcp",            "run",            "clappia-mcp.py"         ],         "env": {            "CLAPPIA_API_KEY": "<ENTER_YOUR_WORKPLACE_API_KEY_HERE>",            "CLAPPIA_WORKPLACE_ID": "<ENTER_YOUR_WORKPLACE_ID_HERE>"         }      }   }}
    • Restart Claude for Desktop
    • Verify the MCP server is running by checking for the tools icon in the input box
  3. Clone the repository:

    bash
    git clone https://github.com/clappia-dev/clappia-mcp.gitcd clappia-mcp
  4. Set up Python Environment:

    bash
    # Install uv if not already installedcurl -LsSf https://astral.sh/uv/install.sh | sh
    # Install dependenciesuv sync

Project Structure

clappia-mcp/├── clappia-mcp.py          # Main MCP server implementation├── tools/                  # Core functionality modules│   ├── add_field.py        # Field addition functionality│   ├── create_app.py       # App creation functionality│   ├── create_submission.py # Submission creation│   ├── edit_submission.py  # Submission editing│   ├── get_definition.py   # App definition retrieval│   ├── get_submissions.py  # Submission retrieval│   ├── get_submissions_aggregation.py # Analytics functionality│   ├── update_field.py     # Field update functionality│   ├── update_submission_owners.py # Owner management│   └── update_submission_status.py # Status management├── pyproject.toml         # Project metadata and dependencies├── uv.lock               # Dependency lock file (if using uv)└── .env                  # Environment variables

Usage

  • The server will automatically start when Claude Desktop launches
  • Access tools through the Claude Desktop interface

Troubleshooting

  1. Server Not Starting:

    • Check Claude Desktop logs for errors
    • Verify Python environment is activated
    • Ensure all dependencies are installed
    • Check environment variables are set correctly
  2. API Connection Issues:

    • Verify API credentials in claude_desktop_config.json file
    • Check network connectivity
    • Review API rate limits
  3. Tool Execution Failures:

    • Check server logs for detailed error messages
    • Verify input parameters match API requirements
    • Ensure proper permissions for API operations

Example API Calls

  1. Create a New Application

    python
    from tools.create_app import create_app, Section, Field
    result = create_app(    app_name="Employee Survey",    requesting_user_email_address="[email protected]",    sections=[        Section(            sectionName="Personal Information",            fields=[                Field(                    fieldType="singleLineText",                    label="Full Name",                    required=True                )            ]        )    ])
  2. Add a Field to an Application

    python
    from tools.add_field import add_field_to_app
    result = add_field_to_app(    app_id="APP123",    requesting_user_email_address="[email protected]",    section_index=0,    field_index=1,    field_type="singleLineText",    label="Employee ID",    required=True,    validation="number",    block_width_percentage_desktop=50,    block_width_percentage_mobile=100)
  3. Update a Field

    python
    from tools.update_field import update_field_in_app
    result = update_field_in_app(    app_id="APP123",    requesting_user_email_address="[email protected]",    field_name="employeeName",    label="Full Employee Name",    required=True,    validation="none",    display_condition="status == 'active'")
  4. Create a Submission

    python
    from tools.create_submission import create_app_submission
    result = create_app_submission(    app_id="APP123",    data={"employeeName": "John Doe", "employeeId": "12345"},    email="[email protected]")
  5. Get Submissions with Filtering

    python
    from tools.get_submissions import get_app_submissions, Filters, QueryGroup, Query, Condition
    filters = Filters(queries=[    QueryGroup(queries=[        Query(            conditions=[                Condition(                    operator="EQ",                    filterKeyType="STANDARD",                    key="status",                    value="active"                )            ],            operator="AND"        )    ])])
    result = get_app_submissions(    app_id="APP123",    requesting_user_email_address="[email protected]",    page_size=10,    filters=filters)

API Documentation

Field Types

  • Text Fields

    • singleLineText: Single line text input
    • multiLineText: Multi-line text input
    • richTextEditor: Rich text editor with formatting
  • Selector Fields

    • singleSelector: Single choice selection
    • multiSelector: Multiple choice selection
    • dropDown: Dropdown selection
  • Date/Time Fields

    • dateSelector: Date selection
    • timeSelector: Time selection
    • dateTime: Combined date and time selection
  • File Fields

    • file: File upload with configurable types
    • camera: Direct camera capture
    • signature: Digital signature capture
  • Advanced Fields

    • calculationsAndLogic: Formula-based calculations
    • gpsLocation: Location tracking
    • codeScanner: Barcode/QR code scanning
    • nfcReader: NFC tag reading
    • liveTracking: Real-time location tracking
    • address: Address input with validation

Validation Types

  • none: No validation
  • number: Numeric validation
  • email: Email format validation
  • url: URL format validation
  • custom: Custom validation rules

Field Properties

  • Layout

    • block_width_percentage_desktop: Width on desktop (25, 50, 75, 100)
    • block_width_percentage_mobile: Width on mobile (50, 100)
    • number_of_cols: Number of columns for selector fields
  • Behavior

    • required: Whether field is mandatory
    • is_editable: Whether field can be edited
    • hidden: Whether field is hidden
    • retain_values: Whether to retain values when hidden
  • Conditions

    • display_condition: Condition for field visibility
    • editability_condition: Condition for field editability
  • File Settings

    • allowed_file_types: List of allowed file types
    • max_file_allowed: Maximum files allowed (1-10)
    • image_quality: Image quality (low, medium, high)
    • file_name_prefix: Prefix for uploaded files

Error Handling

The server implements comprehensive error handling for:

  • Invalid API credentials
  • Network connectivity issues
  • Invalid input parameters
  • API rate limiting
  • Server errors

All errors are logged with appropriate context for debugging.

Security

  • API keys are stored in environment variables
  • All API calls are made over HTTPS
  • Input validation is implemented for all parameters
  • Rate limiting is supported
  • Error messages are sanitized

Performance Considerations

  • Connection pooling for API requests
  • Efficient payload construction
  • Proper resource cleanup
  • Logging optimization
  • Error handling optimization

Support

For support, please:

  1. Check the documentation
  2. Review existing issues
  3. Create a new issue if needed

License

This project is licensed under the MIT License - see the LICENSE file for details.

API Integration

Clappia Public API

The MCP server integrates with Clappia's public API to provide the following capabilities:

  1. Authentication:

    • API key-based authentication
    • Secure credential management
    • Rate limiting support
  2. Endpoints:

    • Application management
    • Form submissions
    • Field operations
    • User management
    • Analytics and reporting
  3. API Documentation:

    • Visit Clappia Developer Portal for:
      • API reference
      • Authentication guide
      • Rate limits
      • Best practices
      • Example implementations
  4. API Versioning:

    • Current stable version: v1
    • Backward compatibility maintained
    • Deprecation notices provided

来源:README.md,提交 9b8c000

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.0.1最新Sep 16, 2026

评分

已满足适用检查项的 40%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。