Skip to main content
Glama

Things MCP Server

by wbopan
server.test.ts1.89 kB
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'; import { describe, it, expect, beforeEach, beforeAll } from '@jest/globals'; import { registerAddTodoTool } from '../src/tools/add-todo.js'; import { registerAddProjectTool } from '../src/tools/add-project.js'; import { registerUpdateTodoTool } from '../src/tools/update-todo.js'; import { registerUpdateProjectTool } from '../src/tools/update-project.js'; describe('Things MCP Server', () => { beforeAll(() => { if (process.platform !== 'darwin') { console.log('⚠️ Skipping tests on non-macOS platform'); return; } }); let server: McpServer; beforeEach(() => { server = new McpServer({ name: 'test-things-mcp', version: '1.0.0' }); }); it('should create server instance', () => { if (process.platform !== 'darwin') { console.log('Skipping macOS-specific test'); return; } expect(server).toBeDefined(); }); it('should register add todo tool', () => { if (process.platform !== 'darwin') { console.log('Skipping macOS-specific test'); return; } expect(() => registerAddTodoTool(server)).not.toThrow(); }); it('should register add project tool', () => { if (process.platform !== 'darwin') { console.log('Skipping macOS-specific test'); return; } expect(() => registerAddProjectTool(server)).not.toThrow(); }); it('should register update todo tool', () => { if (process.platform !== 'darwin') { console.log('Skipping macOS-specific test'); return; } expect(() => registerUpdateTodoTool(server)).not.toThrow(); }); it('should register update project tool', () => { if (process.platform !== 'darwin') { console.log('Skipping macOS-specific test'); return; } expect(() => registerUpdateProjectTool(server)).not.toThrow(); }); });

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/wbopan/things-mcp'

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