KosmoKrator

crm

Affinity MCP Integration for Codex

Connect Affinity to Codex through the local KosmoKrator MCP gateway with scoped tools, credentials, and write policy.

8 functions 6 read 2 write API key auth

Connect Affinity to Codex

Use KosmoKrator as a local MCP proxy for Codex so coding sessions can reach selected integrations with explicit write policy.

Register kosmo mcp:serve as a local stdio server and choose the integration allowlist. The gateway is local, scoped to this integration, and starts with --write=deny so Codex can inspect read-capable tools without receiving write access by default.

Affinity MCP Config for Codex

Keep write access denied or ask-based unless the workspace is trusted.

{
  "mcpServers": {
    "kosmokrator-affinity": {
      "type": "stdio",
      "command": "kosmo",
      "args": [
        "mcp:serve",
        "--integration=affinity",
        "--write=deny"
      ]
    }
  }
}

Run the Gateway Manually

kosmokrator mcp:serve --integration=affinity --write=deny

Why Use KosmoKrator Here

Scoped tools

Expose only Affinity instead of a broad multi-service tool list.

Local credentials

Reuse credentials already configured for the KosmoKrator CLI and Lua runtime.

Write policy

Start read-only, then opt into ask or allow for trusted workspaces.

Affinity Tools Visible to Codex

Codex sees stable MCP tool names generated from the Affinity integration catalog.

MCP toolSource functionTypeDescription
integration__affinity__affinity_list_contacts affinity.affinity_list_contacts Read List contacts from Affinity CRM. Returns contact names, emails, phone numbers, and associated organizations. Use pagination to retrieve large result sets.
integration__affinity__affinity_get_contact affinity.affinity_get_contact Read Get details for a specific contact in Affinity by its ID. Returns the contact's full profile including name, emails, phone numbers, organization, and custom fields.
integration__affinity__affinity_create_contact affinity.affinity_create_contact Write Create a new contact in Affinity CRM. Provide at least a first name or last name. Optionally include email addresses.
integration__affinity__affinity_list_organizations affinity.affinity_list_organizations Read List organizations from Affinity CRM. Returns organization names, domains, and details. Use pagination to retrieve large result sets.
integration__affinity__affinity_get_organization affinity.affinity_get_organization Read Get details for a specific organization in Affinity by its ID. Returns the organization's full profile including name, domain, people, and custom fields.
integration__affinity__affinity_create_organization affinity.affinity_create_organization Write Create a new organization in Affinity CRM. Provide a name (required) and optionally a domain.
integration__affinity__affinity_list_lists affinity.affinity_list_lists Read List all lists in Affinity CRM. Returns list names, types (contact or organization), and ownership details.
integration__affinity__affinity_get_current_user affinity.affinity_get_current_user Read Get the currently authenticated Affinity user's profile. Useful for verifying API credentials and identifying the active account.

Related Affinity Pages