Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Zenkit

БесплатноНе проверен

Enables managing Zenkit collections and entries through natural language commands, including listing, creating, updating, and deleting entries.

GitHubEmbed

Описание

Enables managing Zenkit collections and entries through natural language commands, including listing, creating, updating, and deleting entries.

README

Direct Zenkit API access for Claude Desktop. Full control via single universal tool.

Installation

Quick Start

git clone https://github.com/wbgrds/mcp-zenkit.git
cd mcp-zenkit
npm install
npm run build

Claude Desktop Configuration

Edit ~/.config/Claude/claude_desktop_config.json (macOS/Linux) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "zenkit": {
      "command": "node",
      "args": ["/path/to/mcp-zenkit/dist/index.js"],
      "env": {
        "ZENKIT_API_KEY": "your-zenkit-api-key"
      }
    }
  }
}

Get your API key from Zenkit Developer Settings.

Restart Claude Desktop after configuration.


Usage

Single tool: zenkit(method, path, body)

Get Workspaces

zenkit('GET', '/workspaces')

Response: All workspaces + lists

Get Lists in Workspace

zenkit('GET', '/workspaces/123')

Get List Fields (Elements)

zenkit('GET', '/lists/123/elements')

Returns: Field names, UUIDs, types, predefined values (for categories)

List Entries

zenkit('POST', '/lists/123/entries', {
  limit: 100,
  skip: 0
})

Create Entry

zenkit('POST', '/lists/123/entries', {
  title: "My Task",
  description: "Optional description",
  properties: {
    "field-uuid-1": "value",
    "field-uuid-2": 123,
    "field-uuid-3": ["array", "of", "values"]
  }
})

To find field UUIDs: zenkit('GET', '/lists/123/elements')

Update Entry

zenkit('PATCH', '/lists/123/entries/entry-uuid', {
  title: "Updated Title",
  properties: {
    "field-uuid": "new-value"
  }
})

Delete Entry

zenkit('DELETE', '/lists/123/entries/entry-uuid')

Architecture

Version 2.0 (Approach B: Raw API)

  • One universal tool zenkit(method, path, body)
  • Direct pass-through to Zenkit API
  • No abstraction layer, no hidden logic
  • Token-based auth = full account control

What changed from v1:

  • Removed: zenkit_create_entry, zenkit_update_entry, zenkit_get_entries, etc.
  • Added: Single zenkit tool for all operations
  • Benefit: Works for any Zenkit API endpoint (present + future)

API Reference

Full Zenkit API docs: https://zenkit.com/api/

Common Endpoints

Operation Method Path Body
List workspaces GET /workspaces
Get workspace GET /workspaces/{id}
List entries POST /lists/{id}/entries {limit, skip}
Get fields GET /lists/{id}/elements
Create entry POST /lists/{id}/entries {title, properties}
Update entry PATCH /lists/{id}/entries/{uuid} {title, properties}
Delete entry DELETE /lists/{id}/entries/{uuid}

Examples

Workflow: Create and Update

1. zenkit('GET', '/workspaces')
   → Find workspace ID

2. zenkit('GET', '/lists/123/elements')
   → Find field UUIDs you need

3. zenkit('POST', '/lists/123/entries', {
     title: 'New Task',
     properties: { 'field-uuid': 'value' }
   })
   → Create entry, get entry UUID back

4. zenkit('PATCH', '/lists/123/entries/entry-uuid', {
     title: 'Updated Task'
   })
   → Update the entry

Working with Categories (Dropdowns)

When predefinedValues are present in get_list_fields response, they are category options:

{
  "name": "Status",
  "uuid": "a1b2c3d4-...",
  "predefinedValues": [
    { "id": 1, "name": "Draft" },
    { "id": 2, "name": "In Progress" },
    { "id": 3, "name": "Done" }
  ]
}

Use the id value when setting properties:

zenkit('POST', '/lists/123/entries', {
  title: 'Task',
  properties: {
    'a1b2c3d4-...': 2  // ← Category ID for "In Progress"
  }
})

Troubleshooting

Error: "ZENKIT_API_KEY is required"

Make sure environment variable is set:

  • Check claude_desktop_config.json has ZENKIT_API_KEY in env
  • Restart Claude Desktop
  • Check API key is valid (from Zenkit Developer Settings)

Error: "Zenkit API error 404"

Path is wrong or resource doesn't exist.

  • Check path syntax: /lists/123/entries (not lists/123/entries)
  • Verify list ID, entry UUID, etc. exist
  • Use zenkit('GET', '/workspaces') to discover IDs

Error: "Field UUID not found"

When setting properties, make sure UUID is correct:

zenkit('GET', '/lists/123/elements')  // Get correct UUIDs first

Environment Variables

  • ZENKIT_API_KEY (required): Zenkit API token
  • ZENKIT_API_BASE (optional): Override API base URL (default: https://base.zenkit.com/api/v1)

Development

# Install dependencies
npm install

# Build TypeScript
npm run build

# Run locally (requires ZENKIT_API_KEY env var)
ZENKIT_API_KEY=xxx npm run start

License

MIT

Support


Complete Documentation

from github.com/wbgrds/mcp-zenkit

Установка Zenkit

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/wbgrds/mcp-zenkit

FAQ

Zenkit MCP бесплатный?

Да, Zenkit MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Zenkit?

Нет, Zenkit работает без API-ключей и переменных окружения.

Zenkit — hosted или self-hosted?

Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.

Как установить Zenkit в Claude Desktop, Claude Code или Cursor?

Открой Zenkit на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Zenkit with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории development