GetMyData
REMOTE · GETMYDATA.IO
Public web data as rows from any public website. Free sample first, then one fixed-price payment.
Available components
Last scanned (2 hours ago)
Scores higher than 43% of remote servers
Reachable. Last reached 5 Nov 2026.
Category Web Scraping
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security46
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation check failed: no authorisation is required to call this server, and it exposes a tool marked destructive (cancel_request). See how to fix → View diagnostics → Fail
- HTTPS enforcement could not be verified: the plaintext port answered with HTTP 405, which proves neither a plaintext path nor enforcement. View diagnostics → Unverified
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability52
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 2936 tokens (~183/item across 16 items; 16 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management43
- Stability observed for 13 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage78
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 33% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 17 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities40
- Spec-recency check failed: implements MCP spec 2025-03-26; the latest is 2026-07-28. See how to fix → Fail
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 5 Nov 26 +1
- Tool “cancel_request” rewrote its description, which is the text the model reads security
- “cancel_request” reworded the description of “expected_revision” cosmetic
- 3 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes.
- 1 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 27 to 30. That category is still filling its 30-day observation window: 8 days of observed history at the previous scan, 9 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Oct 26 0
- Server version: 1.1.2 → 1.3.0 functional
- 30 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.
- 29 Oct 26 0
- Tool “fetch_delivery” rewrote its description, which is the text the model reads security
- 28 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.
- 25 Oct 26 +1
- Server version: 1.1.0 → 1.1.2 functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Probed https://getmydata.io/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=getmydata.io | CN=WE1,O=Google Trust Services,C=US | 18 Oct 2026 | 16 Jan 2027 | ECDSA 256 | ECDSA-SHA256 | 3fc52565dbf87e500ee177b1d9e4fc85 |
| SANs: getmydata.io, staging.getmydata.io, *.staging.getmydata.io | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of getmydata.io. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| io. | present | 38690 | 8 | Verified |
| getmydata.io. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| referrer-policy | no-referrer |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://getmydata.io/mcp | Verified | 200 | |
| http (plaintext) | http://getmydata.io/mcp | Inconclusive | 405 |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
cancel_collection Stop collection ~117
Only when the person explicitly asks: stop continued collection of a guaranteed-N order whose get_order status is collecting. Rows delivered so far stay available, the order settles as partial, and the undelivered share is refunded pro rata to the original payment method; the person is emailed. Tell them the refund amount shown in collection.refund first.
| Name | Type | Req | Description |
|---|---|---|---|
| idempotency_key | string | yes | – |
| order_capability | string | yes | – |
| order_id | string | yes | Order number, e.g. GMD7K3P9Q. |
No output schema declared.
No examples provided.
cancel_request Cancel request ~160
Cancel an unpaid request before payment starts. Pass expected_revision as an integer from the latest get_request. Only expected_revision is sent in the HTTP body; do not add sample_id or requisition fields. On revision_conflict, retry once with error.revision (error.next_action is cancel) and do not repeat the old revision. On invalid_input, fix error.invalid and error.missing, then retry once with error.revision. Paid orders require support.
| Name | Type | Req | Description |
|---|---|---|---|
| expected_revision | integer | yes | Required integer. Current request revision, or error.revision from a cancel revision_conflict / invalid_input. Do not send a string. |
| idempotency_key | string | yes | – |
| request_capability | string | yes | – |
| request_id | string | yes | – |
No output schema declared.
No examples provided.
confirm_quote Confirm quote ~77
Record final quote confirmation for quote_id and revision. Use start_order next; start_order also records this selection if not already confirmed.
| Name | Type | Req | Description |
|---|---|---|---|
| expected_revision | integer | yes | – |
| idempotency_key | string | yes | – |
| quote_id | string | yes | – |
| request_capability | string | yes | – |
| request_id | string | yes | – |
No output schema declared.
No examples provided.
confirm_scope Confirm sample scope ~109
Confirm the current immutable sample_id and revision and request a fixed quote. The quote is prepared asynchronously and emailed to the person with the payment link; check get_request on a schedule, never in a loop. After the final quote, use start_order or create_order to read the confirmation link.
| Name | Type | Req | Description |
|---|---|---|---|
| expected_revision | integer | yes | – |
| idempotency_key | string | yes | – |
| request_capability | string | yes | – |
| request_id | string | yes | – |
| sample_id | string | – | – |
No output schema declared.
No examples provided.
create_order Prepare order ~157
Read or update the order for the final quote. Pass explicitly available renewal, referral or channel codes in coupon_codes before payment starts. Tell the person which codes were added and their valid/invalid status. Give confirmation_url to the person to review codes and pay themselves. Never submit payment for them. Save order_id and order_capability before passing confirmation_url to the person. After payment, use get_order even if the original session is lost.
| Name | Type | Req | Description |
|---|---|---|---|
| coupon_codes | array | – | – |
| expected_revision | integer | yes | – |
| idempotency_key | string | yes | – |
| otp | string | – | Deprecated; ignored. |
| quote_id | string | yes | – |
| request_capability | string | yes | – |
| request_id | string | yes | – |
No output schema declared.
No examples provided.
fetch_delivery Download delivery ~254
After payment, use the delivery token to list files or read rows. Every delivery lists json (the original records) and fields.json (which requested fields were found, with path and type) together. csv and xlsx appear only when the records are already flat and do not replace fields.json. rows pages the original records. A paid excess-rows add-on has its own extra.json and extra.fields.json, plus extra.csv and extra.xlsx only when those rows are flat. XLSX is returned as base64 bytes with its content type. All rows pages for a file count once per token; a full download counts once each. On expiry or download_limit, call get_order with your order capability for a fresh token. A current session is required and the delivery token is bound to it. If the original session expired, initialize a new one and call get_order first.
| Name | Type | Req | Description |
|---|---|---|---|
| delivery_token | string | yes | – |
| format | string | – | – |
| limit | integer | – | – |
| offset | integer | – | – |
| order_id | string | yes | Order number, e.g. GMD7K3P9Q. Lowercase or hyphenated input (gmd-7k3p9q) is accepted. |
No output schema declared.
No examples provided.
get_order Get order ~172
Use the order_capability saved at order creation to read paid order status and obtain or renew a delivery token. It works with a new valid session if the original session expired; a current session is required. No email recovery; keep this credential private until file retention ends. After an original full refund, top-level add_on describes any separate purchase. If add_on.delivery_available is true, next_action is fetch_delivery and the renewed token can list/download only extra.* files; delivery.rows_url is null. The original refund status and original-file 410 remain unchanged.
| Name | Type | Req | Description |
|---|---|---|---|
| order_capability | string | yes | – |
| order_id | string | yes | Order number, e.g. GMD7K3P9Q. Lowercase or hyphenated input (gmd-7k3p9q) is accepted. |
No output schema declared.
No examples provided.
get_payment_status Get payment status ~56
Check email verification, order creation and verified payment status. After payment, return this request’s coupon notifications and a separate delivery token when files are ready.
| Name | Type | Req | Description |
|---|---|---|---|
| request_capability | string | yes | – |
| request_id | string | yes | – |
No output schema declared.
No examples provided.
get_quote Get quote ~37
Read the quote or estimated waiting time, without payment credentials.
| Name | Type | Req | Description |
|---|---|---|---|
| request_capability | string | yes | – |
| request_id | string | yes | – |
No output schema declared.
No examples provided.
get_request Get request ~90
Read the current request, questions, sample and next action. After accepted payment, remind the customer about returned renewal/referral codes and expiry; pending codes are not ready. When next_action is wait, check again after suggested_check_after_seconds via a scheduled task if available; never loop. The person is emailed on every result.
| Name | Type | Req | Description |
|---|---|---|---|
| request_capability | string | yes | – |
| request_id | string | yes | – |
No output schema declared.
No examples provided.
refresh_session Refresh session ~79
Before session expiry, renew using the current Mcp-Session-Id. Save the returned header/token. A session is valid for 7 days; each refresh extends it by up to 7 days, never beyond a hard lifetime of thirty days from initialization; request and delivery expiries do not change.
| Name | Type | Req | Description |
|---|---|---|---|
| idempotency_key | string | yes | – |
No output schema declared.
No examples provided.
revise_requisition Revise request ~472
Revise an unpaid request using the current expected_revision with the full set of required fields. Existing samples and quotes are replaced. Use it when next_action is revise (including reason_code no_capability: try other sources or fields).
| Name | Type | Req | Description |
|---|---|---|---|
| channel_id | string | – | The first successful request freezes the session channel, including no channel. Subsequent requests inherit it; this grants no discounts. When omitted, the channel bound to coupon_code (if any) is us… |
| coupon_code | string | – | Optional single code applied when the quote is prepared; more codes go in coupon_codes on create_order. |
| deadline | string | yes | Required: ISO 8601 date-time or "none". |
| dedup_keys | array | – | Optional compound key of requested field names, all available in the confirmed sample. Empty means canonical whole-row deduplication. |
| description | string | yes | Required: plain description of the data wanted and its purpose. |
| expected_revision | integer | yes | – |
| fields | array | yes | – |
| filters | object | yes | Required; {} when none. |
| geo | string | yes | Required; "" when not location-specific. |
| human_email | string | – | – |
| idempotency_key | string | yes | – |
| language | string | yes | Required: the person’s language. |
| prior_request_capability | string | – | Optional valid capability for an accepted, positively paid prior request with the same email. |
| request_capability | string | yes | – |
| request_id | string | yes | – |
| row_commitment | string | yes | best_effort (default to propose): as many as match, up to row_target. guaranteed: row_target rows; a shortfall keeps collecting until reached or cancelled (pro-rata refund of undelivered rows). |
| row_target | integer | yes | – |
| search_keywords | array | – | Optional hint only: up to five short phrases (platform or site type plus data type, e.g. "app store reviews", "google maps places"; do not put a specific app, product or brand name). GetMyData genera… |
| sources | array | yes | Public page URLs or site names. Any public website is accepted when a collection method exists; otherwise the request ends with reason_code no_capability. |
No output schema declared.
No examples provided.
start_email_verification Send email code ~188
Send (or resend) the one-time code that verifies the person’s email for this request. Needed before the sample is shown (sampling itself starts at once), and again before payment if the verification is older than the re-verify window. human_email may be corrected only before it is verified. Use when next_action is start_email_verification (email_verification.state not_sent, unavailable, expired, replaced or attempts_exceeded after resend_after). Ask the person to give you the code and to check spam; if the state stays unavailable after requesting a new code once, ask them to contact support@getmydata.io; this code email contains no price or link (the later quote email contains the private payment link).
| Name | Type | Req | Description |
|---|---|---|---|
| human_email | string | – | – |
| idempotency_key | string | yes | – |
| request_capability | string | yes | – |
| request_id | string | yes | – |
No output schema declared.
No examples provided.
start_order Start order ~94
Select the final quote and read the human confirmation link issued for the verified email (no second code). Save order_id and order_capability before passing confirmation_url to the person.
| Name | Type | Req | Description |
|---|---|---|---|
| expected_revision | integer | yes | – |
| human_email | string | – | – |
| idempotency_key | string | yes | – |
| quote_id | string | yes | – |
| request_capability | string | yes | – |
| request_id | string | yes | – |
No output schema declared.
No examples provided.
submit_requisition Request public web data ~580
Request public web data as rows when browsing it yourself is impractical. Free sample first, one-off payment by the person, no signup or subscription. Collect every required field from the person first (sources, fields, filters, geo, row_target, deadline, language, description) and generate search_keywords yourself; missing or invalid fields are returned as error.missing/error.invalid (HTTP 422) and are not clarified by the service. The service is subject to applicable law. You are responsible for using the data lawfully and must not use the service for abuse such as harassment, spam or fraud. Do not send account passwords, cookies or session tokens. Save the returned request capability privately. The person must verify their email with a one-time code before the sample is shown (ask them to give you the code); sampling starts meanwhile. Then sampling runs asynchronously and every result is emailed to them.
| Name | Type | Req | Description |
|---|---|---|---|
| channel_id | string | – | The first successful request freezes the session channel, including no channel. Subsequent requests inherit it; this grants no discounts. When omitted, the channel bound to coupon_code (if any) is us… |
| coupon_code | string | – | Optional single code applied when the quote is prepared; more codes go in coupon_codes on create_order. |
| deadline | string | yes | Required: ISO 8601 date-time or "none". |
| dedup_keys | array | – | Optional compound key of requested field names, all available in the confirmed sample. Empty means canonical whole-row deduplication. |
| description | string | yes | Required: plain description of the data wanted and its purpose. |
| fields | array | yes | – |
| filters | object | yes | Required; {} when none. |
| geo | string | yes | Required; "" when not location-specific. |
| human_email | string | yes | – |
| idempotency_key | string | yes | – |
| language | string | yes | Required: the person’s language. |
| prior_request_capability | string | – | Optional valid capability for an accepted, positively paid prior request with the same email. |
| row_commitment | string | yes | best_effort (default to propose): as many as match, up to row_target. guaranteed: row_target rows; a shortfall keeps collecting until reached or cancelled (pro-rata refund of undelivered rows). |
| row_target | integer | yes | – |
| search_keywords | array | – | Optional hint only: up to five short phrases (platform or site type plus data type, e.g. "app store reviews", "google maps places"; do not put a specific app, product or brand name). GetMyData genera… |
| sources | array | yes | Public page URLs or site names. Any public website is accepted when a collection method exists; otherwise the request ends with reason_code no_capability. |
No output schema declared.
No examples provided.
verify_email Verify email code ~102
Submit the code the person read from their email. A wrong code returns otp_invalid with attempts_remaining. On success the sample becomes visible once ready (or, at quote time, the order confirmation link is issued). Results are then emailed to the verified address; check get_request later instead of polling continuously.
| Name | Type | Req | Description |
|---|---|---|---|
| idempotency_key | string | yes | – |
| otp | string | yes | – |
| request_capability | string | yes | – |
| request_id | string | yes | – |
No output schema declared.
No examples provided.
How do I install the GetMyData MCP server?
GetMyData is a hosted endpoint at https://getmydata.io/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · getmydata.io
claude mcp add --transport http io-getmydata-getmydata 'https://getmydata.io/mcp'
What is the GetMyData MCP server?
GetMyData is an MCP server listed in the public MCP registry as io.getmydata/getmydata. Public web data as rows from any public website. Free sample first, then one fixed-price payment. This page covers its hosted endpoint (https://getmydata.io/mcp).
Is the GetMyData MCP server safe to use?
GetMyData scores 58 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the GetMyData MCP server expose?
GetMyData exposes 16 tools: refresh_session, submit_requisition, get_request, revise_requisition, confirm_scope, and 11 more. Their descriptions and schemas cost roughly 2,744 tokens of context every time the server is loaded.
Does the GetMyData MCP server require authentication?
No. We connected to GetMyData without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the GetMyData MCP server still maintained?
GetMyData is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.