Bahn: aisupport, Analyse-O2C-C2S, awesome-bahn-mcp-servers, beam-mcp,
Confluence_Bot, db-planet-mcp-server, O2C-Harness, project-audit,
Projekt-KIQ-HP, teamlandkarte-mcp
Dhive: Jury-Voting
Privat: CV, NoteGraph (NOTE: NoteGraph needs complete redo after consolidation)
Shared: AI-Orchestrator, OrgMyLife, power_skills_and_more
Shared/references: symphony (read-only)
Bahn repos remain available as independent remotes - this monorepo
pulls them in via subtree, the originals are untouched.
40 lines
940 B
TypeScript
40 lines
940 B
TypeScript
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
import { HaiiloClient } from "./haiiloClient.js";
|
|
import { registerAllTools } from "./tools/index.js";
|
|
import { Logger } from 'tslog';
|
|
|
|
const log = new Logger();
|
|
|
|
interface HaiiloCredentials {
|
|
username?: string;
|
|
password?: string;
|
|
clientId?: string;
|
|
clientSecret?: string;
|
|
baseUrl?: string;
|
|
}
|
|
|
|
const getToolAPIServer = async (credentials: HaiiloCredentials) => {
|
|
const server = new McpServer({
|
|
name: 'DBPlanet-MCP-Server',
|
|
version: '0.1.0',
|
|
}, {
|
|
capabilities: {
|
|
logging: {}
|
|
}
|
|
});
|
|
|
|
const client = new HaiiloClient({
|
|
username: credentials.username || '',
|
|
password: credentials.password || '',
|
|
clientId: credentials.clientId || '',
|
|
clientSecret: credentials.clientSecret || '',
|
|
baseUrl: credentials.baseUrl || '',
|
|
});
|
|
|
|
registerAllTools(server, client);
|
|
|
|
return server;
|
|
};
|
|
|
|
export default getToolAPIServer;
|