Anythink all-in-one backend: data, auth, files, workflows, payments, APIs
NUGET · ANYTHINK-MCP · 2 COMPONENTS
Sick of stitched-together services? Anythink is the all-in-one backend, configured with AI.
Available components
Last scanned (3 hours ago)
Scores higher than 68% of NuGet servers
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security100
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- No production dependencies, so there is no dependency health to assess. View diagnostics → Pass
Provenance & Transparency45
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Build provenance not yet verified. View diagnostics → Unverified
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 24 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability73
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 24748 tokens (~141/item across 175 items; 175 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 Management78
- Stability check failed: the tool surface changed between 0.2.22 and 0.2.37: 0 tool removals, 7 breaking changes, 159 additions. See how to fix → Fail
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety93
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 42 of 59 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "pay_subscriptions_get" implies "pay" and declares readOnlyHint instead, contradicting what its own name says it does. See how to fix → Partial
- An AI judge read all 175 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
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.
- 1 Nov 26 0
- Security disclosure: unverified → fail ▼ functional
- 30 Oct 26 0
- Security disclosure: fail → unverified ▼ functional
- 28 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 75 to 78.
- 27 Oct 26 −1
No change was recorded against any check on this day. Stability & Change Management went from 78 to 75.
- 21 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 75 to 78.
- 20 Oct 26 −1
No change was recorded against any check on this day. Stability & Change Management went from 78 to 75.
- 17 Oct 26 +3
No change was recorded against any check on this day. Stability & Change Management went from 61 to 78.
- 15 Oct 26 −3
No change was recorded against any check on this day. Stability & Change Management went from 78 to 58.
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 · Analysed nuget/anythink-mcp@0.2.37
Provenance Inconclusive
We could not complete the check, so nothing is claimed either way. This is a gap on our side, not a finding about the package.
| Result | Inconclusive |
|---|---|
| Ecosystem | nuget |
| Reason | Attestation not fetched |
Signer
| Signed as | Repository signature, names nuget.org |
|---|---|
| Subject | CN=NuGet.org Repository by Microsoft,O=NuGet.org Repository by Microsoft,L=Redmond,ST=Washington,C=US |
| Issuer | CN=DigiCert Trusted G4 Code Signing RSA4096 SHA384 2021 CA1,O=DigiCert\, Inc.,C=US |
| Valid from | 23 Feb 2024 |
| Valid until | 18 May 2027 |
| Service index | https://api.nuget.org/v3/index.json |
| Owners | chris_addams |
Background: How many MCP packages publish verified provenance →
Dependencies 0 packages
| Packages resolved | 0 |
|---|---|
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
Registry declarations For information only
What the registry and the package's own manifest say about this version. The publisher or the registry writes these, nothing here is verified, and none of it affects the score.
| Repository | https://github.com/anythink-cloud/anythink-cli |
|---|---|
| Repository type | git |
| Commit | fe0bae2cda9f536ea08e4a3caa2cb74d8312b9fa |
| Project URL | https://github.com/anythink-cloud/anythink-cli |
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 →
fetch Fetch ~165
Make an authenticated API request to the active project. Sends a request to any project endpoint, with the path relative to /org/{project}, using the CLI's credentials, and prints the response body. Use it only where no dedicated tool exists, such as /permissions or integration field options; POST, PUT and DELETE change data. all follows every page of a GET. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| all | boolean | – | Follow every page of a paged GET response, printing each page as it arrives |
| body | string | – | Request body (JSON string) |
| method | string | – | HTTP method (default: GET) |
| path | string | yes | API path (e.g. /integrations/definitions/slack) |
No output schema declared.
No examples provided.
fields_add Fields: add ~447
Add a field to an entity. Adds a column to an existing entity; always pass the database type. The display type defaults from it (varchar to input, boolean to checkbox, relationships to relationship). Relationship types need the target entity's name, and on-delete defaults to CASCADE; user and file fields link to users and files automatically. Returns the new field's id.
| Name | Type | Req | Description |
|---|---|---|---|
| default | string | – | Default value |
| description | string | – | Field description |
| display | string | – | Display type: input, textarea, rich-text, select, entity-select, radio, country-select, checkbox, short-date, long-date, timestamp, relationship, file, secret, user, jsonb, geo, dynamic-reference |
| entity | string | yes | Entity name |
| indexed | boolean | – | Add database index |
| label | string | – | Human-readable label |
| multiple | boolean | – | Allow multiple values on a select field |
| name | string | yes | Field name (snake_case) |
| name_field | boolean | – | Set as name field |
| on_delete | string | – | Deletion behavior: CASCADE, SET NULL, SET DEFAULT, RESTRICT (default: CASCADE). Underscores are accepted (SET_NULL, SET_DEFAULT) and normalised. |
| options | string | – | Comma-separated option list for select display, e.g. "Running,Cycling,Rugby". Use label=value to split, e.g. "Running=running,Cycling=cycling" |
| public | boolean | – | Mark field as public |
| required | boolean | – | Mark field as required |
| searchable | boolean | – | Enable full-text search on this field |
| target | string | – | Target entity name for relationship fields (many-to-one, one-to-many, many-to-many) |
| type | string | – | Database type: varchar, varchar array, text, integer, integer array, bigint, bigint array, decimal, decimal array, boolean, date, timestamp, jsonb, geo, file, user, one-to-one, one-to-many, many-to-o… |
| unique | boolean | – | Enforce unique constraint |
No output schema declared.
No examples provided.
fields_delete Fields: delete ~93
Delete a field from an entity. Takes the field's name, not its id, and drops that column from the entity, so the value it held is lost from every record. To remove the whole entity and its records, use `entities_delete`. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| entity | string | yes | Entity name |
| field_name | string | yes | Field name |
No output schema declared.
No examples provided.
fields_get Fields: get ~90
Get the full definition of one field (including relationship config). Finds the field by name on the entity (not case-sensitive) and returns its full definition as a JSON object, including relationship settings, select options, default value and search flags. To see every field on an entity at once, use `fields_list`.
| Name | Type | Req | Description |
|---|---|---|---|
| entity | string | yes | Entity name |
| field_name | string | yes | Field name |
No output schema declared.
No examples provided.
fields_list Fields: list ~85
List fields on an entity. Takes the entity name. Returns each field's id, name, label, database type, display type and its required, unique, indexed and locked flags. For one field's complete definition, including relationship target and select options, use `fields_get`; for the entity's own settings, use `entities_get`.
| Name | Type | Req | Description |
|---|---|---|---|
| entity | string | yes | Entity name |
No output schema declared.
No examples provided.
fields_update Fields: update ~372
Update properties of an existing field. Changes a field's label, description, display type, default value, select options and its required, searchable, public-search and indexed flags. Settings you don't pass keep their value, except the description, which is cleared unless passed again. It cannot rename a field or change its database type, and locked fields are refused. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| default | string | – | Default value |
| description | string | – | Field description |
| display | string | – | Display type: input, textarea, rich-text, select, entity-select, radio, country-select, checkbox, short-date, long-date, timestamp, relationship, file, secret, user, jsonb, geo, dynamic-reference |
| entity | string | yes | Entity name |
| field_name | string | yes | Field name to update |
| indexed | boolean | – | Add database index |
| label | string | – | Human-readable label |
| multiple | boolean | – | Allow multiple values on a select field |
| no_indexed | boolean | – | Remove database index |
| no_multiple | boolean | – | Restrict to a single value on a select field |
| no_public | boolean | – | Remove public searchable flag |
| no_required | boolean | – | Remove required constraint |
| no_searchable | boolean | – | Disable full-text search on this field |
| options | string | – | Comma-separated option list for select display, e.g. "Running,Cycling,Rugby". Use label=value to split, e.g. "Running=running,Cycling=cycling" |
| public | boolean | – | Mark field as publicly searchable |
| required | boolean | – | Mark field as required |
| searchable | boolean | – | Enable full-text search on this field |
No output schema declared.
No examples provided.
files_delete Files: delete ~98
Delete a file by ID. Removes the file from the project's storage by its id. Records that reference it through a file field follow that field's on-delete rule; with the default, CASCADE, they are deleted too. To see what is stored first, use `files_get`. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| id | integer | yes | File ID to delete. Find it with files_list. |
No output schema declared.
No examples provided.
files_get Files: get ~77
Get file metadata by ID. Returns one file's original and stored names, type, size, whether it is public and when it was uploaded. It gives metadata only, not the file's contents or a download link. To browse all files, use `files_list`.
| Name | Type | Req | Description |
|---|---|---|---|
| id | integer | yes | File ID. Find it with files_list. |
No output schema declared.
No examples provided.
files_list Files: list ~94
List uploaded files. Returns one page of the project's uploaded files, 25 by default, with each file's id, original name, type, size, whether it is public and when it was uploaded. Use `files_get` for one file's details, including its stored name.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Items per page (default: 25) |
| page | integer | – | Page number (default: 1) |
No output schema declared.
No examples provided.
files_upload Files: upload ~105
Upload a file. Uploads a file from a path on the machine running the CLI to the project's file storage and returns its new id and stored name. Files are private by default; a public file can be fetched without signing in. Use the returned id as the value of a file field with `data_create` or `data_update`.
| Name | Type | Req | Description |
|---|---|---|---|
| path | string | yes | Path to the file to upload |
| public | boolean | – | Make the file publicly accessible (default: false) |
No output schema declared.
No examples provided.
import_directus Import: directus ~337
Import collections, fields, flows, and data from a Directus instance. Writes into the active project: run with --dry-run first and add --yes only once the user has approved the plan. Copies a Directus instance's collections and fields into the active project as entities and fields; flows, files, roles and records come across only with include_flows, include_files, include_roles and include_data. Call it with dry_run first and show the user the plan, because a call without dry_run applies the import straight away. Returns JSON. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| allow_insecure | boolean | – | Allow a plain http:// Directus URL (localhost is always allowed) |
| dry_run | boolean | – | Preview what would be imported without making any changes |
| include_data | boolean | – | Also import records from each collection (schema must already match) |
| include_files | boolean | – | Also download files from Directus and re-upload to Anythink (runs before --include-data) |
| include_flows | boolean | – | Also import Directus flows as Anythink workflows |
| include_roles | boolean | – | Also import Directus roles + permissions, and promote collections to is_public when the Public policy can read them |
| to | string | – | Target Anythink project profile (defaults to the active profile) |
| token | string | – | Directus static or admin token. Prefer the DIRECTUS_TOKEN environment variable: a flag lands in shell history and the process list |
| url | string | – | Directus instance base URL (e.g. https://cms.example.com) |
No output schema declared.
No examples provided.
integrations_connect Integrations: connect ~188
Connect to a provider with an API key (prompts for the key if not given). Only for providers whose auth type is api_key (see `integrations_get`); OAuth providers fail here and need `integrations_oauth_configure`. Stores the key encrypted on the server and creates a project-wide connection, or a private one with user_connection, printing its id. Pass the key in api_key, then check the connection with `integrations_test`.
| Name | Type | Req | Description |
|---|---|---|---|
| api_key | string | – | API key for the provider. If omitted, you'll be prompted (input is hidden). |
| name | string | – | Friendly name for this connection (default: "<provider> connection") |
| provider | string | yes | Provider key (e.g. claude, openai) |
| user_connection | boolean | – | Make this a user-scoped connection (only the current user sees it). Default: tenant-wide. |
No output schema declared.
No examples provided.
integrations_connections_list Integrations: connections list ~82
List your integration connections. Shows each connection's id, provider, name, scope (the whole project or one user) and whether it is enabled; stored credentials are never shown. Use the id with `integrations_test`, `integrations_enable`, `integrations_disable` and `integrations_disconnect`.
| Name | Type | Req | Description |
|---|---|---|---|
| provider | string | – | Filter to a specific provider |
No output schema declared.
No examples provided.
integrations_disable Integrations: disable ~75
Disable a connection. Stops `integrations_execute` and workflow steps from using the connection but keeps its stored credentials, so `integrations_enable` can turn it back on. Prefer this to `integrations_disconnect` when the pause may be temporary.
| Name | Type | Req | Description |
|---|---|---|---|
| connection_id | string | yes | Connection ID. Find it with integrations_connections_list. |
No output schema declared.
No examples provided.
integrations_disconnect Integrations: disconnect ~93
Delete a connection. Removes the connection and its stored credentials from the project; workflow steps that rely on it fail until the provider is connected again with `integrations_connect` or the OAuth flow. Use `integrations_disable` to pause it instead. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| connection_id | string | yes | Connection ID to delete. Find it with integrations_connections_list. |
No output schema declared.
No examples provided.
integrations_enable Integrations: enable ~72
Enable a connection. Turns a disabled connection back on so `integrations_execute` and workflow steps can use it again; its stored credentials are unchanged. Returns the connection's name and new state. The opposite is `integrations_disable`.
| Name | Type | Req | Description |
|---|---|---|---|
| connection_id | string | yes | Connection ID. Find it with integrations_connections_list. |
No output schema declared.
No examples provided.
integrations_execute Integrations: execute ~155
Run an operation on a connected provider. Calls the provider live with the project's first enabled connection to it, using inputs given as key=value pairs or a JSON object, and may incur the provider's charges. The API currently runs only the claude provider (inputs prompt, system_prompt, model, max_tokens); other providers return an error, so use them in workflow steps via `workflows_integration_add`. Returns JSON.
| Name | Type | Req | Description |
|---|---|---|---|
| input | array | – | Input parameter as key=value. Repeatable. |
| inputs | string | – | Inputs as a JSON object, e.g. '{"prompt":"hello"}' |
| operation | string | yes | Operation key (see 'integrations get <provider>') |
| provider | string | yes | Provider key |
No output schema declared.
No examples provided.
integrations_get Integrations: get ~95
Show details and operations for one provider. Shows the provider's description, auth type and each operation's key, name and description. Operation keys are what `integrations_execute` and workflow integration steps (`workflows_integration_add`) take. It does not say whether the project is connected; `integrations_connections_list` does.
| Name | Type | Req | Description |
|---|---|---|---|
| provider | string | yes | Integration provider key (e.g. claude, slack, hubspot) |
No output schema declared.
No examples provided.
integrations_list Integrations: list ~89
List available integration providers. Start here when connecting a third-party service. Shows each provider's key, category, auth type (api_key or oauth2) and operation count; providers turned off for this project are left out. Next, read a provider with `integrations_get`, then connect it with `integrations_connect` (API key) or `integrations_oauth_configure` (OAuth).
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
integrations_oauth_callback_url Integrations: oauth callback url ~91
Print the redirect URL to add to OAuth app configurations (same for every provider). Prints only the dashboard redirect URL for this project, worked out locally from the API address and project id without an API call. Give it to the user to add to their OAuth app at the provider before `integrations_oauth_configure`; `integrations_oauth_status` shows it with the provider's setup state.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
integrations_oauth_configure Integrations: oauth configure ~198
Set the OAuth client ID + secret for a provider. Saves the client ID and secret of an OAuth app the user created at the provider and enables it for the project (disable saves it switched off). Each run replaces the previous settings, so social sign-in turns off unless use_social_sign_in is passed again. Afterwards users connect from the dashboard or with `integrations_oauth_connect`. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| client_id | string | – | OAuth client ID for this tenant. Prompted if omitted. |
| client_secret | string | – | OAuth client secret. Prompted (hidden) if omitted. |
| disable | boolean | – | Save the credentials but mark the provider disabled |
| provider | string | yes | Provider key (e.g. slack, google, github) |
| use_social_sign_in | boolean | – | Also expose this provider as a social sign-in option for end users |
No output schema declared.
No examples provided.
integrations_oauth_connect Integrations: oauth connect ~219
Connect via the browser OAuth flow (starts a local listener). Opens the provider's sign-in page in a browser on this machine and waits up to five minutes for the callback on localhost (port 8745 by default), then creates the connection. A person must complete the sign-in, and the provider must first be set up with `integrations_oauth_configure`; for API-key providers use `integrations_connect`.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | – | Friendly name for this connection (default: "<provider> connection") |
| no_open | boolean | – | Don't try to open the browser automatically — just print the URL |
| port | integer | – | Local port for the OAuth callback (default: 8745) |
| provider | string | yes | Provider key (e.g. slack, google, github) |
| timeout | integer | – | Seconds to wait for the OAuth callback before giving up (default: 300) |
| user_connection | boolean | – | Make this a user-scoped connection (only the current user sees it). Default: tenant-wide. |
No output schema declared.
No examples provided.
integrations_oauth_status Integrations: oauth status ~92
Show OAuth client setup status for a provider. Shows whether a client ID is saved for the provider, whether it is enabled and also used for end-user social sign-in, and the redirect URL its OAuth app must allow. Check it before `integrations_oauth_configure`, or after to confirm the credentials were saved.
| Name | Type | Req | Description |
|---|---|---|---|
| provider | string | yes | Provider key (e.g. slack, google, github) |
No output schema declared.
No examples provided.
integrations_test Integrations: test ~72
Test a connection. Use after connecting, with an id from `integrations_connections_list`. The API currently only confirms the connection exists in this project and does not call the provider, so a pass does not prove the stored credentials work.
| Name | Type | Req | Description |
|---|---|---|---|
| connection_id | string | yes | Connection ID. Find it with integrations_connections_list. |
No output schema declared.
No examples provided.
login Sign in ~60
Log in to the Anythink platform with email and password. Returns a session token used for account and project management. For Google sign-in, use the 'login_google' tool.
| Name | Type | Req | Description |
|---|---|---|---|
| string | yes | Email address | |
| password | string | yes | Password |
No output schema declared.
No examples provided.
login_direct Sign in to a project directly ~105
Store credentials directly for a project (bypasses billing login). Use this when you already have an org ID and API key or JWT token.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string|null | – | API key (ak_...) |
| baseUrl | string|null | – | Override API base URL |
| orgId | string | yes | Organization/tenant ID |
| profile | string|null | – | Profile name to save as (defaults to org ID) |
| token | string|null | – | JWT access token |
No output schema declared.
No examples provided.
login_google Sign in with Google ~110
Sign in to the Anythink platform with Google. Opens the user's browser to Google's consent screen and waits for them to approve, then stores the session token. The browser step must be completed by the user; everything before and after is tool-driven. This does NOT pick a billing account or project — after it returns, call 'accounts_list' then 'accounts_use', and 'projects_list' then 'projects_use'. Needs a local browser, so it only works over stdio (not the hosted HTTP server).
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
logout Sign out ~102
Remove the saved credentials for a project profile from local CLI config. Use this to disconnect from a project or clear a stale token; it deletes only the stored profile locally and does not revoke the token server-side or affect the project. Omit the profile to remove the currently active one. Run 'config_show' to see profile names.
| Name | Type | Req | Description |
|---|---|---|---|
| profile | string|null | – | Name of the profile to remove. Defaults to the active profile. See 'config_show' for names. |
No output schema declared.
No examples provided.
menus_add_item Menus: add item ~180
Add a menu item for an entity. The item links to the entity's data page in the dashboard, is named after the entity in title case unless name is given, uses a Lucide icon (Database by default) and goes last at the top level or under parent. The entity must exist; to link to another path, add the item and then set href with `menus_update_item`.
| Name | Type | Req | Description |
|---|---|---|---|
| entity | string | yes | Entity name (used for display name and href) |
| icon | string | – | Lucide icon name (e.g. MessageCircle, Target, FileText) |
| menu_id | integer | yes | Menu ID to add the item to. Find it with menus_list. |
| name | string | – | Display name (defaults to entity name, title-cased) |
| parent | integer | – | Parent menu item ID (for nested items) |
No output schema declared.
No examples provided.
menus_create Menus: create ~94
Create a menu for a role. The new menu is empty; add items with `menus_add_item`. A role is shown only its first menu, so a second menu for the same role may not appear; use `menus_reorder` to choose which comes first.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Menu name |
| role_id | integer | yes | ID of the role the menu is shown to. Find it with roles_list. |
No output schema declared.
No examples provided.
menus_delete Menus: delete ~102
Delete a menu and all of its items. Removes the menu and every item in it, including locked built-in items, and can't be undone. If it was the role's only menu, that role is left with no dashboard menu; to drop single items, use `menus_remove_item` instead. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| menu_id | integer | yes | Menu ID to delete. Find it with menus_list. |
No output schema declared.
No examples provided.
menus_get Menus: get ~96
Show one menu with its items and their child items. Gives the menu's role id and its full item tree, with each item's id, name, icon, href, parent and whether it is a locked built-in item. Use it to find item ids for `menus_update_item`, `menus_remove_item` and `menus_reorder_items`. Returns JSON.
| Name | Type | Req | Description |
|---|---|---|---|
| menu_id | integer | yes | Menu ID. Find it with menus_list. |
No output schema declared.
No examples provided.
menus_list Menus: list ~74
List all menus and their items. Shows every menu with its id, name and the role id it is shown to, plus its items' ids, names, icons and links. Only top-level items and their direct children are listed; use `menus_get` for one menu's full item tree, including which items are locked.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
menus_remove_item Menus: remove item ~111
Remove a menu item, along with its child items. Deletes the item and its direct child items from the menu. It refuses locked built-in items, and items whose children are locked or have children of their own; move those out first with `menus_update_item`. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| item_id | integer | yes | Menu item ID to remove |
| menu_id | integer | yes | Menu ID the item belongs to. Find it with menus_list. |
No output schema declared.
No examples provided.
menus_reorder Menus: reorder ~121
Set the order of menus. Menus you name come first in that order and the rest follow in their current order. Order matters when a role has more than one menu, because the role is shown only its first; to change a menu's role, use `menus_update`. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| menu_ids | string | yes | Comma-separated menu IDs in the order they should appear, e.g. 92,90,91. Menus you leave out follow in their current order |
No output schema declared.
No examples provided.
menus_reorder_items Menus: reorder items ~174
Set the order of menu items that share a parent. The items must share one parent: the ones you name take the first places in that group in the order given, other siblings follow in their current order, and locked items keep their place. To move an item under a different parent, use `menus_update_item`. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| item_ids | string | yes | Comma-separated item IDs in the order they should appear, e.g. 301,299,300. All must share one parent. The items you name take the first places within their group; siblings you leave out follow in th… |
| menu_id | integer | yes | Menu ID the items belong to. Find it with menus_list. |
No output schema declared.
No examples provided.
menus_update Menus: update ~139
Rename a menu or change the role it is shown to. Changes the menu's name, the role it is shown to, or both; its items stay as they are. A role is shown only its first menu, so moving a menu to a role that already has one may hide it; use `menus_reorder` to choose which comes first. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| menu_id | integer | yes | Menu ID to update. Find it with menus_list. |
| name | string | – | New menu name |
| role | integer | – | ID of the role the menu is shown to |
No output schema declared.
No examples provided.
menus_update_item Menus: update item ~231
Change a menu item's name, icon, link or parent. Changes only the fields you pass: name, Lucide icon, entity (links to that entity's page) or href (any path), and parent (0 for top level). A moved item goes last under its new parent, and locked built-in items can't be changed. To reorder items without moving them, use `menus_reorder_items`. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| entity | string | – | Point the item at an entity's page (use this or --href) |
| href | string | – | Point the item at any path (use this or --entity) |
| icon | string | – | New Lucide icon name (e.g. MessageCircle, Target, FileText) |
| item_id | integer | yes | Menu item ID to update |
| menu_id | integer | yes | Menu ID the item belongs to. Find it with menus_list. |
| name | string | – | New display name |
| parent | integer | – | Parent menu item ID to nest under (0 for top level) |
No output schema declared.
No examples provided.
oauth_google_configure Oauth: google configure ~93
Set Google OAuth client ID and secret. Saves the Google Cloud OAuth client ID and secret that let the project's end users sign in with Google, and switches that sign-in on or off. It only works interactively, prompting for each value (blank keeps the current one), then prints the callback URL to add to the Google OAuth client. It changes or deletes existing data, so check with the user before running it.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
oauth_google_status Oauth: google status ~71
Show Google OAuth configuration status. Reports whether Google sign-in for the project's end users is enabled and whether a client ID and secret are saved, without showing them. This covers user sign-in only; Google as an integration is handled by `integrations_oauth_status` and `integrations_oauth_configure`.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
pay_connect Pay: connect ~70
Set up a Stripe Connect account and start onboarding. Creates the project's Stripe Connect account and opens Stripe's hosted onboarding page in a browser, which must be finished before plans can take card payments. It prompts for business type, country and email, so it needs an interactive terminal. Check `pay_status` first.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
pay_entitlement Pay: entitlement ~76
Show the current user's access / trial entitlement. Reports whether the signed-in user (the one this tool runs as) has paid or trial access in the project's app: status, trial end and days left, subscription id, provider, product and expiry. Read-only. To look up another user, use `pay_subscriptions_by_user`.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
pay_methods Pay: methods ~65
List saved payment methods. Lists the cards and other payment methods saved by the signed-in user as a customer of this project: type, brand, last four digits and expiry. It does not list your end users' cards or the card on your Anythink billing account. Read-only.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
pay_offers_activate Pay: offers activate ~75
Activate a paused offer. Sets an offer's status to active so its codes can be redeemed again, still subject to its validity dates and caps. Use it to undo `pay_offers_pause` or to reopen an expired offer.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Offer id (guid). Find it with pay_offers_list. |
No output schema declared.
No examples provided.
pay_offers_add_code Pay: offers add code ~150
Add a promo/referral code to an offer. Creates a code users enter to redeem the offer: a shared promo code, or with an owner user id, a personal referral code tied to that user. Returns the new code. There is no tool to remove a single code; codes go only when the offer is deleted with `pay_offers_delete`.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Offer id (guid). Find it with pay_offers_list. |
| owner_user_id | integer | – | Attach the code to a user (personal/referral code). Omit for a shared promo code. |
| slug | string | – | Code slug (e.g. LAUNCH50); prompted for if omitted |
No output schema declared.
No examples provided.
pay_offers_codes Pay: offers codes ~91
List the promo/referral codes attached to an offer. Lists every code on one offer, both shared promo codes and per-user referral codes, with slug, owner (or shared), redemption count and created date. Read-only. To find a specific user's personal referral code, use `pay_offers_user_code`.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Offer id (guid). Find it with pay_offers_list. |
No output schema declared.
No examples provided.
pay_offers_create Pay: offers create ~402
Create an offer (rewards via convenience flags or raw JSON). Creates an offer of kind discount, trial_extension or referral. A redeemer reward is required, as raw JSON or a shortcut such as trial days or discount percent; referrer reward, eligibility, caps and dates are optional. Discount offers also create a Stripe coupon. Add a code users can enter with `pay_offers_add_code`.
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | – | Offer description |
| discount_duration | string | – | Discount duration for --discount-percent: once, forever, repeating (default once) |
| discount_percent | number | – | Shortcut: redeemer reward = N% discount (use --discount-duration for recurrence) |
| eligibility | string | – | Eligibility rules as JSON, e.g. {"match":"all","rules":[{"type":"subscribed_to_plan","plan_ids":[1]}]} |
| kind | string | – | Offer kind: discount, trial_extension, or referral |
| name | string | – | Offer display name |
| per_user_cap | integer | – | Per-user redemption cap (default 1) |
| redeemer_reward | string | – | Redeemer reward as JSON, e.g. {"type":"discount","percent_off":50,"duration":"once"} |
| redeemer_trial_days | integer | – | Shortcut: redeemer reward = trial extension of N days |
| referrer_reward | string | – | Referrer reward as JSON (referral offers only) |
| referrer_subscription_days | integer | – | Shortcut: referrer reward = subscription extension of N days |
| referrer_trial_days | integer | – | Shortcut: referrer reward = trial extension of N days |
| status | string | – | Initial status: active (default), paused, or expired |
| total_cap | integer | – | Total redemption cap (omit for unlimited) |
| valid_from | string | – | Offer valid-from (ISO date/time) |
| valid_until | string | – | Offer valid-until (ISO date/time) |
No output schema declared.
No examples provided.
pay_offers_delete Pay: offers delete ~116
Permanently delete an offer and all its codes + redemptions (history is lost; trial bonuses already granted are preserved). Returns how many codes and redemptions were deleted and how many trial bonuses were kept. The offer's Stripe coupon is not removed. To stop redemptions while keeping the history, use `pay_offers_pause` instead. It changes or deletes existing data, so check with the user before running it.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Offer id (guid). Find it with pay_offers_list. |
No output schema declared.
No examples provided.
pay_offers_get Pay: offers get ~102
Show one offer by id (guid). Shows one offer in full: kind, description, status, primary code, redeemer and referrer rewards, eligibility rules, per-user and total caps, validity dates and linked Stripe coupon id. Read-only; its codes and redemptions come from `pay_offers_codes` and `pay_offers_redemptions`.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Offer id (guid). Find it with pay_offers_list. |
No output schema declared.
No examples provided.
pay_offers_list Pay: offers list ~68
List offers. Lists the project's offers (discounts, trial extensions and referral schemes that users redeem with a code): id, name, kind, primary code, redeemer and referrer rewards, and status. Read-only. Offers are separate from subscription plans (`pay_plans_list`).
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
How do I install the Anythink all-in-one backend: data, auth, files, workflows… MCP server?
Anythink all-in-one backend: data, auth, files, workflows… runs locally as a NuGet package, launched with dnx anythink-mcp@0.2.37 --yes. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.
nuget · anythink-mcp
claude mcp add cloud-anythink-anythink -- dnx anythink-mcp@0.2.37 --yes
What is the Anythink all-in-one backend: data, auth, files, workflows… MCP server?
Anythink all-in-one backend: data, auth, files, workflows… is an MCP server listed in the public MCP registry as cloud.anythink/anythink. Sick of stitched-together services? Anythink is the all-in-one backend, configured with AI. This page covers its NuGet package (anythink-mcp).
Is the Anythink all-in-one backend: data, auth, files, workflows… MCP server safe to use?
Anythink all-in-one backend: data, auth, files, workflows… scores 81 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. It declares no install or post-install scripts. 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 Anythink all-in-one backend: data, auth, files, workflows… MCP server expose?
Anythink all-in-one backend: data, auth, files, workflows… exposes 175 tools: email_templates_update, pay_offers_create, pay_subscriptions_resync, integrations_test, workflows_file_handler_add, and 170 more. Their descriptions and schemas cost roughly 24,748 tokens of context every time the server is loaded.
Is the Anythink all-in-one backend: data, auth, files, workflows… MCP server still maintained?
Anythink all-in-one backend: data, auth, files, workflows… 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.
What licence is the Anythink all-in-one backend: data, auth, files, workflows… MCP server under?
Anythink all-in-one backend: data, auth, files, workflows… declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.