Skip to main content
Glama

Backlog MCP Server

toolsetUtils.test.ts2.02 kB
import { describe, expect, it } from '@jest/globals'; import { ToolsetGroup } from '../types/toolsets.js'; import { enableToolset, getEnabledTools, getToolset, listAvailableToolsets, listToolsetTools, } from '../utils/toolsetUtils.js'; const mockTool = { name: 'mock_tool', description: 'A mock tool', schema: { shape: {} }, handler: async () => ({ content: [] }), outputSchema: {}, }; const toolsetGroup: ToolsetGroup = { toolsets: [ { name: 'test_set', description: 'Test set', enabled: false, tools: [mockTool as unknown as any], }, ], }; describe('Toolset Utils', () => { it('getToolset returns correct toolset', () => { const ts = getToolset(toolsetGroup, 'test_set'); expect(ts).toBeDefined(); expect(ts?.name).toBe('test_set'); }); it('enableToolset enables a toolset', () => { const msg = enableToolset(toolsetGroup, 'test_set'); expect(msg).toContain('enabled'); expect(getToolset(toolsetGroup, 'test_set')?.enabled).toBe(true); }); it('enableToolset returns already enabled message', () => { const msg = enableToolset(toolsetGroup, 'test_set'); expect(msg).toContain('already enabled'); }); it('getEnabledTools returns enabled tools', () => { const tools = getEnabledTools(toolsetGroup); expect(tools.length).toBe(1); expect(tools[0].name).toBe('mock_tool'); }); it('listAvailableToolsets returns all toolsets', () => { const list = listAvailableToolsets(toolsetGroup); expect(list.length).toBe(1); expect(list[0].name).toBe('test_set'); expect(list[0].currentlyEnabled).toBe(true); }); it('listToolsetTools returns tools of a toolset', () => { const tools = listToolsetTools(toolsetGroup, 'test_set'); expect(tools.length).toBe(1); expect(tools[0].name).toBe('mock_tool'); }); it('listToolsetTools returns empty for unknown toolset', () => { const tools = listToolsetTools(toolsetGroup, 'unknown'); expect(tools.length).toBe(0); }); });

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/nulab/backlog-mcp-server'

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