You'd reach for this when building AI agents that need to manage optical infrastructure in AI data centers. It exposes gNMI operations for network device configuration and telemetry, integrates with NCCL for collective communication monitoring, and provides ML-based remaining useful life predictions for optical components. The SPARQL semantic layer lets you query relationships across your infrastructure, while the digital twin capability mirrors your physical optical network state. Think fleet management for the fiber and transceivers connecting your GPU clusters, with predictive maintenance and topology awareness baked in.
Public tool metadata for what this MCP can expose to an agent.
companySearch_toolCompany search. USE THIS WHEN: - Search for companies by criteria DO NOT USE FOR: - Finding individual people (use peopleSearch) - Getting contact info like email (use syncContactEnrichment after finding profile) EXAMPLE: Input: companySearch_tool(apiKey="sk_live_...", searchP...5 paramsCompany search. USE THIS WHEN: - Search for companies by criteria DO NOT USE FOR: - Finding individual people (use peopleSearch) - Getting contact info like email (use syncContactEnrichment after finding profile) EXAMPLE: Input: companySearch_tool(apiKey="sk_live_...", searchP...
apiKeyvaluecursorvaluepageSizevaluesearchParamsvaluecompanyExclusionListIDsvaluepeopleSearch_toolPeople search. USE THIS WHEN: - Search for people/profiles DO NOT USE FOR: - Getting email/phone directly (use syncContactEnrichment after finding profile) - Company searches (use companySearch) EXAMPLE: Input: peopleSearch_tool(apiKey="sk_live_...", searchParams={}, pageSize=...7 paramsPeople search. USE THIS WHEN: - Search for people/profiles DO NOT USE FOR: - Getting email/phone directly (use syncContactEnrichment after finding profile) - Company searches (use companySearch) EXAMPLE: Input: peopleSearch_tool(apiKey="sk_live_...", searchParams={}, pageSize=...
apiKeyvaluecursorvaluepageSizevaluesearchParamsvaluecurrentCompaniesvaluecompanyExclusionListIDsvalueprospectExclusionListIDsvaluesyncContactEnrichment_toolSynchronously fetch contact details. USE THIS WHEN: - Get email addresses from LinkedIn profiles - Get phone numbers for contacts DO NOT USE FOR: - Searching for people (use peopleSearch instead) - Company information (use companySearch or kitchenSinkCompany) EXAMPLE: Input: s...4 paramsSynchronously fetch contact details. USE THIS WHEN: - Get email addresses from LinkedIn profiles - Get phone numbers for contacts DO NOT USE FOR: - Searching for people (use peopleSearch instead) - Company information (use companySearch or kitchenSinkCompany) EXAMPLE: Input: s...
apiKeyvalueexhaustivevaluelinkedinUrlvalueenrichmentTypevalueprofileLiveEnrich_toolLive fetch LinkedIn profile. USE THIS WHEN: - Fetch live data from LinkedIn DO NOT USE FOR: - Batch operations (use search or batch APIs instead) EXAMPLE: Input: profileLiveEnrich_tool(apiKey="sk_live_...", identifier="example_string", getDetailedEducation="example") INPUT SCH...4 paramsLive fetch LinkedIn profile. USE THIS WHEN: - Fetch live data from LinkedIn DO NOT USE FOR: - Batch operations (use search or batch APIs instead) EXAMPLE: Input: profileLiveEnrich_tool(apiKey="sk_live_...", identifier="example_string", getDetailedEducation="example") INPUT SCH...
apiKeyvalueidentifiervaluegetDetailedEducationvaluegetDetailedWorkExperiencevaluecompanyLiveEnrich_toolLive fetch LinkedIn company. USE THIS WHEN: - Fetch live data from LinkedIn DO NOT USE FOR: - Batch operations (use search or batch APIs instead) EXAMPLE: Input: companyLiveEnrich_tool(apiKey="sk_live_...", type="example_string", value="example_string") INPUT SCHEMA: Required...4 paramsLive fetch LinkedIn company. USE THIS WHEN: - Fetch live data from LinkedIn DO NOT USE FOR: - Batch operations (use search or batch APIs instead) EXAMPLE: Input: companyLiveEnrich_tool(apiKey="sk_live_...", type="example_string", value="example_string") INPUT SCHEMA: Required...
typevaluevaluevalueapiKeyvaluegetHistoricalHeadcountvaluegetOrgCredits_toolGet organization credits. USE THIS WHEN: - Execute API operation EXAMPLE: Input: getOrgCredits_tool() INPUT SCHEMA: Required parameters: Optional parameters: RETURNS: Response object with keys: output, chargeInfo, warnings COMMON MISTAKES: - Missing apiKey in function call (ap...1 paramsGet organization credits. USE THIS WHEN: - Execute API operation EXAMPLE: Input: getOrgCredits_tool() INPUT SCHEMA: Required parameters: Optional parameters: RETURNS: Response object with keys: output, chargeInfo, warnings COMMON MISTAKES: - Missing apiKey in function call (ap...
apiKeyvaluepollCombinedSearch_toolPoll combined search. USE THIS WHEN: - Search for people/profiles EXAMPLE: Input: pollCombinedSearch_tool(apiKey="sk_live_...", entityType="example_string", searchId="example_string") INPUT SCHEMA: Required parameters: - apiKey (string): Your Fiber API key. Must start with 'sk...5 paramsPoll combined search. USE THIS WHEN: - Search for people/profiles EXAMPLE: Input: pollCombinedSearch_tool(apiKey="sk_live_...", entityType="example_string", searchId="example_string") INPUT SCHEMA: Required parameters: - apiKey (string): Your Fiber API key. Must start with 'sk...
apiKeyvaluecursorvaluepageSizevaluesearchIdvalueentityTypevaluepollContactEnrichmentResult_toolPoll contact details fetching task. USE THIS WHEN: - Get email addresses from LinkedIn profiles DO NOT USE FOR: - Searching for people (use peopleSearch instead) - Company information (use companySearch or kitchenSinkCompany) EXAMPLE: Input: pollContactEnrichmentResult_tool(ap...2 paramsPoll contact details fetching task. USE THIS WHEN: - Get email addresses from LinkedIn profiles DO NOT USE FOR: - Searching for people (use peopleSearch instead) - Company information (use companySearch or kitchenSinkCompany) EXAMPLE: Input: pollContactEnrichmentResult_tool(ap...
apiKeyvaluetaskIdvaluepollBatchContactEnrichment_toolPoll batch contact enrichment. USE THIS WHEN: - Get email addresses from LinkedIn profiles DO NOT USE FOR: - Searching for people (use peopleSearch instead) - Company information (use companySearch or kitchenSinkCompany) EXAMPLE: Input: pollBatchContactEnrichment_tool(apiKey="...4 paramsPoll batch contact enrichment. USE THIS WHEN: - Get email addresses from LinkedIn profiles DO NOT USE FOR: - Searching for people (use peopleSearch instead) - Company information (use companySearch or kitchenSinkCompany) EXAMPLE: Input: pollBatchContactEnrichment_tool(apiKey="...
takevalueapiKeyvaluecursorvaluetaskIdvaluegetCompanyExclusionLists_toolGet company exclusion list. USE THIS WHEN: - Execute API operation EXAMPLE: Input: getCompanyExclusionLists_tool(apiKey="sk_live_...") INPUT SCHEMA: Required parameters: - apiKey (string): Your Fiber API key. Must start with 'sk_live_' or 'sk_test_'. Example: 'sk_live_dR6DxD3H...1 paramsGet company exclusion list. USE THIS WHEN: - Execute API operation EXAMPLE: Input: getCompanyExclusionLists_tool(apiKey="sk_live_...") INPUT SCHEMA: Required parameters: - apiKey (string): Your Fiber API key. Must start with 'sk_live_' or 'sk_test_'. Example: 'sk_live_dR6DxD3H...
apiKeyvalueFIBER_API_URLdefault: https://api.fiber.acBase URL of the FIBER deployment (e.g., https://api.fiber.ac or http://localhost:8000 for self-hosted).
FIBER_API_KEY*secretBearer token for the FIBER API. Role determines which tools work: viewer (24 read tools), operator (+write), admin (all).
FIBER_ENABLE_WRITEdefault: 0Set to 1 to expose write tools: demo trigger, NCCL ingest, RMA create. Defaults to read-only for safety.
FIBER_MCP_TOOLS_ALLOWLIST(v1.0.2) Optional CSV of tool names. When set, only these tools are exposed — letting operators scope autonomous agents to a minimum surface (e.g. 'fiber_health,fiber_cluster_overview,fiber_list_alerts'). Empty = all tools exposed (default).
FIBER_HTTP_TIMEOUTdefault: 30Per-request HTTP timeout in seconds. Increase if running Digital Twin Monte Carlo with iterations>1000.