In-depth architectural comparison of the Anythink Cli and Portkey Admin MCP MCP servers. Compare execution transports, security boundaries, tool capabilities, quality scores, and ready-to-paste client installation snippets for Claude, Cursor, Windsurf, and VS Code.
At a Glance & Executive Verdict
Anythink Cli
Cloud Platforms · Local stdio
Quality: 65/100 (Great) | Auth: other
Portkey Admin MCP
Cloud Platforms · Local stdio
Quality: 65/100 (Great) | Auth: API Key required
Verdict Summary: Choose Anythink Cli if you need specialized Cloud Platforms tools running via a local process. Choose Portkey Admin MCP if your workspace requires Cloud Platforms integration with local subprocess execution. Both servers can be configured concurrently in your client's mcpServers manifest.
Which MCP Server Should You Choose?
Choose Anythink Cli when:
You need dedicated capabilities in the Cloud Platforms domain.
You prefer local stdio subprocess transport architecture.
Build and run a complete backend from your agent on the Anythink platform: relational data with row-/field-level security, full-text + semantic + geo search, RBAC + BYOK, a workflow/automation engine, a growth & retention engine (email, actionable push, promotions, per-user referral codes + rewards, points/credits), payments + marketplace billing, and a growing catalog of integrations (Claude, OpenAI, Slack, Google, GitHub…) — driven through one CLI-backed MCP tool. Install with npx -y @anythink-cloud/mcp.
MCP server for the Portkey AI Gateway Admin API — 150 tools for prompts, configs, analytics, keys, guardrails, integrations, and more.
Tools & Capabilities Breakdown
Anythink Cli Tools (16)
config_use
Switch the active project profile that the 'cli' tool's commands operate against. Use this to move between already-connected projects without re-authenticating. The profile must already exist (created by 'projects_use' or 'login_direct'); run 'config_show' to see available profile names. Returns confirmation, or an error if the profile does not exist.
projects_delete
Permanently delete a project and tear down its backend instance, including its database and stored data. This is destructive and irreversible — always confirm with the user first, and prefer matching by a specific id over a short prefix to avoid removing the wrong project. Requires an active billing account (set one with 'accounts_use'). Returns the deleted project's name and id on success.
login_direct
Store credentials directly for a project (bypasses billing login). Use this when you already have an org ID and API key or JWT token.
projects_use
Connect to a project and save it as the active profile so the 'cli' tool's data, entities, users, and other commands target it. Resolves the project, then either stores the API key you pass or exchanges a transfer token for project-scoped credentials automatically. Requires an active billing account (set one with 'accounts_use'); the project must be Active (see 'projects_list'). Returns the saved profile name, org id, API URL, and auth method.
Ready-to-Paste Client Configurations
Paste either (or both) of these JSON server blocks into your client config file (e.g. claude_desktop_config.json or ~/.cursor/mcp.json).
Anythink Cli is categorized under Cloud Platforms and uses a local stdio subprocess. In contrast, Portkey Admin MCP belongs to Cloud Platforms using local stdio subprocess. Select Anythink Cli when you need capabilities focused on cloud platforms and Portkey Admin MCP when you require tools for cloud platforms.
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.
signup
Register a brand-new Anythink platform account with email and password. Use this only when the user has no account yet; if they already have one, use 'login' instead. This creates the top-level user identity — it does not create a billing account or project (do that with 'accounts_create' and 'projects_create' after logging in). On success the user may need to click an email confirmation link before 'login' works; tell them to confirm, then call 'login'.
accounts_create
Create a new billing account (organization) to hold projects and payment details. Requires a prior platform login (use the 'login' tool first). The new account is automatically set as the active account, so subsequent 'projects_create' / 'projects_list' calls target it without further setup. Returns the new account's id and name. Most users need only one account — call 'accounts_list' first to check whether a suitable one already exists.
config_remove
Delete a saved project profile from the local CLI configuration. Removes only the locally stored credentials and settings — it does not delete the project or revoke tokens server-side (to remove the project itself, use 'projects_delete'). Run 'config_show' to see profile names. Returns confirmation, or a not-found message.
projects_list
List the projects (provisioned backend instances) in a billing account. Requires platform login and an active billing account (set one with 'accounts_use'). Returns each project's id, name, description, region, org id, status (Initializing/Provisioning/Active/Suspended/Terminated/Error), API URL, and creation date. Use this to find a project's id before connecting with 'projects_use' or removing it with 'projects_delete'.
login
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.
accounts_use
Set the active billing account that project commands operate on. Call this after 'login' when you belong to more than one account, before using 'projects_list', 'projects_create', or 'projects_use'. Accepts a full account UUID or a unique prefix; run 'accounts_list' to see valid ids. Returns the resolved account name and id, or an error if no account matches.
login_google
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).
+4 more tools listed on main page
Portkey Admin MCP Tools (181)
list_all_users
List accepted org users with id, name, email, role, and timestamps. Use this to find a user_id before get_user, update_user, delete_user, or add_workspace_member; use list_user_invites for pending invitations. Enterprise-gated. Returns 403 on non-Enterprise Portkey plans.
invite_user
Invite a new org user and optionally provision workspace access and an API key in one call. Workspace assignments apply only after acceptance; use add_workspace_member or update_workspace_member later for follow-up changes.
get_user_stats
Return per-user request and cost analytics for a required time range. This is usage-by-user, not population metrics; use get_users_analytics for active-user or cohort trends. Enterprise-gated. Returns 403 on non-Enterprise Portkey plans.
get_user
Get one accepted user by id and return their profile, role, and timestamps. Use list_all_users to find the id if you only have a name or email, and get_user_invite for pending invitations. Enterprise-gated. Returns 403 on non-Enterprise Portkey plans.
update_user
Update a user's first name, last name, or organization role by id. Email and workspace roles are not editable here; use update_workspace_member for workspace membership changes.
delete_user
Delete a user from the org by id. This is permanent, removes org and workspace memberships, revokes API keys, and ends active sessions; use delete_user_invite for pending invites instead.
list_user_invites
List pending and sent invitations with id, email, role, status, and expiry. Use this to check invite state; use list_all_users for users who already accepted. Enterprise-gated. Returns 403 on non-Enterprise Portkey plans.
get_user_invite
Get one invitation by invite id and return its email, role, status, and expiry. Use this for pending invites only; use get_user for accepted users.
delete_user_invite
Delete a pending invite and revoke its invite link. This does not affect existing users; use delete_user for full user removal.
resend_user_invite
Resend the email for a pending invite that has not been accepted, unlike invite_user which creates a new invite. This sends a fresh email without modifying the invite record, expiry, or role; use get_user_invite first if you are unsure whether the invite still exists and list_user_invites to discover invite_ids.
list_scim_workspace_mappings
List identity-provider SCIM group mappings that automatically grant Portkey workspace roles. Use it to audit provisioned access or obtain mapping_id before delete_scim_workspace_mapping; filter by workspace, group, or role and page through large directories. This reads mappings only and does not query individual workspace members. Enterprise-gated. Returns 403 on non-Enterprise Portkey plans.
create_scim_workspace_mapping
Map one identity-provider SCIM group to a Portkey workspace role so current and future group members receive access automatically. Provide exactly one of scim_group_id or scim_group_name; a name can pre-create the Portkey SCIM group before the IdP provisions it. Use list_scim_groups to discover existing groups and list_workspaces for the workspace ID. This changes access provisioning and is distinct from add_workspace_member, which grants one user directly. Enterprise-gated. Returns 403 on non-Enterprise Portkey plans.