createMcpServer function
Creates a fully configured MCP server instance.
The dataService is injected for tool implementations.
This factory can be used with any transport (Stdio, StreamableHTTP).
Implementation
McpServer createMcpServer(FinancialDataService dataService) {
final server = McpServer(
Implementation(name: 'finance-mcp', version: '1.0.0'),
options: ServerOptions(
capabilities: ServerCapabilities(
tools: ServerCapabilitiesTools(),
prompts: ServerCapabilitiesPrompts(),
),
),
);
// Register all tools
for (final tool in createAllTools(dataService)) {
server.registerBaseTool(tool);
}
// Register all prompts
for (final prompt in createAllPrompts()) {
server.registerBasePrompt(prompt);
}
// Register all resources
for (final resource in createAllResources()) {
server.registerBaseResource(resource);
}
return server;
}