Skip to main content
Glama

get-started

Verify connection and explore Zulip workspace streams with this tool. Use it to ensure proper functionality and gain an overview of available channels.

Instructions

🚀 START HERE: Test connection and get workspace overview. Use this first to verify everything is working and see available streams. Perfect for orientation and troubleshooting.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • Handler function for 'get-started' tool. Tests Zulip connection, fetches subscribed streams and recent messages, returns workspace overview including status, email, available streams, and quick tips.
    async () => { try { const [streams, recentMessages] = await Promise.all([ zulipClient.getSubscriptions().catch(() => ({ subscriptions: [] })), zulipClient.getMessages({ anchor: "newest", num_before: 3 }).catch(() => ({ messages: [] })) ]); const info = { status: "✅ Connected to Zulip", your_email: process.env.ZULIP_EMAIL, zulip_url: process.env.ZULIP_URL, streams_available: streams.subscriptions?.length || 0, sample_streams: streams.subscriptions?.slice(0, 5).map((s: any) => s.name) || [], recent_activity: recentMessages.messages?.length > 0, quick_tips: [ "Use 'search-users' to find users before sending DMs", "Stream names are case-sensitive - use exact names from get-subscribed-streams", "Always include 'topic' when sending to streams", "For DMs, use actual email addresses (not display names)", "Note: 'streams' and 'channels' mean the same thing in Zulip" ] }; return createSuccessResponse(JSON.stringify(info, null, 2)); } catch (error) { return createErrorResponse(`Connection test failed: ${error instanceof Error ? error.message : 'Unknown error'}`); } }
  • src/server.ts:370-402 (registration)
    MCP server.tool registration for 'get-started'. Registers the tool with no input parameters ({} schema) and inline handler function.
    server.tool( "get-started", "🚀 START HERE: Test connection and get workspace overview. Use this first to verify everything is working and see available streams. Perfect for orientation and troubleshooting.", {}, async () => { try { const [streams, recentMessages] = await Promise.all([ zulipClient.getSubscriptions().catch(() => ({ subscriptions: [] })), zulipClient.getMessages({ anchor: "newest", num_before: 3 }).catch(() => ({ messages: [] })) ]); const info = { status: "✅ Connected to Zulip", your_email: process.env.ZULIP_EMAIL, zulip_url: process.env.ZULIP_URL, streams_available: streams.subscriptions?.length || 0, sample_streams: streams.subscriptions?.slice(0, 5).map((s: any) => s.name) || [], recent_activity: recentMessages.messages?.length > 0, quick_tips: [ "Use 'search-users' to find users before sending DMs", "Stream names are case-sensitive - use exact names from get-subscribed-streams", "Always include 'topic' when sending to streams", "For DMs, use actual email addresses (not display names)", "Note: 'streams' and 'channels' mean the same thing in Zulip" ] }; return createSuccessResponse(JSON.stringify(info, null, 2)); } catch (error) { return createErrorResponse(`Connection test failed: ${error instanceof Error ? error.message : 'Unknown error'}`); } } );
  • Empty schema object indicating the tool takes no parameters.
    {},

Latest Blog Posts

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/avisekrath/zulip-mcp-server'

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