Skip to main content
Glama

get_board_interlocks

Identify directors serving on multiple IBEX 35 company boards to analyze corporate governance relationships in the Spanish stock exchange.

Instructions

Find directors who serve on multiple IBEX 35 company boards

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • The primary handler function that executes the tool logic: fetches all companies, extracts directors, groups them by name to identify interlocks (directors on multiple boards), and returns sorted by number of boards.
    async getBoardInterlocks(): Promise<any[]> { const companies = await this.getAllCompanies(); // Extract all directors from all companies const allDirectors = []; companies.forEach(company => { if (company.directors && Array.isArray(company.directors)) { company.directors.forEach(director => { allDirectors.push({ ...director, company_name: company.name, company_symbol: company.ticker }); }); } }); // Group directors by name and find interlocks const directorMap = new Map(); allDirectors.forEach(director => { if (!directorMap.has(director.name)) { directorMap.set(director.name, []); } directorMap.get(director.name).push(director); }); const interlocks = []; for (const [name, directorList] of directorMap.entries()) { if (directorList.length > 1) { interlocks.push({ director_name: name, companies: directorList.map(d => d.company_name).join(', '), board_count: directorList.length, positions: directorList.map(d => `${d.company_name} (${d.position})`).join('; ') }); } } return interlocks.sort((a, b) => b.board_count - a.board_count); }
  • src/index.ts:121-127 (registration)
    Tool registration in the list returned by ListToolsRequestSchema, including name, description, and input schema (no parameters required).
    name: 'get_board_interlocks', description: 'Find directors who serve on multiple IBEX 35 company boards', inputSchema: { type: 'object', properties: {}, }, },
  • Dispatch in the CallToolRequestSchema handler that routes the tool invocation to the database implementation.
    case 'get_board_interlocks': result = await this.db.getBoardInterlocks(); break;

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/anbrme/ibex35-mcp-server'

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