McpClient
Namespace: Daisi.SDK.Clients.V1.Orc
Inheritance: McpProto.McpProtoClient
Factory
McpClientFactory - create an McpClient using your IClientKeyProvider.
var mcpClientFactory = new McpClientFactory(clientKeyProvider); var mcpClient = mcpClientFactory.Create();
Remarks
McpClient manages MCP (Model Context Protocol) server registrations. MCP servers are external data sources (databases, APIs, file systems) that can be connected to your DAISI account. Once registered, the system automatically syncs resources from these servers into DAISI Drive, making them searchable via RAG-powered semantic search.
Register a Server
Register a new MCP server with your account:
var response = await mcpClient.RegisterServerAsync(
name: "My Database",
serverUrl: "https://mcp.example.com",
authType: McpAuthType.McpAuthBearer,
authSecret: "my-bearer-token",
targetRepositoryId: null, // auto-creates a repository
syncIntervalMinutes: 60 // sync every hour
);
if (response.Success)
{
Console.WriteLine($"Server registered: {response.Server.Id}");
}
List Servers
List all MCP servers registered to your account:
var response = await mcpClient.ListServersAsync();
foreach (var server in response.Servers)
{
Console.WriteLine($"{server.Name} - {server.Status}");
}
Trigger Sync
Trigger an immediate sync for a specific server:
var response = await mcpClient.TriggerSyncAsync(serverId);
if (response.Success)
{
Console.WriteLine("Sync triggered successfully.");
}
Toggle Resource Sync
Enable or disable syncing for a specific resource on a server:
await mcpClient.ToggleResourceSyncAsync(
serverId: "srv-abc123",
resourceUri: "db://customers/table",
enabled: true
);
Update Server
Update an existing server's configuration:
var response = await mcpClient.UpdateServerAsync(new UpdateMcpServerRequest
{
ServerId = "srv-abc123",
Name = "Updated Name",
ServerUrl = "https://new-url.example.com",
AuthType = McpAuthType.McpAuthApiKey,
SyncIntervalMinutes = 30
});
Remove Server
Remove a registered MCP server:
var response = await mcpClient.RemoveServerAsync("srv-abc123");
if (response.Success)
{
Console.WriteLine("Server removed.");
}
Authentication Types
MCP servers support three authentication modes:
- McpAuthNone - No authentication required
- McpAuthBearer - Bearer token authentication
- McpAuthApiKey - API key authentication
Server Status
MCP servers report one of these statuses:
- Connecting - Initial connection in progress
- Active - Connected and syncing normally
- Paused - Sync is paused
- Error - Connection or sync error occurred