Skip to main content
Glama
Cyreslab-AI

Crunchbase MCP Server

get_acquisitions

Retrieve acquisition data for a specific company from Crunchbase. Input a company name or UUID and set a result limit to get details on acquisitions made by or of the company.

Instructions

Get acquisitions made by or of a specific company

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
company_name_or_idNoCompany name or UUID
limitNoMaximum number of results to return (default: 10)

Implementation Reference

  • MCP tool handler for 'get_acquisitions': validates input arguments, constructs params, calls crunchbaseApi.getAcquisitions, and returns JSON stringified response.
    case 'get_acquisitions': {
      if (!args || typeof args !== 'object') {
        throw new McpError(ErrorCode.InvalidParams, 'Invalid parameters');
      }
      const params: GetAcquisitionsInput = {
        company_name_or_id: typeof args.company_name_or_id === 'string' ? args.company_name_or_id : undefined,
        limit: typeof args.limit === 'number' ? args.limit : undefined
      };
      const acquisitions = await this.crunchbaseApi.getAcquisitions(params);
      return {
        content: [
          {
            type: 'text',
            text: JSON.stringify(acquisitions, null, 2),
          },
        ],
      };
    }
  • Core implementation of getAcquisitions: resolves company UUID if needed, builds search query for acquisitions where the company is acquirer or acquiree, calls Crunchbase API /searches/acquisitions, returns results.
    async getAcquisitions(params: GetAcquisitionsInput): Promise<Acquisition[]> {
      try {
        let companyId: string | undefined;
    
        if (params.company_name_or_id) {
          // Get the company UUID
          const company = await this.getCompanyDetails({ name_or_id: params.company_name_or_id });
          companyId = company.uuid;
        }
    
        // Build the query
        let query = '';
        if (companyId) {
          query = `acquirer_identifier.uuid:${companyId} OR acquiree_identifier.uuid:${companyId}`;
        }
    
        // Get the acquisitions
        const response = await this.client.get<CrunchbaseApiResponse<Acquisition[]>>('/searches/acquisitions', {
          params: {
            query,
            limit: params.limit || 10,
            order: 'announced_on DESC'
          }
        });
    
        return response.data.data;
      } catch (error) {
        console.error('Error getting acquisitions:', error);
        throw this.handleError(error);
      }
  • src/index.ts:261-277 (registration)
    Tool registration in ListTools response: defines name 'get_acquisitions', description, and inputSchema.
    {
      name: 'get_acquisitions',
      description: 'Get acquisitions made by or of a specific company',
      inputSchema: {
        type: 'object',
        properties: {
          company_name_or_id: {
            type: 'string',
            description: 'Company name or UUID',
          },
          limit: {
            type: 'number',
            description: 'Maximum number of results to return (default: 10)',
          },
        },
      },
    },
  • TypeScript interface defining input parameters for getAcquisitions tool.
    export interface GetAcquisitionsInput {
      company_name_or_id?: string;
      limit?: number;
    }
Install Server

Other Tools

Related Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Cyreslab-AI/crunchbase-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server