# Firmable

```json
{
  "name": "Firmable",
  "slug": "firmable",
  "url": "https://composio.dev/toolkits/firmable",
  "markdown_url": "https://composio.dev/toolkits/firmable.md",
  "logo_url": "https://logos.composio.dev/api/firmable",
  "categories": [
    "crm",
    "data & analytics"
  ],
  "is_composio_managed": false,
  "updated_at": "2026-10-23T05:32:55.318Z"
}
```

![Firmable logo](https://logos.composio.dev/api/firmable)

## Description

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Firmable MCP or direct API to enrich company records, enrich people records, find contacts within companies, and retrieve search-filter metadata through natural language.

## Summary

Firmable is a B2B data platform for enriching company and people records.
It helps teams find accurate contact data and discover people within target companies.

## Categories

- crm
- data & analytics

## Toolkit Details

- Tools: 4

## Images

- Logo: https://logos.composio.dev/api/firmable

## Authentication

- **Api Key**
  - Type: `api_key`
  - Description: Api Key authentication for Firmable.
  - Setup:
    - Configure Api Key credentials for Firmable.
    - Use the credentials when creating an auth config in Composio.

## Suggested Prompts

- Enrich a company record in Firmable
- Find decision makers at a target company
- List Firmable filters for people searches

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `FIRMABLE_ENRICH_COMPANY` | Enrich Company | Look up one enriched company using at least one Firmable, LinkedIn, domain, ABN, or website identifier. This call may consume Firmable credits; Firmable does not publish a per-call cost. Successful enrichment and identifier precedence were not live-verified to avoid consuming credits. |
| `FIRMABLE_ENRICH_PERSON` | Enrich Person | Look up one enriched person using a Firmable, LinkedIn, work-email, or personal-email identifier. This request may consume Firmable credits and can return personal contact data; use it only for an authorized purpose. Prefer one strong identifier because precedence between multiple identifiers is not documented or live-verified. |
| `FIRMABLE_LIST_FILTER_OPTIONS` | List Filter Options | Return Firmable's current search filter codes and supported markets, optionally selecting filters or paging one location or industry filter. Firmable explicitly documents this read-only endpoint as not charged. |
| `FIRMABLE_SEARCH_PEOPLE_IN_COMPANY` | Search People in Company | Return one offset-based page of people at a Firmable company, optionally filtered by position, country, seniority code, or department code. Each call may consume Firmable credits and can return personal data; use it only for an authorized purpose. Firmable does not publish a per-call cost. |

## Supported Triggers

None listed.

## Installation and MCP Setup

### Path 1: SDK Installation

#### Path 1, Step 1: Install Composio

Install the Composio SDK, the OpenAI provider, and the OpenAI SDK
```python
pip install composio composio_openai openai
```

```typescript
npm install @composio/core @composio/openai openai
```

#### Path 1, Step 2: Create a Composio session

Initialize Composio with the OpenAI Responses provider and create a session scoped to Firmable
```python
import json
from openai import OpenAI
from composio import Composio
from composio_openai import OpenAIResponsesProvider

composio = Composio(provider=OpenAIResponsesProvider())
client = OpenAI()

session = composio.create(user_id="your-user-id", toolkits=["firmable"])
tools = session.tools()
```

```typescript
import OpenAI from "openai";
import { Composio } from "@composio/core";
import { OpenAIResponsesProvider } from "@composio/openai";

const composio = new Composio({ provider: new OpenAIResponsesProvider() });
const client = new OpenAI();

const session = await composio.create("your-user-id", { toolkits: ["firmable"] });
const tools = await session.tools();
```

#### Path 1, Step 3: Run Firmable tools with your agent

Send a request, execute the Firmable tool calls through the session, and print the final answer
```python
response = client.responses.create(
    model="gpt-5.6-sol",
    tools=tools,
    input=[{"role": "user", "content": "Enrich the company record for Acme Corporation with its latest Firmable company details."}],
)

while True:
    tool_calls = [o for o in response.output if o.type == "function_call"]
    if not tool_calls:
        break
    results = composio.provider.handle_tool_calls(response=response, session=session)
    response = client.responses.create(
        model="gpt-5.6-sol",
        tools=tools,
        previous_response_id=response.id,
        input=[
            {"type": "function_call_output", "call_id": call.call_id, "output": json.dumps(results[i])}
            for i, call in enumerate(tool_calls)
        ],
    )

print(response.output_text)
```

```typescript
let response = await client.responses.create({
  model: "gpt-5.6-sol",
  tools,
  input: [{ role: "user", content: "Enrich the company record for Acme Corporation with its latest Firmable company details." }],
});

while (response.output.some((o) => o.type === "function_call")) {
  const outputs = await composio.provider.handleToolCalls(session, response.output);
  response = await client.responses.create({
    model: "gpt-5.6-sol",
    tools,
    previous_response_id: response.id,
    input: outputs,
  });
}

console.log(response.output_text);
```

### Path 2: MCP Server Setup

#### Path 2, Step 1: Install Composio

Install the Composio SDK and your agent framework
```python
pip install composio claude-agent-sdk
```

```typescript
npm install @composio/core ai @ai-sdk/mcp @ai-sdk/openai
```

#### Path 2, Step 2: Create a session with MCP enabled

Create a session scoped to Firmable and read its MCP URL and headers
```python
from composio import Composio

composio = Composio()
session = composio.create(user_id="your-user-id", toolkits=["firmable"], mcp=True)
```

```typescript
import { Composio } from "@composio/core";

const composio = new Composio();
const { mcp } = await composio.create("your-user-id", {
  toolkits: ["firmable"],
  mcp: true,
});
```

#### Path 2, Step 3: Connect your agent to the MCP server

Pass the session's MCP URL and headers to your agent and run a Firmable request
```python
import asyncio
from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions, AssistantMessage, TextBlock

options = ClaudeAgentOptions(
    mcp_servers={
        "composio": {
            "type": "http",
            "url": session.mcp.url,
            "headers": session.mcp.headers,
        }
    },
    system_prompt="You are a helpful assistant with access to Firmable tools.",
    tools=[],
    allowed_tools=["mcp__composio__*"],
)

async def main():
    async with ClaudeSDKClient(options=options) as client:
        await client.query("Enrich the company record for Acme Corporation with its latest Firmable company details.")
        async for message in client.receive_response():
            if isinstance(message, AssistantMessage):
                for block in message.content:
                    if isinstance(block, TextBlock):
                        print(block.text)

asyncio.run(main())
```

```typescript
import { createMCPClient } from "@ai-sdk/mcp";
import { openai } from "@ai-sdk/openai";
import { generateText, stepCountIs } from "ai";

const client = await createMCPClient({
  transport: { type: "http", url: mcp.url, headers: mcp.headers },
});

const { text } = await generateText({
  model: openai("gpt-5.6-sol"),
  tools: await client.tools(),
  prompt: "Enrich the company record for Acme Corporation with its latest Firmable company details.",
  stopWhen: stepCountIs(10),
});

console.log(text);
await client.close();
```

## Why Use Composio?

### 1. AI Native Firmable Integration

- Supports both Firmable MCP and direct API based integrations
- Structured, LLM-friendly schemas for reliable company and people data lookups
- Rich coverage for enriching records, finding contacts, and querying Firmable search metadata

### 2. Managed Auth

- Securely store and use your Firmable API key without hard-coding it in agent prompts or application code
- Central place to manage, scope, and revoke Firmable access
- Per user and per environment credentials for safer development and production deployments

### 3. Agent Optimized Design

- Tools are tuned using real error and success rates to improve reliability over time
- Clear schemas help agents select the right Firmable enrichment, search, or metadata tool
- Comprehensive execution logs show what ran, when, and on whose behalf

### 4. Enterprise Grade Security

- Fine-grained RBAC so you control which agents and users can access Firmable
- Scoped, least privilege access to Firmable resources
- Full audit trail of agent actions to support review and compliance

## Use Firmable with any AI Agent Framework

Choose a framework you want to connect Firmable with:

- [ChatGPT](https://composio.dev/toolkits/firmable/framework/chatgpt)
- [Claude Cowork](https://composio.dev/toolkits/firmable/framework/claude-cowork)
- [Hermes](https://composio.dev/toolkits/firmable/framework/hermes-agent)
- [Atomic Agent](https://composio.dev/toolkits/firmable/framework/atomic-agent)

## Related Toolkits

- [HubSpot](https://composio.dev/toolkits/hubspot) - HubSpot is an all-in-one marketing, sales, and customer service platform. It lets teams nurture leads, automate outreach, and track every customer interaction in one place.
- [Pipedrive](https://composio.dev/toolkits/pipedrive) - Pipedrive is a sales management platform offering pipeline visualization, lead tracking, and workflow automation. It helps sales teams keep deals moving forward efficiently and never miss a follow-up.
- [Salesforce](https://composio.dev/toolkits/salesforce) - Salesforce is a leading CRM platform that helps businesses manage sales, service, and marketing. It centralizes customer data, enabling teams to drive growth and build strong relationships.
- [Excel](https://composio.dev/toolkits/excel) - Microsoft Excel is a robust spreadsheet application for organizing, analyzing, and visualizing data. It's the go-to tool for calculations, reporting, and flexible data management.
- [Apollo](https://composio.dev/toolkits/apollo) - Apollo is a CRM and lead generation platform that helps businesses discover contacts and manage sales pipelines. Use it to streamline customer outreach and track your deals from one place.
- [Attio](https://composio.dev/toolkits/attio) - Attio is a customizable CRM and workspace for managing your team's relationships and workflows. It helps teams organize contacts, automate tasks, and collaborate more efficiently.
- [21risk](https://composio.dev/toolkits/_21risk) - 21RISK is a web app built for easy checklist, audit, and compliance management. It streamlines risk processes so teams can focus on what matters.
- [Abstract](https://composio.dev/toolkits/abstract) - Abstract provides a suite of APIs for automating data validation and enrichment tasks. It helps developers streamline workflows and ensure data quality with minimal effort.
- [Acculynx](https://composio.dev/toolkits/acculynx) - AccuLynx is a cloud-based roofing business management software for contractors. It streamlines project tracking, lead management, and document sharing.
- [AccuWeather](https://composio.dev/toolkits/accu_weather) - AccuWeather is a global weather service providing current conditions, forecasts, MinuteCast precipitation, alerts, and lightning data. Use it for fast, localized forecasts and real-time weather alerts.
- [Adafruit IO](https://composio.dev/toolkits/adafruit_io) - Adafruit IO is Adafruit's cloud platform for connected device and IoT project data. It helps you store, visualize, and act on sensor feeds without running your own backend.
- [Addressfinder](https://composio.dev/toolkits/addressfinder) - Addressfinder is a data quality platform for verifying addresses, emails, and phone numbers. It helps you ensure accurate customer and contact data every time.
- [Affinity](https://composio.dev/toolkits/affinity) - Affinity is a relationship intelligence CRM that helps private capital investors find, manage, and close more deals. It streamlines deal flow and surfaces key connections to help you win opportunities.
- [Agencyzoom](https://composio.dev/toolkits/agencyzoom) - AgencyZoom is a sales and performance platform built for P&C insurance agencies. It helps agents boost sales, retain clients, and analyze producer results in one place.
- [Agentql](https://composio.dev/toolkits/agentql) - Agentql is a toolkit that connects AI agents to the web using a specialized query language. It enables structured web interaction and data extraction for smarter automations.
- [Agenty](https://composio.dev/toolkits/agenty) - Agenty is a web scraping and automation platform for extracting data and automating browser tasks—no coding needed. It streamlines data collection, monitoring, and repetitive online actions.
- [Agile CRM](https://composio.dev/toolkits/agile_crm) - Agile CRM is a unified customer management platform combining contacts, sales pipelines, marketing, and support. Use it to centralize customer data, automate campaigns, and manage deals and tickets in one place.
- [Ambee](https://composio.dev/toolkits/ambee) - Ambee is an environmental data platform providing real-time, hyperlocal APIs for air quality, weather, and pollen. Get precise environmental insights to power smarter decisions in your apps and workflows.
- [Ambient weather](https://composio.dev/toolkits/ambient_weather) - Ambient Weather is a platform for personal weather stations with a robust API for accessing local, real-time, and historical weather data. Get detailed environmental insights directly from your own sensors for smarter apps and automations.
- [Anonyflow](https://composio.dev/toolkits/anonyflow) - Anonyflow is a service for encryption-based data anonymization and secure data sharing. It helps organizations meet GDPR, CCPA, and HIPAA data privacy compliance requirements.

## Frequently Asked Questions

### Do I need my own developer credentials to use Firmable with Composio?

Yes, Firmable requires you to configure your own API key credentials. Once set up, Composio handles secure credential storage and API request handling for you.

### Can I use multiple toolkits together?

Yes! Composio's Tool Router enables agents to use multiple toolkits. [Learn more](https://docs.composio.dev/tool-router/overview).

### Is Composio secure?

Composio is SOC 2 and ISO 27001 compliant with all data encrypted in transit and at rest. [Learn more](https://trust.composio.dev).

### What if the API changes?

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
