protogrid

Search / com.msg91.mcp/mcp

MSG91

R0· no sign-in

Find and call the right MSG91 API for SMS, OTP, WhatsApp, Email and Voice.

v1.0.0 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality88good
Trust96of 100
Uptime, 30 days100%
Latency p501455 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "mcp": {
      "type": "http",
      "url": "https://mcp.msg91.com/mcp"
    }
  }
}
claude mcp add --transport http mcp https://mcp.msg91.com/mcp
[mcp_servers.mcp]
url = "https://mcp.msg91.com/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "mcp": {
      "type": "remote",
      "url": "https://mcp.msg91.com/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "mcp": {
      "type": "http",
      "url": "https://mcp.msg91.com/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=mcp&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLm1zZzkxLmNvbS9tY3AifQ%3D%3D"
}
{
  "servers": {
    "mcp": {
      "type": "http",
      "url": "https://mcp.msg91.com/mcp"
    }
  }
}
{
  "mcpServers": {
    "mcp": {
      "httpUrl": "https://mcp.msg91.com/mcp"
    }
  }
}
extensions:
  "mcp":
    enabled: true
    name: "mcp"
    type: streamable_http
    uri: "https://mcp.msg91.com/mcp"
    timeout: 300

Quality 88 / 100good

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene94 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations3 of 3 tools declare readOnlyHint or destructiveHint
  • warn
    tools.directory_hints2 of 3 tools declare all four hints; missing: quickstart-msg91 (idempotentHint)
  • pass
    tools.token_costabout 510 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
  • pass
    tools.hidden_textno hidden text in tool names, descriptions, schemas or annotations
stability100 · weight 15
  • pass
    stability.changes4 tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
  • pass
    stability.new_linksno tool change named a new site
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

3 tools, about 510 tokens to load them all · tool set cabcafb5f71a · tools last changed 2026-11-12 · checked 2026-11-14 07:36 UTC

Tool changes

  • call_any_read_api_of_msg91removed

    Read from any MSG91 API endpoint with a GET request for the user and return its response. Use it once you know the exact endpoint: look it up with get_msg91_api_docs first to get its URL, headers, query params and body, unless the skill or a dedicated tool on this server already gives them exactly. Load the quickstart-msg91 skill first: it explains which tool to use when. For POST, PUT, PATCH and DELETE use call_any_api_of_msg91. Pass the full url with path variables filled in, the headers the docs list, and query params in `query` (not in the url). For the auth header the docs name (Authorization, proxy_auth_token, x-api-key, ...), pass it with an empty value "": the signed-in user's token is filled in automatically. Never put a real or made-up token there; if the docs name no auth header, leave it out and the token is sent as Authorization. If the API needs the user to sign in, they're asked the first time. Returns { status, ok, headers, data }: the HTTP status and the response body, including error details on failure.

  • call_any_api_of_msg91removed

    Send a POST, PUT, PATCH or DELETE request to any MSG91 API endpoint for the user and return its response. Use it once you know the exact endpoint: look it up with get_msg91_api_docs first to get its URL, headers, query params and body, unless the skill or a dedicated tool on this server already gives them exactly. Load the quickstart-msg91 skill first: it explains which tool to use when. For GET requests use call_any_read_api_of_msg91. Pass the full url with path variables filled in, the headers the docs list, query params in `query` (not in the url) and the JSON body in `body`. For the auth header the docs name (Authorization, proxy_auth_token, x-api-key, ...), pass it with an empty value "": the signed-in user's token is filled in automatically. Never put a real or made-up token there; if the docs name no auth header, leave it out and the token is sent as Authorization. If the API needs the user to sign in, they're asked the first time. Returns { status, ok, headers, data }: the HTTP status and the response body, including error details on failure.

  • call_any_read_api_of_msg91added

    Read from any MSG91 API endpoint with a GET request for the user and return its response. Use it once you know the exact endpoint: look it up with get_msg91_api_docs first to get its URL, headers, query params and body, unless the skill or a dedicated tool on this server already gives them exactly. Load the quickstart-msg91 skill first: it explains which tool to use when. For POST, PUT, PATCH and DELETE use call_any_api_of_msg91. Pass the full url with path variables filled in, the headers the docs list, and query params in `query` (not in the url). For the auth header the docs name (Authorization, proxy_auth_token, x-api-key, ...), pass it with an empty value "": the signed-in user's token is filled in automatically. Never put a real or made-up token there; if the docs name no auth header, leave it out and the token is sent as Authorization. If the API needs the user to sign in, they're asked the first time. Returns { status, ok, headers, data }: the HTTP status and the response body, including error details on failure.

  • call_any_api_of_msg91added

    Send a POST, PUT, PATCH or DELETE request to any MSG91 API endpoint for the user and return its response. Use it once you know the exact endpoint: look it up with get_msg91_api_docs first to get its URL, headers, query params and body, unless the skill or a dedicated tool on this server already gives them exactly. Load the quickstart-msg91 skill first: it explains which tool to use when. For GET requests use call_any_read_api_of_msg91. Pass the full url with path variables filled in, the headers the docs list, query params in `query` (not in the url) and the JSON body in `body`. For the auth header the docs name (Authorization, proxy_auth_token, x-api-key, ...), pass it with an empty value "": the signed-in user's token is filled in automatically. Never put a real or made-up token there; if the docs name no auth header, leave it out and the token is sent as Authorization. If the API needs the user to sign in, they're asked the first time. Returns { status, ok, headers, data }: the HTTP status and the response body, including error details on failure.

Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 96 / 100

provenance85
liveness100
freshness100
hygiene100

+repository +dns-namespace +website +reachable +uptime-100% +updated-15d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.msg91.com/mcp streamable-httpnoneyes100%1455 ms2025-11-252026-11-14

Tools (3)

get_msg91_api_docsread-onlyBrowse the MSG91 API docs, one level at a time. Call it without arguments to get the top level: the modules and pages with a short description and the endpoints they hold. Call it with `path` set to a module's or page's link (or path) to get what is inside it; each listing links the next level. Call it with `path` set to an endpoint's link ending in ".openapi.yml" to get that endpoint as an OpenAPI file: method, url, headers, query params, path variables, a request body example and sample responses. Fetch only the level you need.
quickstart-msg91read-onlyQuickstart for the MSG91 API Call this to load the full instructions for this skill before doing the task.
search_msg91_docsread-onlySearch the MSG91 documentation with a natural-language question. Returns the most relevant passages with their page URLs.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "com.msg91.mcp/mcp",
  "icons": [
    {
      "src": "https://stuff.thingsofbrand.com/msg91.com/images/imge_msg91.svg",
      "sizes": [
        "any"
      ],
      "mimeType": "image/svg+xml"
    }
  ],
  "title": "MSG91",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.msg91.com/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "1.0.0",
  "repository": {
    "url": "https://github.com/walkover-mcp/msg91",
    "source": "github"
  },
  "websiteUrl": "https://msg91.com",
  "description": "Find and call the right MSG91 API for SMS, OTP, WhatsApp, Email and Voice."
}