Skip to main content
Glama
Cyreslab-AI

Crunchbase MCP Server

search_people

Find individuals in Crunchbase by name, job title, or company to gather professional insights and connections for research or networking purposes.

Instructions

Search for people based on various criteria

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
companyNoFilter by company name
limitNoMaximum number of results to return (default: 10)
queryNoSearch query (e.g., person name)
titleNoFilter by job title

Implementation Reference

  • MCP tool handler for 'search_people' in the switch statement of CallToolRequestSchema. Parses input arguments into SearchPeopleInput, calls CrunchbaseAPI.searchPeople, and returns JSON response.
    case 'search_people': { if (!args || typeof args !== 'object') { throw new McpError(ErrorCode.InvalidParams, 'Invalid parameters'); } const params: SearchPeopleInput = { query: typeof args.query === 'string' ? args.query : undefined, company: typeof args.company === 'string' ? args.company : undefined, title: typeof args.title === 'string' ? args.title : undefined, limit: typeof args.limit === 'number' ? args.limit : undefined }; const people = await this.crunchbaseApi.searchPeople(params); return { content: [ { type: 'text', text: JSON.stringify(people, null, 2), }, ], }; }
  • src/index.ts:279-302 (registration)
    Tool registration in ListToolsRequestSchema response, defining name, description, and inputSchema matching SearchPeopleInput.
    name: 'search_people', description: 'Search for people based on various criteria', inputSchema: { type: 'object', properties: { query: { type: 'string', description: 'Search query (e.g., person name)', }, company: { type: 'string', description: 'Filter by company name', }, title: { type: 'string', description: 'Filter by job title', }, limit: { type: 'number', description: 'Maximum number of results to return (default: 10)', }, }, }, },
  • Core implementation of searchPeople in CrunchbaseAPI class. Builds Crunchbase search query for /searches/people endpoint and handles API response/error.
    async searchPeople(params: SearchPeopleInput): Promise<Person[]> { try { // Build the query string based on the provided parameters let query = params.query || ''; if (params.company) { query += ` AND featured_job_organization_name:${params.company}`; } if (params.title) { query += ` AND featured_job_title:${params.title}`; } const response = await this.client.get<CrunchbaseApiResponse<Person[]>>('/searches/people', { params: { query, limit: params.limit || 10, order: 'rank DESC' } }); return response.data.data; } catch (error) { console.error('Error searching people:', error); throw this.handleError(error); } }
  • TypeScript interface defining the input parameters for search_people tool.
    export interface SearchPeopleInput { query?: string; company?: string; title?: string; limit?: number; }

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