io.github.anima-labs-ai/anima
REMOTE · MCP.USEANIMA.SH · SCANNED SEP 21
Give your AI agent an identity it owns: email inbox, US phone number, SMS, voice, and a vault.
Available components
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 Security89
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- The endpoint enforces authorisation, advertised via RFC 9728 protected-resource metadata. View diagnostics → Pass
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- 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
- The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents. View diagnostics → Partial
Transport & Reachability0
- Transport blocked by authentication: the endpoint requires auth we don't have to verify streamable-http. See how to fix → View diagnostics → Unverified
Schema Quality & AI Usability0
- Schema blocked by authentication: the endpoint requires auth we don't have to read it. See how to fix → Unverified
Stability & Change Management0
- Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage0
- Tool coverage blocked by authentication: the endpoint requires auth we don't have to read its tools.Unverified
Tool Safety0
- Tool safety blocked by authentication: the endpoint requires auth we don't have to read its tools.Unverified
Capabilities0
- Capabilities blocked by authentication: the endpoint requires auth we don't have to read them. See how to fix → Unverified
Unverified: 6 categories
Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm. Claim this server and supply a read-only token to verify it and lift the score.
How do I install the io.github.anima-labs-ai/anima MCP server?
io.github.anima-labs-ai/anima is a hosted endpoint at https://mcp.useanima.sh/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 · mcp.useanima.sh
claude mcp add --transport http anima-labs-ai-anima 'https://mcp.useanima.sh/mcp'
{
"mcpServers": {
"anima-labs-ai-anima": {
"url": "https://mcp.useanima.sh/mcp"
}
}
} {
"servers": {
"anima-labs-ai-anima": {
"type": "http",
"url": "https://mcp.useanima.sh/mcp"
}
}
} [mcp_servers.anima-labs-ai-anima] url = "https://mcp.useanima.sh/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"anima-labs-ai-anima": {
"type": "remote",
"url": "https://mcp.useanima.sh/mcp",
"enabled": true
}
}
} openclaw mcp add anima-labs-ai-anima --url 'https://mcp.useanima.sh/mcp' --transport streamable-http
mcp_servers:
anima-labs-ai-anima:
url: "https://mcp.useanima.sh/mcp" {
"McpServers": {
"anima-labs-ai-anima": {
"Transport": "http",
"Url": "https://mcp.useanima.sh/mcp"
}
}
} assistant mcp add anima-labs-ai-anima -t streamable-http -u 'https://mcp.useanima.sh/mcp'
{
"mcpServers": {
"anima-labs-ai-anima": {
"type": "http",
"url": "https://mcp.useanima.sh/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
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.
- 21 Sept 26 −49
- Endpoint reachability: reachable → behind authorisation ▼ security
- Tool safety: pass → unverified ▼ security
- Stability: 0.40 → unverified ▼ security
- Transport: pass → unverified ▼ security
- Authorization: The endpoint enforces authorisation, advertised via RFC 9728 protected-resource metadata. security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Schema quality: 100 → unverified ▼ functional
- 20 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 37 to 40. That category is still filling its 30-day observation window: 11 days of observed history at the previous scan, 12 at this one. The score rises as the window fills, whether or not the server changes.
- 18 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.
- 16 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 13 Sept 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.
- 11 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.
- 9 Sept 26 +1
- Stability: unverified → 0.03 ▲ functional
- 8 Sept 26 +43
- Transport: unverified → pass ▲ security
- Injection markers: unverified → pass ▲ security
- First check of Judged manipulation: pass security
- Authorization: Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token. security
- MCP protocol: unverified → pass ▲ functional
- Schema quality: unverified → 100 ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- First check of Schema quality: fail functional
- First check of Schema quality: excellent functional
- First check of Schema quality: fail functional
- First check of Capabilities: pass functional
- First check of Destructive annotations: 100 functional
- First check of Tool coverage: 100 functional
- First check of Tool coverage: 100 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 21 Sept 2026 · Probed https://mcp.useanima.sh/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=mcp.useanima.sh | CN=WR3,O=Google Trust Services,C=US | 31 Jul 2026 | 29 Oct 2026 | RSA 2048 | SHA256-RSA | 3db3dab4355b41d709425b8bc749683c |
| SANs: mcp.useanima.sh | ||||||
| CN=WR3,O=Google Trust Services,C=US (CA) | CN=GTS Root R1,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | RSA 2048 | SHA256-RSA | 7ff005a91568d63abc22861684aa4b5a |
| CN=GTS Root R1,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 19 Jun 2020 | 28 Jan 2028 | RSA 4096 | SHA256-RSA | 77bd0d6cdb36f91aea210fc4f058d30d |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.useanima.sh. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| sh. | present | 55297 | 8 | Verified |
| useanima.sh. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Enforced and verified
The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.
| Result | Enforced and verified |
|---|---|
| Enforced | On connection |
| HTTP status | 401 |
WWW-Authenticate challenge Bearer resource_metadata="https://mcp.useanima.sh/.well-known/oauth-protected-resource"
Bearer resource_metadata="https://mcp.useanima.sh/.well-known/oauth-protected-resource" | Header | Value |
|---|---|
| www-authenticate | Bearer resource_metadata="https://mcp.useanima.sh/.well-known/oauth-protected-resource" |
Protected resource metadata
| Document | https://mcp.useanima.sh/.well-known/oauth-protected-resource |
|---|---|
| Retrieved | Yes |
| Resource | https://mcp.useanima.sh |
| Authorisation server | https://connect.useanima.sh |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.useanima.sh/mcp | Auth required | 401 | |
| http (plaintext) | http://mcp.useanima.sh/mcp | HTTPS enforced | 302 | https://mcp.useanima.sh/mcp |
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 →
vault_credential_get_totp Get Vault TOTP ~80
Get the current TOTP code for a credential that has a TOTP secret configured. Returns the live 6-digit code derived from the stored secret — the secret itself is never disclosed.
| Name | Type | Req | Description |
|---|---|---|---|
| agentId | string | – | Agent ID that owns the credential. Optional when using an agent-bound credential. |
| id | string | yes | Credential ID. |
Structured output declared, but exposes no named fields.
No examples provided.
vault_credential_list List Vault Credentials ~82
List credentials in an agent vault with optional type filter. Use to browse stored secrets before reading, updating, or deleting entries. Sensitive fields are masked.
| Name | Type | Req | Description |
|---|---|---|---|
| agentId | string | – | Agent ID whose vault to list. Optional when using an agent-bound credential (ak_* or oat_* with agentId). |
| type | string | – | Optional credential type filter. |
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | – | – |
| cursor | string|null | – | – |
| has_more | boolean | – | – |
| items | array | – | – |
| next_offset | number | – | – |
| total | number | – | – |
No examples provided.
vault_credential_request_cancel Cancel Credential Request ~61
Cancel a pending credential request by ID. Invalidates the single-use fill link so the human can no longer submit a value. Use when the request is no longer needed or was created in error.
| Name | Type | Req | Description |
|---|---|---|---|
| requestId | string | yes | Credential-request ID. |
Structured output declared, but exposes no named fields.
No examples provided.
vault_credential_request_create Request Credential From Human ~275
Request a credential from a HUMAN without the agent or LLM ever seeing the secret. When the connecting MCP client supports inline elicitation, the human is shown a form to type the secret directly — the tool returns `status: FULFILLED` with the `credentialId` in one call, no link needed. Otherwise it returns a single-use fill link (`fillUrl`, emailed to the org owner); poll vault_credential_request_status until `status` is FULFILLED, then use the returned `credentialId` as a normal vault credential. Use this when a flow needs a secret the agent doesn't hold and can't safely be given (passwords, API keys, card numbers).
| Name | Type | Req | Description |
|---|---|---|---|
| agentId | string | – | Agent ID whose vault the requested credential lands in. Optional when using an agent-bound credential. |
| name | string | yes | Human-readable name for the requested credential. |
| notifyOwner | boolean | – | Whether to email the single-use fill link to the org owner. Defaults to true. |
| reason | string | yes | Plain-language reason shown to the human explaining why the credential is needed. |
| ttlSeconds | number | – | Optional fill-link lifetime in seconds before the request expires. |
| type | string | yes | Credential type the human will be asked to fill: login, secure_note, or card. |
Structured output declared, but exposes no named fields.
No examples provided.
vault_credential_request_fill Submit Credential (widget) ~66
Internal: submit a credential-request secret from the Anima UI widget. Not for direct agent use.
| Name | Type | Req | Description |
|---|---|---|---|
| fillToken | string | yes | Single-use fill token from the ui-tier render-data. |
| values | object | yes | The secret field values the human entered in the widget. |
Structured output declared, but exposes no named fields.
No examples provided.
vault_credential_request_status Get Credential Request Status ~85
Get the status of a pending credential request by ID. Poll this after vault_credential_request_create until `status` is FULFILLED, then use `credentialId` as a normal vault credential. `maskedPreview` shows a redacted hint of the filled value once available — the plaintext is never returned.
| Name | Type | Req | Description |
|---|---|---|---|
| requestId | string | yes | Credential-request ID. |
Structured output declared, but exposes no named fields.
No examples provided.
vault_credential_search Search Vault ~108
Search vault credentials by keyword across names and content. Use when you know part of the name, URL, or username but not the exact credential ID. Different access pattern from vault_credential_list — list is paginated browsing, search is text-query lookup.
| Name | Type | Req | Description |
|---|---|---|---|
| agentId | string | – | Agent ID whose vault to search. Optional when using an agent-bound credential. |
| search | string | yes | Search text matched against names and content. |
| type | string | – | Optional credential type filter. |
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | – | – |
| cursor | string|null | – | – |
| has_more | boolean | – | – |
| items | array | – | – |
| next_offset | number | – | – |
| total | number | – | – |
No examples provided.
vault_credential_update Update Vault Credential ~223
Update an existing vault credential by ID, including optional structured sections and metadata flags. Use to rotate passwords or revise stored details.
| Name | Type | Req | Description |
|---|---|---|---|
| agentId | string | – | Agent ID that owns the credential. Optional when using an agent-bound credential. |
| apiKey | object | – | Optional updated API key payload. Changing allowedHosts requires a master key. |
| card | object | – | Optional updated card payload. |
| certificate | object | – | Optional updated certificate payload. |
| favorite | boolean | – | Optional updated favorite flag. |
| fields | array | – | Optional updated custom fields. |
| id | string | yes | Credential ID to update. |
| identity | object | – | Optional updated identity payload. |
| login | object | – | Optional updated login payload. |
| name | string | – | Optional updated name. |
| notes | string | – | Optional updated note text. |
| oauthToken | object | – | Optional updated OAuth token payload. |
| revealPolicy | string | – | Optional reveal-policy change. Upgrading standard → brokered needs UPDATE access; downgrading brokered → standard is master-key-only. |
Structured output declared, but exposes no named fields.
No examples provided.
vault_credential_use Use Vault Credential ~231
Make an outbound HTTPS call with a stored credential attached SERVER-SIDE, and get the upstream response. Use this to act with a secret (call an API, hit an authed endpoint) WITHOUT ever seeing the plaintext — the platform injects the credential on the wire. The target host must be on the credential's allowlist. Works even for `brokered` credentials that can never be revealed. Prefer this over trying to read a secret: you can use it, you cannot see it.
| Name | Type | Req | Description |
|---|---|---|---|
| agentId | string | – | Agent ID that owns the credential. Optional when using an agent-bound credential. |
| body | string | – | Raw request body (encode JSON yourself). |
| headers | object | – | Extra request headers. Any Authorization / auth header you set is IGNORED and replaced by the real credential. |
| id | string | yes | Credential ID to broker the call with. |
| method | string | yes | HTTP method for the outbound call. |
| url | string | yes | Absolute https:// URL to call. Its host MUST be on the credential's allowlist (allowedHosts / login URIs). |
Structured output declared, but exposes no named fields.
No examples provided.
vault_exchange_token_for_injection Exchange Vault Token (injection) ~130
Exchange a vtk_ vault token for the PLAINTEXT credential, to inject into a trusted client process (a CLI, the browser extension) — NOT to read it yourself. The API gates this to injector credentials: it only succeeds for a master key or a key carrying the `vault:inject` scope; a plain agent key gets 403. If you are an agent that needs to USE a secret, do NOT use this — use vault_credential_use (the server-side broker), which never reveals the secret.
| Name | Type | Req | Description |
|---|---|---|---|
| token | string | yes | The vtk_ vault token to exchange. |
Structured output declared, but exposes no named fields.
No examples provided.
vault_provision Provision Vault ~78
Provision a credential vault for an agent. Required before vault_credential_create can be called against a freshly-created agent — without a vault, credentials have nowhere to live. Idempotent: returns the existing vault if one already exists. Master-key only.
| Name | Type | Req | Description |
|---|---|---|---|
| agentId | string | yes | Agent ID to provision a vault for. Master-key only. |
Structured output declared, but exposes no named fields.
No examples provided.
voice_list List AI Voices ~131
List available AI voices for placing phone calls. The catalog is multilingual — filter by language or gender. Each voice includes descriptive metadata and a vendor-neutral audio preview URL (sampleUrl), plus the voice ID needed for phone_call_create.
| Name | Type | Req | Description |
|---|---|---|---|
| gender | string | – | Filter by voice gender. |
| language | string | – | Filter by BASE language code — the bare two-letter code, e.g. 'en' or 'fr'. Matching is a prefix test against the catalog's own base codes, so a region tag like 'en-US' matches nothing. Call without… |
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | – | – |
| cursor | string|null | – | – |
| has_more | boolean | – | – |
| items | array | – | – |
| next_offset | number | – | – |
| total | number | – | – |
No examples provided.
webhook_delete Delete Webhook ~53
Delete a webhook subscription by ID. Permanently removes the configuration and stops future deliveries. To temporarily pause without deleting, use webhook_set with { id, active: false }.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Webhook ID |
| Name | Type | Req | Description |
|---|---|---|---|
| deleted | boolean | – | – |
| id | string | – | – |
No examples provided.
webhook_get Get Webhook ~40
Get a webhook subscription by ID. Returns the full configuration (URL, subscribed events, active state, description).
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Webhook ID |
Structured output declared, but exposes no named fields.
No examples provided.
webhook_list List Webhooks ~62
List webhook subscriptions for the calling org with cursor pagination. Use to enumerate existing webhooks before set/delete operations.
| Name | Type | Req | Description |
|---|---|---|---|
| cursor | string | – | Pagination cursor from a previous list call |
| limit | integer | – | Maximum number of webhooks to return (1-100) |
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | – | – |
| cursor | string|null | – | – |
| has_more | boolean | – | – |
| items | array | – | – |
| next_offset | number | – | – |
| total | number | – | – |
No examples provided.
webhook_set Set Webhook ~275
Create or update a webhook subscription (upsert). If `id` is provided the call updates that webhook (PUT). If omitted it creates a new one (POST) — `url` and `events` are then required. Use this for declarative 'ensure webhook X exists' workflows.
| Name | Type | Req | Description |
|---|---|---|---|
| active | boolean | – | Whether the webhook is active. Defaults to true on create. |
| authConfig | – | – | Auth the platform presents to your endpoint IN ADDITION to the always-on X-Anima-Signature HMAC — a bearer token, HTTP basic, or a custom header. Pass { type: 'none' } to remove it. |
| description | string | – | Optional human-readable label |
| events | array | – | List of event types to subscribe to (e.g. 'message.received', 'email.bounced'). Required on create; optional on update. |
| id | string | – | Webhook ID. Present → updates that webhook (PUT). Omitted → creates a new one (POST). |
| maxAttempts | integer | – | Max delivery attempts before dead-lettering (default 3) |
| rateLimitPerMinute | integer | – | Max deliveries per minute to this endpoint; omit for unlimited |
| url | string | – | HTTPS endpoint URL that will receive event payloads. Required on create; optional on update. |
Structured output declared, but exposes no named fields.
No examples provided.
webhook_test Test Webhook ~86
Send a test event payload to a webhook to verify the endpoint is reachable and signature verification works. Returns a deliveryId you can correlate with your endpoint's logs.
| Name | Type | Req | Description |
|---|---|---|---|
| event | string | – | Event type to simulate in the test payload (e.g. 'message.received'). Defaults to 'message.received'. |
| id | string | yes | Webhook ID to send a test delivery to |
Structured output declared, but exposes no named fields.
No examples provided.
What is the io.github.anima-labs-ai/anima MCP server?
io.github.anima-labs-ai/anima is an MCP server listed in the public MCP registry as io.github.anima-labs-ai/anima. Give your AI agent an identity it owns: email inbox, US phone number, SMS, voice, and a vault. This page covers its hosted endpoint (https://mcp.useanima.sh/mcp).
Is the io.github.anima-labs-ai/anima MCP server safe to use?
io.github.anima-labs-ai/anima scores 36 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 io.github.anima-labs-ai/anima MCP server expose?
io.github.anima-labs-ai/anima exposes 67 tools: agent_create, agent_get, agent_list, agent_update, agent_delete, and 62 more. Their descriptions and schemas cost roughly 8,116 tokens of context every time the server is loaded.
Does the io.github.anima-labs-ai/anima MCP server require authentication?
Yes. io.github.anima-labs-ai/anima asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.
Is the io.github.anima-labs-ai/anima MCP server still maintained?
io.github.anima-labs-ai/anima is still listed as active in the MCP registry. We last reached this channel on 21 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.