Skip to main content
Glama

get_project_info

Retrieve metadata for the current Selenix project including name, base URL, test count, and suite count to manage browser automation testing.

Instructions

Get metadata about the current Selenix project: name, base URL, test count, suite count.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • Schema definition for get_project_info tool.
      name: 'get_project_info',
      description:
        'Get metadata about the current Selenix project: name, base URL, test count, suite count.',
      inputSchema: { type: 'object' as const, properties: {} },
    },
  • Handler logic that calls the generic bridge.call method. The tool is executed dynamically on the Selenix backend via HTTP request.
    const result = (await bridge.call(name, (args as Record<string, unknown>) || {})) as Record<string, unknown>
  • Actual implementation of the tool execution logic, which dispatches an HTTP POST request to the Selenix backend API.
    export class BridgeClient {
      async call(endpoint: string, body: Record<string, unknown> = {}): Promise<unknown> {
        // Re-read config on every call so we pick up new tokens after Selenix restarts
        const config = readConfig()
    
        return new Promise((resolve, reject) => {
          const data = JSON.stringify(body)
          const req = http.request(
            {
              hostname: '127.0.0.1',
              port: config.port,
              path: `/api/${endpoint}`,
              method: 'POST',
              headers: {
                'Content-Type': 'application/json',
                Authorization: `Bearer ${config.token}`,
                'Content-Length': Buffer.byteLength(data),
              },
              timeout: 180000, // 3 minutes for long-running operations like run_test
            },
            (res) => {
              let responseData = ''
              res.on('data', (chunk: string) => (responseData += chunk))
              res.on('end', () => {
                try {
                  resolve(JSON.parse(responseData))
                } catch {
                  resolve({ raw: responseData })
                }
              })
            }
          )
          req.on('error', (err) =>
            reject(
              new Error(
                `Cannot connect to Selenix bridge at 127.0.0.1:${config.port}. ` +
                  `Is Selenix running with MCP Server enabled? (${err.message})`
              )
            )
          )
          req.on('timeout', () => {
            req.destroy()
            reject(new Error('Request timed out after 180 seconds'))
          })
          req.write(data)
          req.end()
        })
      }

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/markmircea/Selenix-MCP-Server'

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