Kommo CRM

Manage Kommo CRM leads, contacts, pipelines, tasks, notes, tags and companies.

OtherPythonv1.0.5

kommo-kiro-power — Kommo CRM Power for Kiro

Connect AI agents to your Kommo CRM (formerly amoCRM) using the Model Context Protocol. Manage leads, contacts, pipelines, tasks, notes, tags, and companies — all from natural language in Kiro or any MCP-compatible client.

Features

CategoryTools
Leadslist, get, create, update, delete, move stage, bulk update
Contactslist, get, create, update
Pipelineslist, create, update
Stageslist, create, update
Tagslist, add, remove (auto-creates if needed)
Taskscreate, list (with overdue filter)
Notesadd note to lead
Chatlist templates, send message
Companiescreate, list
Custom Fieldslist, create (text, select, multiselect, date, etc.)
Advancedcreate lead + contact + company in one call

Quick Start

Install as Kiro Power

  1. Open Kiro → Powers panel → Add Custom Power
  2. Select Import power from GitHub
  3. Paste: https://github.com/depper-IA/kommo-kiro-power
  4. Follow the onboarding steps when activated

Install as standalone MCP

Published on PyPI and the official MCP Registry. With uv installed, no clone is needed:

uvx --from kommo-kiro-power kommo-mcp

Or install the one-click MCPB bundle (kommo-crm.mcpb) in Claude Desktop or any MCPB-compatible client. Bundle sources live in mcpb/. After changing tools, run python scripts/build_mcpb.py to sync the manifest, then pnpm dlx @anthropic-ai/mcpb pack mcpb kommo-crm.mcpb. For Smithery, python scripts/build_mcpb.py --smithery kommo-crm-smithery.mcpb builds a variant that also carries each tool's inputSchema.

Or from source:

git clone https://github.com/depper-IA/kommo-kiro-power.git
cd kommo-kiro-power
pip install -e .

Setup

1. Create a Kommo Integration

  1. Go to Kommo → Settings → Integrations → Create integration
  2. Copy the Client ID and Client Secret
  3. Set http://localhost:8080/callback as the Redirect URI

2. Configure Credentials

cp .env.example .env
# Edit .env with your Kommo integration details

3. Authenticate (OAuth)

python scripts/oauth_setup.py

A browser opens → sign in to Kommo → authorize → tokens saved automatically.

4. Run the MCP Server

python -m kommo_mcp
# or
kommo-mcp

Usage with Kiro

Once installed as a Power, the server activates automatically when you mention keywords like "kommo", "leads", "pipeline", "crm", or "contacts" in your conversation.

"Show me all leads in the Sales pipeline"
"Create a lead for Maria from TechCorp with phone +57 310 543 6281"
"Move lead 12345 to the Negotiation stage"
"List all overdue tasks"

Usage with Other MCP Clients

Add to your claude_desktop_config.json, opencode.json, or equivalent:

{
  "mcpServers": {
    "kommo": {
      "command": "uvx",
      "args": ["--from", "kommo-kiro-power", "kommo-mcp"],
      "env": {
        "KOMMO_SUBDOMAIN": "your_subdomain",
        "KOMMO_ACCESS_TOKEN": "your_access_token"
      }
    }
  }
}

Architecture

kommo-kiro-power/
├── plugin.json           # Kiro Power manifest (Agent Plugins format)
├── POWER.md              # Legacy Kiro Power metadata + onboarding
├── mcp.json              # MCP server config for Kiro
├── server.json           # Official MCP Registry metadata
├── skills/               # Workflow guides loaded on-demand
│   ├── leads-workflow/SKILL.md
│   ├── pipeline-management/SKILL.md
│   └── automation-patterns/SKILL.md
├── kommo_mcp/            # Python MCP server
│   ├── __main__.py       # Entry point (stdio transport)
│   ├── mcp_server.py     # Server + tool registration
│   ├── kommo_client.py   # HTTP client (OAuth, retry, cache)
│   └── tools/            # Tool definitions + handlers
│       ├── leads.py
│       ├── contacts.py
│       └── pipelines.py
├── scripts/
│   └── oauth_setup.py    # One-time OAuth authentication
├── pyproject.toml        # Package config
└── requirements.txt

Security

  • Credentials read from .env — never hardcoded
  • .env is in .gitignore — never committed
  • OAuth v4 with automatic token refresh
  • Rate limiting: max 5 requests/second
  • Exponential backoff with jitter on failures
  • Response caching for pipelines/stages/fields (10 min TTL)

Compatibility

  • Python: 3.10, 3.11, 3.12, 3.13
  • MCP Clients: Kiro, Claude Desktop, OpenCode, Cursor, Codex
  • Kommo API: v4

Privacy

The server runs locally on your machine and talks only to your own Kommo account API. It has no telemetry and sends no data to the author or any third party. See PRIVACY.md.

Support

License

MIT

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
uvx kommo-kiro-power

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-depper-ia-kommo-kiro-power": {
      "command": "uvx",
      "args": [
        "kommo-kiro-power"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

kommo-kiro-powerpypi

Compatible MCP Clients

Kommo CRM works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More