Skip to main content
Glama

get_score

Retrieve detailed AN Score breakdowns to evaluate API services for AI agents, enabling informed integration decisions through Rhumb's discovery platform.

Instructions

Get detailed AN Score breakdown for a service

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
slugYesService slug to look up

Implementation Reference

  • The handler function for the 'get_score' MCP tool, which fetches a service score via the Rhumb API client.
    export async function handleGetScore(
      input: GetScoreInput,
      client: RhumbApiClient
    ): Promise<GetScoreOutput> {
      try {
        const score = await client.getServiceScore(input.slug);
    
        if (!score) {
          return {
            slug: input.slug,
            aggregateScore: null,
            executionScore: null,
            accessScore: null,
            confidence: 0,
            tier: "unknown",
            explanation: `Service '${input.slug}' not found`,
            freshness: "unknown"
          };
        }
    
        return score;
      } catch (error) {
        const message = error instanceof Error ? error.message : "Unknown error";
        return {
          slug: input.slug,
          aggregateScore: null,
          executionScore: null,
          accessScore: null,
          confidence: 0,
          tier: "unknown",
          explanation: `Failed to fetch score: ${message}`,
          freshness: "unknown"
        };
      }
    }
  • The input schema and TypeScript type definitions for the 'get_score' MCP tool.
    export const GetScoreInputSchema = {
      type: "object" as const,
      properties: {
        slug: { type: "string" as const, description: "Service identifier from find_services results (e.g. 'stripe', 'sendgrid', 'openai', 'twilio')" }
      },
      required: ["slug"] as const
    };
    
    export type GetScoreInput = {
      slug: string;
    };
    
    export type GetScoreOutput = {
      slug: string;
      aggregateScore: number | null;
      executionScore: number | null;
      accessScore: number | null;
      confidence: number;
      tier: string;
      explanation: string;
      freshness: string;
    };
  • The registration of the 'get_score' tool in the MCP server, where the input is validated and passed to the handler.
    // -- get_score ---------------------------------------------------------
    server.tool(
      "get_score",
      "Get the full AN Score breakdown for a Service: execution quality, access readiness, autonomy level, tier label, and freshness. Use after find_services to evaluate a specific Service.",
      {
        slug: z.string().describe(GetScoreInputSchema.properties.slug.description)
      },
      async ({ slug }) => {
        const result = await handleGetScore({ slug }, client);

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/supertrained/rhumb'

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