How to connect Smokeball to Claude

Connect Claude Web, Desktop and Cowork to Smokeball MCP. List open matters assigned to me, find contacts for a specific matter, and more using natural language, with authentication handled for you.

Smokeball logoSmokeball
Oauth2

Smokeball is legal practice management software for firms to manage matters, contacts, documents, tasks, and billing. It brings core firm records and workflows into one organized workspace.

164 Tools

Introduction

Claude is Anthropic's AI assistant, available on the web, in the desktop app, and on mobile. Cowork is its agent for knowledge work, and it runs on all of those surfaces too. Connected to your apps, Claude can work with your files and services to accomplish complex tasks on your behalf.

This guide walks you through the easiest and most secure way to connect your Smokeball account to Claude via Composio Connect, enabling it to list open matters assigned to me, find contacts for a specific matter, create tasks for overdue Smokeball matters, and more such actions on your behalf without compromising your account security.

Setup is the same on Claude Web, Desktop, and Cowork, and you only need to do it once. The connector is tied to your account, so it's available in all three.

Also integrate Smokeball with

Connecting Smokeball to Claude Web, Desktop, and Cowork

Two ways to add the Composio connector. Pick whichever you prefer.

1. Add with one click

Click the button. Claude opens with the Composio connector filled in. Click Add, then go to step 2.

Add to Claude

Add manually

In Claude Desktop, click Customize in the left sidebar, then select Connectors and click the + icon at the top.

Claude Desktop connectors screen with Add custom connector selected

Click Add custom connector and paste in the Composio MCP server URL:

bash
https://connect.composio.dev/mcp
Add custom connector dialog with Composio MCP server URL

2. Authorize in your browser

Click Connect. You'll be redirected to a browser window where you can authorize Composio to continue.

Composio authorization screen for Claude Web, Desktop, and Cowork

3. Connect your Smokeball account

Back in Claude, ask it to connect to Smokeball or give it any Smokeball-related task.

For example, ask Claude to:

  • "List open matters assigned to me"
  • "Find contacts for a specific matter"
  • "Create tasks for overdue Smokeball matters"

It will prompt you to authenticate and authorize access.

That's it. Composio's tools are now available in Claude, and your Smokeball account is ready to use.

What is the Smokeball Claude Connector, and what's possible with it?

The Smokeball MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Smokeball account. It provides structured and secure access to legal practice management actions for matters, contacts, tasks, documents, billing, and firm records, so your agent can create and organize matters, manage contacts and legal work, add files and notes, and record fees, expenses, and transactions on your behalf.

  • Matter and contact management: Have your agent create matters and contacts, add tags, set up matter folders and layouts, and manage contact relationships and matter roles.
  • Tasks, events, and reminders: Let the agent create tasks and subtasks, schedule calendar events, add event reminders, and link existing documents to tasks.
  • Files, memos, and document previews: Direct your agent to add files to matters, create matter memos, and request PDF previews for current file versions.
  • Billing and financial records: Instruct your agent to record matter fees and expenses, create bank transactions, and submit bank account requisitions.
  • Firm administration: Have your agent create firms, staff members, activity codes, notifications, and webhook subscriptions for Smokeball workflows.

Troubleshooting

1. Why does Claude not use the Composio connector for Smokeball?

The connector can show as connected, but Claude must use it in each Smokeball conversation.

  • Click + at the lower left of the chat, or type /.
  • Hover Connectors.
  • Turn on Composio.
  • Ask Claude to connect to Smokeball again.

2. Why does Claude show an MCP server error before Smokeball connects?

Claude can show Couldn't reach the MCP server or Authorization with the MCP server failed when you add the connector for Smokeball.

  • Check that the connector URL is https://connect.composio.dev/mcp.
  • Connectors run from Anthropic's cloud, so your device network is usually not the problem.
  • Add the connector again from Customize > Connectors, then ask Claude to connect Smokeball.
  • If it fails again, send the error and the ofid_ reference id to support@composio.dev.

3. Why does the Smokeball authorization link not work?

The Composio connector is one server. Your Smokeball account connects separately when Claude asks for it.

  • If the browser does not open, or the link expires, ask Claude to retry the Smokeball connection.
  • Composio creates a fresh Smokeball authorization link.
  • Open that link in your browser and finish the Smokeball sign-in.

4. Why do Smokeball actions fail after they worked before?

The Smokeball connection can expire or lose permission.

  • Ask Claude to inspect the Smokeball connection.
  • If the connection is unhealthy, disconnect it when Claude prompts you.
  • Reconnect the Smokeball account and retry the action.
  • If Claude shows a permission prompt, approve it before Claude changes data in Smokeball.
  • If the action still fails with a permission error, check that the connected account has that permission in Smokeball itself.

5. How do I switch to a different Smokeball account?

Claude can manage the Smokeball connection for you.

  • Ask Claude to disconnect or delete the current Smokeball account.
  • Ask Claude to connect Smokeball again.
  • Open the new Composio authorization link for Smokeball.
  • Sign in with the other Smokeball account in the browser.
  • After the account connects, ask Claude to retry the Smokeball task.

6. Why is my Smokeball connection missing in Claude Desktop or on a Team plan?

The connector belongs to your Claude account, so your Smokeball connection works in Claude Web, Desktop, and Cowork.

  • In Claude Desktop, open Customize > Connectors.
  • Next to Composio, click ⋮ and click Clear cache.
  • If Smokeball tools still do not appear, click ⋮, disconnect, remove the connector, and add it again.
  • On Team or Enterprise, an Owner or Primary Owner must enable the connector before you can connect Smokeball.
TOOLS

Supported Tools

Every Smokeball action and event your agent gets out of the box.

Add Contact Tags

Adds one or more tags to an existing contact by contact id; tags that already exist on the contact are not duplicated by the documented behaviour.

Add Matter File

Register a new matter file and return a sensitive presigned PUT URL valid for 1 hour that authorizes its content upload.

Add Matter Files Batch

Register a migration batch of matter files and return one sensitive presigned PUT URL, valid for 1 hour, per item in request order.

Add Matter Layout

Adds a layout item using a restricted documented subset.

Add Matter Layout Contact

Adds a new contact on a specified layout.

Add Matter Role

Appends a new role in the specified matter.

Add Matter Role Relationship

Appends a new relationship with an existing role in the specified matter.

Add Matter Tags

Adds one or more tags to an existing matter by matter id.

Create Activity Code

Creates an activity code.

Create Authorization Group

Creates an authorization group.

Create Authorization Policy

Creates an authorization policy.

Create Bank Account Requisition

Submit an irreversible financial requisition against a trust account.

Create Bank Account Transaction

Submit an irreversible financial Deposit transaction against the specified bank account and matter, with a dollar amount limited to 2 decimal places and an effective date.

Create Contact

Creates a contact.

Create Contact Relation

Creates a relation for a specified contact.

Create Event

Creates a calendar event.

Create Event Reminder

Creates a new reminder for an event.

Create File Preview

Get or request a PDF preview of the current file version.

Create Firm

Creates a firm for the current authenticated client and registers an existing user as a staff member and firm owner.

Create Matter

Creates a new matter or Lead.

Create Matter Expense

Creates an expense for the specified matter.

Create Matter Fee

Creates a fee for the specified matter.

Create Matter Folder

Creates a new folder under the specified matter.

Create Matter Memo

Creates a memo on the specified matter.

Create Notification

Send a notification to the specified staff member, including its displayed message and optional toast message, icons, color, and Smokeball action URI.

Create Staff Member

Creates a staff member in the firm associated with the authenticated client.

Create Subtask

Creates a subtask for a specified task.

Create Task

Creates a task.

Create Task Document

Links an existing document to the specified task; it does not create a new document.

Create User

Create a persistent user login using Default or Auth0.

Create Webhook Subscription

Create a persistent webhook subscription that sends every selected event type to the external eventNotificationUrl until the subscription is changed or deleted.

Delete Activity Code

Deletes an activity code.

Delete Authorization Group

Delete an authorization group.

Delete Contact

Deletes a specified contact.

Delete Contact Relation

Deletes a relation for a specified contact.

Delete Event

Deletes a specified event.

Delete Event Reminder

Deletes a specified event reminder.

Delete Matter

Deletes a specified matter.

Delete Matter Expense

Deletes an expense.

Delete Matter Fee

Deletes a fee.

Delete Matter File

Deletes a specified matter file.

Delete Matter Folder

Deletes a folder belonging to the specified matter.

Delete Matter Memo

Deletes a specified memo.

Delete Staff Member

Sets the staff member from the firm associated with the authenticated client as a former staff member.

Delete Subtask

Deletes a specified subtask of a specified task.

Delete Task

Deletes a specified task.

Delete Task Document

Unlinks the specified document from the task without deleting the underlying document.

Delete Webhook Subscription

Deletes and unsubscribes from the specified webhook subscription.

Get Activity Code

Retrieves one activity code by id: code, description, type, whether it is billable, rate type and rate, quantity and tax flags.

Get Authorization Group

Retrieves one authorization group by id: its name, the ids of the principals it contains, and whether it is deleted.

Get Authorization Policy

Retrieves one authorization policy by its reference: the principal and resource it binds and its rules.

Get Bank Account

Retrieves one bank account by id: type, status, linked matter, account name and number, bank and branch details.

Get Bank Account Transaction

Retrieves one transaction by bank account id and transaction id, including its type, amount, dates, references, associated matter and payor links, and reversal status.

Get Contact

Retrieves one contact by id.

Get Contact Relation

Retrieves a relation for a specified contact if associated with the authenticated client.

Get Contacts Batch

Return contacts matching up to 500 supplied IDs in request order; nonexistent and other-account IDs are silently omitted.

Get Event

Retrieves one calendar event by id: subject, description, location, type, start and end times in the event timeZone, allDay flag, attendees and the linked matter.

Get File Download Url

Return a sensitive presigned GET URL and metadata for downloading the current or specified version of a matter file.

Get File Preview

Return a sensitive presigned URL to the PDF preview of the file's current version.

Get File Version Preview

Return a sensitive presigned URL to the PDF preview of a specific document version.

Get Firm

Retrieves the details of the firm associated with the authenticated client.

Get Layout Design

Retrieves one layout design by id: its name, description and the list of fields a layout matter item of this design carries.

Get Matter

Retrieves one matter by id with its documented fields, including any item, role, layout, and tag details Smokeball returns for it.

Get Matter Archive

Retrieves the archive record of a matter: whether it is archived, the archived date and location, box number, comments and destroy date.

Get Matter Billing Configuration

Retrieves the billing configuration for the specified matter.

Get Matter Expense

Retrieves one expense on a matter by matter id and expense id: staff, amounts, tax, origin and the invoice it belongs to, if any.

Get Matter Fee

Retrieves one fee on a matter by matter id and fee id: staff, duration or quantity, rate, amounts, tax and the invoice it belongs to, if any.

Get Matter File

Retrieves metadata for a file belonging to the specified matter, including its download-details link.

Get Matter Folder Path

Returns the full folder hierarchy (path) as a collection ordered from the root folder down to the supplied folder.

Get Matter Invoice

Retrieves one invoice on a matter by matter id and invoice id: number, title, status, dates and totals.

Get Matter Invoice Download Url

Return a sensitive download URL, its expiry timestamp, version, and status for the specified invoice.

Get Matter Item

Retrieves one item on a matter by matter id and item id: name, index, visibility and its subItems tree.

Get Matter Layout

Retrieves one layout item on a matter by item id, including its name, description, hierarchy and order, layout design link, values, and events.

Get Matter Memo

Retrieves one memo on a matter by matter id and memo id: title, rich text and plain text, author and dates, and whether it is deleted.

Get Matter Role

Retrieves one role on a matter by matter id and role id: role name, the contact filling it, representatives, relationships and whether it is the client or other side.

Get Matter Role Relationship

Retrieves one relationship on a matter role by relationship id, including its name, associated contact link, and representative links.

Get Matter Stage Info

Retrieves a matter's current stage information, including its stage set, current stage, version id, and last-updated timestamp.

Get Matter Type

Retrieves one matter type by id: name, category, type, location, representative options and the items it defines.

Get Notification

Retrieves one notification by id: message, icon, creator and date, and whether it has been read or seen.

Get Protected Bank Account Balance

Retrieves one protected-funds record by bank account id and protection id, including its amount, reason, dates, current protection state, and associated matter or contact.

Get Referral Type

Retrieves one referral type by id: its name and whether it is deleted.

Get Staff Member

Retrieves a staff member (based on staff id parameter provided) in the firm associated with the authenticated client.

Get Stage Set

Returns the stage set identified by `stage_set_id`, including its configured matter stages.

Get Stage Set Stage

Retrieves one stage of a stage set by stage-set id and stage id: name, lastUpdated and whether it is deleted.

Get Subtask

Retrieves the subtask identified by `subtask_id` within the specified `task_id`.

Get Task

Retrieves one task by id: subject, note, due date, assignees, sub-tasks, the linked matter and who created, completed or last updated it.

Get Task Document

Retrieves one document attached to a task by task id and document id, including its document type, deletion state, associated task, and document link.

Get User

Retrieves the Smokeball user identified by `user_id`.

Get Webhook Subscription

Returns the webhook subscription identified by `webhook_subscription_id`, including its callback and subscribed events.

List Activity Codes

Returns a list of activity codes.

List Authorization Groups

Return the authorization groups for the firm associated with the authenticated client.

List Bank Account Matter Balances

Returns a list of bank account matter balances.

List Bank Accounts

Returns bank accounts available to the authenticated firm, optionally filtered by account type or matter identifier.

List Contact Relations

Return relations for a contact associated with the authenticated client.

List Contacts

Returns a list of contacts.

List Contact Tags

Lists the tags currently on one contact, by contact id, as a plain string collection under value.

List Event Reminders

Returns the collection of reminders for an event The native root response is returned under data as an explicit Composio normalization.

List Events

Returns a list of events.

List File History

Returns the full list of history entries for the specified file.

List Firm Matter Stage Mappings

Returns a list of stage to matter mappings in the firm.

List Folder History

Returns a list of history entries for the specified folder.

List Layout Designs

Returns a list of layout designs.

List Matter Expenses

Returns a list of expenses for the specified matter.

List Matter Fees

Returns a list of fees for the specified matter.

List Matter Files

Returns a paged list of non-deleted files associated with a matter.

List Matter Folder Contents

Returns non-deleted folders and files directly under a matter's root document folder, or directly under folder_id when supplied, with folders before files.

List Matter Invoices

Returns a list of invoices for the specified matter.

List Matter Items

Returns the versioned item collection for a matter.

List Matter Layout Contacts

Returns a list of contacts on a specified layout.

List Matter Layouts

Returns a collection of layout items on a specified matter.

List Matter Memos

Returns a list of memos on the specified matter.

List Matter Role Relationships

Returns associated relationships for a specified matter and role group.

List Matter Roles

Returns associated roles for a specified matter.

List Matters

Returns one page of matters; pass next_cursor back as cursor to read the next one.

List Matter Tags

Returns the tags assigned to the matter identified by `matter_id`.

List Matter Type Categories

Returns a list of all the possible matter type categories.

List Matter Types

Returns a paginated list of matter types based on search criteria.

List Referral Types

Returns referral types, including custom referral types.

List Staff

Retrieves a paginated list of staff members in the firm associated with the authenticated client.

List Stage Sets

Returns a list of stage sets for the firm.

List Subtasks

Returns a list of subtasks for a specified task if associated with the authenticated client.

List Task Documents

Returns a list of document links for the specified task, if associated with the authenticated client.

List Tasks

Returns a list of tasks.

List Webhook Event Types

Lists the event type names a webhook subscription can subscribe to, as a plain string collection under value.

List Webhook Subscriptions

Returns existing webhook subscriptions.

Merge Matter Layout

Merges layout data using a restricted documented subset.

Patch Matter

Patches a matter or Lead, including lead-to-matter conversion and matter-type changes.

Patch Matter Archive

Updates the specified matter archive.

Patch Matter Billing Configuration

Changes only the supplied billing configuration fields for the specified matter.

Patch Matter Expense

Changes only the supplied expense fields for the specified matter.

Patch Matter Fee

Patches a fee for the specified matter.

Patch Matter File

Partially updates a file's metadata on the specified matter; only supplied fields change, but the documented schema still requires fileName.

Patch Matter Folder

Partially updates a folder belonging to the specified matter.

Protect Bank Account Funds

Protects funds in a trust bank account.

Remove Contact Tag

Removes one tag from a contact.

Remove Matter Layout

Removes a layout matter item from a matter.

Remove Matter Layout Contact

Removes a contact from a specified layout, deleting the associated role or relationship from the matter.

Remove Matter Role

Removes a specified role from a matter.

Remove Matter Role Relationship

Removes a relationship from a role in a matter.

Remove Matter Tag

Removes the tag from the matter without deleting from the account.

Search Files

Search files across the account using a required full-text query and documented filters; return the documented result array.

Unprotect Bank Account Funds

Unprotects funds in a trust bank account.

Update Activity Code

Updates an activity code.

Update Authorization Group

Updates a specified authorization group.

Update Authorization Policy

Updates a specified authorization policy.

Update Contact

Updates a specified contact.

Update Contact Relation

Updates a relation for a specified contact.

Update Event

Updates an event.

Update Event Reminder

Updates an existing reminder for an event.

Update Firm

Updates firm details for the current authenticated client.

Update Matter

Updates a specified matter.

Update Matter Archive

Replaces the specified matter archive by applying the full editable archive representation.

Update Matter Billing Configuration

Replaces the specified matter's billing configuration by applying its full editable representation.

Update Matter Expense

Replaces the expense by applying its full editable representation for the specified matter.

Update Matter Fee

Replaces the fee by applying its full editable representation for the specified matter.

Update Matter File

Replace all editable file fields using PUT; use PATCH_MATTER_FILE for a partial edit.

Update Matter Folder

Replaces the editable fields of a folder belonging to the specified matter.

Update Matter Memo

Updates a specified memo.

Update Matter Role

Updates a specified role on a matter.

Update Matter Role Relationship

Updates a specified relationship on a matter.

Update Staff Member

Updates a staff member in the firm associated with the authenticated client.

Update Subtask

Updates a specified subtask of a specified task.

Update Task

Updates a specified task.

Update Webhook Subscription

Update a persistent webhook subscription's name, event types, external eventNotificationUrl, and signing key.

FAQ

Frequently asked questions

With a standalone Smokeball MCP server, the agents and LLMs can only access a fixed set of Smokeball tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Smokeball and many other apps based on the task at hand, all through a single MCP endpoint.

Yes, you can. Claude Cowork fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Smokeball tools.

Yes, absolutely. You can configure which Smokeball scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Smokeball data and credentials are handled as safely as possible.

Start with Smokeball.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Smokeball tool your agent needs.Free to start.

Start building