Skip to main content
Glama
self9dmin

SLA.directory MCP Server

by self9dmin

SLA.directory MCP server

An MCP server that lets AI assistants query SLA.directory in context: uptime commitments, service credits, claim windows, and per-service SLAs for cloud and SaaS vendors.

It reads the public SLA.directory API at runtime (with a short cache). No API key, no data bundled.

Tools

  • search_vendors(query): find vendors and services by name or category.

  • get_vendor(slug): full SLA record for one vendor.

  • get_service_sla(slug, service?): per-service SLAs (e.g. AWS S3 vs EC2), optionally filtered.

  • compare_vendors(slugs[]): key terms side by side (uptime, max credit, claim window, auto-credit).

  • list_categories() and vendors_in_category(category).

Vendor lookups are fuzzy (e.g. "Amazon Web Services" resolves to aws), answers are concise and cited (every result carries the official source URL and verification date), and tools are marked read-only so assistants can call them freely.

Related MCP server: GetMonitor MCP Server

Prompts

Ready-made flows you can pick in the client:

  • sla_review(vendor): summarize one vendor's SLA (uptime, credits, claim process, exclusions, weakest services).

  • compare_for_renewal(vendors): compare several vendors for a renewal decision.

  • weakest_services(vendor): find a vendor's lowest-uptime services for error-budget planning.

Use it

Run with Node 18+ (no install needed once published):

npx sla-directory-mcp

Claude Desktop / Cursor

Add to your MCP config:

{
  "mcpServers": {
    "sla-directory": {
      "command": "npx",
      "args": ["-y", "sla-directory-mcp"]
    }
  }
}

Then ask things like "What's AWS S3's SLA?", "Compare Stripe, Adyen, and PayPal SLA credits", or "Which security vendors offer automatic credits?"

Run from source

npm install
npm run build
node dist/index.js     # stdio server

Point it at a different API base with SLA_API_BASE (defaults to https://sla.directory/api/v1).

License

MIT. SLA data served by the API is licensed CC-BY-4.0 by SLA.directory. Always confirm against the vendor's official SLA before relying on this data for contractual or financial decisions.

Available Tools

6 tools
compare_vendorsCompare vendorsA
Read-only

Compare key SLA terms across several vendors (uptime, max credit, claim window, automatic credits, service count), each with its source.

ParametersJSON Schema
NameRequiredDescriptionDefault
vendorsYesVendor slugs or names, e.g. ['stripe','adyen','paypal'].

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate read-only and open-world behavior. The description adds that each SLA term includes its source, which is useful but limited. No mention of data freshness or vendor coverage constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single clear sentence with no wasted words. It efficiently conveys the tool's purpose and key output details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple parameter set, full schema coverage, and annotations, the description is largely sufficient. It lacks output format details but remains adequate for the tool's straightforward function.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers the parameter 'vendors' with 100% description. The description does not add extra meaning beyond the schema (e.g., no format details or case sensitivity hints).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'compare', the resource 'vendors', and the specific SLA terms (uptime, max credit, etc.). It distinguishes from sibling tools like get_service_sla which focuses on a single vendor/service.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use when comparing multiple vendors' SLAs, but does not explicitly state when to use versus alternatives like search_vendors or vendors_in_category. No exclusion criteria are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_service_slaGet per-service SLAA
Read-only

Get per-service SLAs for a vendor (many platforms publish a separate SLA per service). Optionally filter to one service by name.

ParametersJSON Schema
NameRequiredDescriptionDefault
vendorYesVendor slug or name.
serviceNoOptional service filter, e.g. 'S3', 'compute'.

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint and openWorldHint. The description adds context about multiple SLAs per vendor but doesn't elaborate on behavior like rate limits or auth. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences, front-loaded with the verb and resource. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter tool with no output schema, the description adequately covers purpose and optional filtering. Could mention return type but not required.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear descriptions. The description adds value by explaining the rationale for the optional service filter ('many platforms publish a separate SLA per service').

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Get' and identifies the resource 'per-service SLAs for a vendor'. It naturally distinguishes from sibling tools like 'get_vendor' or 'compare_vendors' by focusing on SLAs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly states the tool's purpose and mentions optional filtering. While it doesn't explicitly list when not to use it, the context from sibling tools implies its specific use case for SLA retrieval.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_vendorGet vendor SLAA
Read-only

Get a vendor's SLA (uptime, credit policy, claim process, per-service SLAs). Accepts a slug or a vendor name (fuzzy). Returns a cited summary by default; pass format:'raw' for the full record.

ParametersJSON Schema
NameRequiredDescriptionDefault
vendorYesVendor slug or name, e.g. 'aws' or 'Amazon Web Services'.
formatNosummary (default) or raw JSON.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description reveals key behaviors: fuzzy matching on vendor name, default summary vs raw format. Annotations confirm read-only and open-world intention. No contradictions, though additional details on edge cases would be beneficial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loading the main action and then detailing input/output. Every word is necessary; no redundancy. Highly efficient for agent consumption.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description explains the returned format ('cited summary' vs 'raw'), but does not detail the structure of the summary. Given the tool simplicity and clear purpose, it is adequate but could describe the summary fields for full completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds value beyond the schema by clarifying the default format and providing concrete examples ('aws', 'Amazon Web Services'). This helps the agent understand parameter usage without referencing the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a vendor's SLA, listing specific details (uptime, credit policy, claim process, per-service SLAs). It distinguishes from siblings like compare_vendors and get_service_sla by focusing on a single vendor's aggregated SLA information.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains inputs (slug or name, fuzzy) and output format options, helping the agent decide when to use this tool. It does not explicitly state when not to use it, but the sibling list provides context for differentiation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_categoriesList categoriesA
Read-only

List all SLA.directory categories with vendor counts.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations provide readOnlyHint and openWorldHint. Description adds that result includes vendor counts, but no detail on behavior (e.g., pagination, limits). Adequate but not enhanced beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, front-loaded with key info. Zero redundancy. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters, rich annotations, and no output schema, the description sufficiently explains purpose and result. No missing elements for this simple list tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist (schema coverage 100%). Description adds nothing about params, but none needed. Baseline for zero parameters is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states 'List all SLA.directory categories with vendor counts.' Verb 'list' and resource 'categories' are specific. Distinct from sibling tools like vendors_in_category or search_vendors, which focus on vendors.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies use when categories with counts are needed, but no explicit guidance on when not to use or alternatives. Sibling tools exist for vendor-specific queries, but description does not differentiate usage scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_vendorsSearch vendorsA
Read-only

Search SLA.directory for vendors and services by name or category (e.g. 'datadog', 'storage', 'payments'). Returns slugs to look up.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesFree-text: a vendor name, service, or category.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint and openWorldHint. Description adds behavior: 'Returns slugs to look up,' indicating what the output contains. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, no fluff. All information is relevant and presented efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple search tool with one parameter and good annotations, description covers purpose, query examples, and output type. Lacks mention of result limits or case sensitivity, but sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with description 'Free-text: a vendor name, service, or category.' Description adds concrete examples ('datadog', 'storage', 'payments') which enhance understanding beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it searches SLA.directory for vendors and services by name or category, and returns slugs. It is distinct from sibling tools like get_vendor or compare_vendors, but does not explicitly differentiate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides examples of queries but does not specify when to use this tool over alternatives like get_vendor or compare_vendors. No explicit when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

vendors_in_categoryVendors in categoryA
Read-only

List vendor summaries in a category (use list_categories for the slug, e.g. 'finance-and-payments').

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryYesCategory slug.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare 'readOnlyHint' and 'openWorldHint', describing safety and open-world nature. The description adds minimal extra behavior ('vendor summaries') but does not disclose pagination, rate limits, or other traits. With annotations covering the core profile, a 3 is appropriate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with a parenthetical example and cross-reference to 'list_categories'. No extraneous content; every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with one parameter, no output schema, and safety annotations, the description is sufficient. It explains the purpose, parameter source, and an example. Minor gap: does not clarify if results are paginated or limited, but not critical given the tool's simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema description for 'category' is 'Category slug.' The description repeats the example slug but adds no new semantic info beyond what the schema provides. Baseline 3 for full schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('List vendor summaries') and the resource ('in a category'), with a concrete example ('e.g. 'finance-and-payments''). It also references 'list_categories' to help obtain the slug, distinguishing it from siblings like 'search_vendors' or 'get_vendor'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly directs users to use 'list_categories' to obtain the correct category slug, providing context on how to use this tool. While it does not explicitly state when not to use it, the specificity of listing vendors in a category implies its niche compared to broader tools like 'search_vendors'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 6 tool updatesv0.2.0
    • First observedcompare_vendors
    • First observedget_service_sla
    • First observedget_vendor
    • First observedlist_categories
    • First observedsearch_vendors
    • First observedvendors_in_category

TDQS

A4.2/5.0

Scored across 6 tools

Disambiguation5/5

Each tool has a clear, distinct purpose: comparing vendors, fetching per-service SLAs, retrieving vendor details, listing categories, searching, and listing vendors by category. There is no overlap in functionality.

Naming Consistency4/5

Most tools use a verb_noun pattern (compare_vendors, get_service_sla, get_vendor, list_categories, search_vendors). However, 'vendors_in_category' uses a noun_preposition_noun structure, breaking the pattern slightly.

Tool Count5/5

With 6 tools, the set is well-scoped for an SLA directory. It covers essential operations without being too numerous or too few, providing a focused interface.

Completeness5/5

The tools cover searching, browsing by category, retrieving vendor details, per-service SLAs, and cross-vendor comparison. This represents a comprehensive read-only surface for the domain, with no obvious gaps.

Maintenance

ActivityStale
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to read messages, threads, channel info, user profiles, search conversations, and generate permalinks in Slack workspaces.
    1
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI assistants to interact with Slack workspaces, including listing channels, posting messages, replying to threads, adding reactions, and retrieving user information.
    10
    48 npm
    MIT