Read D7 Networks balance, SMS pricing and delivery status; look up numbers; send one SMS.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Read the D7 account's remaining credit balance (free; no credit is spent). D7 REST: GET /messages/v1/balance.
This tool takes no arguments.
Read the D7 account's remaining credit balance (free; no credit is spent). D7 REST: GET /messages/v1/balance.
No arguments.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {}
}Read the stored result of an earlier number lookup by its request_id (free; no credit is spent). D7 REST: GET /hlr/v1/report/{request_id}.
| Argument | Type | Description |
|---|---|---|
| request_id* | string | The request_id that d7_lookup_number returned. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"request_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 8,
"description": "The request_id that d7_lookup_number returned."
}
}
}Read the delivery status of an SMS request: per recipient the status (delivered, sent, scheduled, un_delivered, not_reachable, spam_content, insufficient_credit), message parts and cost (free). D7 REST: GET /report/v1/message-log/{request_id}.
| Argument | Type | Description |
|---|---|---|
| request_id* | string | The request_id that d7_send_sms returned. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"request_id"
],
"properties": {
"request_id": {
"type": "string",
"minLength": 8,
"description": "The request_id that d7_send_sms returned."
}
}
}Read the account's price per SMS part, for one country or for all countries (free; no credit is spent). Use it to estimate the cost before d7_send_sms. D7 REST: GET /messages/v1/sms/pricing.
| Argument | Type | Description |
|---|---|---|
| country_iso | string | Two-letter ISO country code, for example AE. Omit for all countries. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"country_iso": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"description": "Two-letter ISO country code, for example AE. Omit for all countries."
}
}
}WRITE (spends credits): look up ONE phone number's carrier data (country, network, MCC/MNC, ported, reachable, mobile or fixed). Each lookup is billed to the D7 account's credit balance (the cost is returned by d7_get_lookup_report as number_lookup_cost) and the account must have lookup routing enabled. It does not message the number. D7 REST: POST /hlr/v1/lookup.
| Argument | Type | Description |
|---|---|---|
| recipient* | string | The phone number, international format with the country code, for example +971501234567. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"recipient"
],
"properties": {
"recipient": {
"type": "string",
"maxLength": 24,
"minLength": 7,
"description": "The phone number, international format with the country code, for example +971501234567."
}
}
}WRITE (sends real text messages and spends credits): send ONE text message to 1-10 recipients (never a list or campaign). Each recipient costs the per-country price for every message part (about 160 GSM characters or 70 unicode characters per part; see d7_get_sms_pricing), taken from the D7 credit balance, and a sent SMS cannot be recalled. Free trial accounts may only use D7's demo sender id; other sender ids must be registered with D7. Send only messages the recipients expect, as unsolicited SMS violates D7's terms. Returns a request_id for d7_get_message_status. D7 REST: POST /messages/v1/send.
| Argument | Type | Description |
|---|---|---|
| tag | string | Your own reference string, stored with the request. |
| content* | string | The message text, at most 640 characters. |
| originator* | string | Sender id shown on the phone: up to 11 letters/digits (alphanumeric) or a registered number. Must be allowed for the account. |
| recipients* | array | 1 to 10 phone numbers, each in international format with the country code, for example +971501234567. |
| data_coding | string | text = GSM 03.38 characters only, unicode = Arabic/Chinese/emoji etc., auto (default) = D7 decides from the content. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"originator",
"recipients",
"content"
],
"properties": {
"tag": {
"type": "string",
"maxLength": 100,
"description": "Your own reference string, stored with the request."
},
"content": {
"type": "string",
"maxLength": 640,
"minLength": 1,
"description": "The message text, at most 640 characters."
},
"originator": {
"type": "string",
"maxLength": 16,
"minLength": 1,
"description": "Sender id shown on the phone: up to 11 letters/digits (alphanumeric) or a registered number. Must be allowed for the account."
},
"recipients": {
"type": "array",
"items": {
"type": "string",
"maxLength": 24,
"minLength": 7
},
"maxItems": 10,
"minItems": 1,
"description": "1 to 10 phone numbers, each in international format with the country code, for example +971501234567."
},
"data_coding": {
"enum": [
"text",
"unicode",
"auto"
],
"type": "string",
"description": "text = GSM 03.38 characters only, unicode = Arabic/Chinese/emoji etc., auto (default) = D7 decides from the content."
}
}
}