# Anthropic MCP connector

The Anthropic connector brings your organization's Anthropic Console into Claude, ChatGPT, Cursor, and other MCP clients, so you can review users, workspaces, API keys, usage, and spend by asking in plain language.

Source: https://elaichi.ai/connectors/anthropic/

## Facts

| | |
| --- | --- |
| Application | Anthropic |
| Category | Conversational Intelligence |
| AI tools | 43 |
| Authentication | Connects with an API key |
| Needs your own OAuth app | No |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. 43 tools is past the 30-tool threshold, so clients use `search_tools` and `execute_tool` |

## What you can ask once Anthropic is connected

- Which Anthropic workspaces have no members right now?
- List Anthropic users added to the billing workspace.
- Show workspace members archived in the last 30 days.

## Connect Anthropic in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick Anthropic.
2. Optionally set Share with, then press Connect.
3. Paste an Anthropic API key. One person generates a token in Anthropic and pastes it once. Everyone else works through Share with, and never sees it.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which Anthropic tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect Anthropic to Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Connect Anthropic to ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Connect Anthropic to Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect Anthropic to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a Anthropic tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with Anthropic through Elaichi

### Pull this month's Anthropic spend by workspace

Finance. Ask for the Anthropic cost report broken down by workspace before the invoice lands. Compare it with last month and flag the team whose spend jumped.

### Invite a new hire and place them

IT. Send the Anthropic organization invite, then add the person to the right workspace with the right role once they accept. No console clicking, no waiting on an admin.

### Offboard someone from Anthropic in one ask

IT. Remove a departing colleague from every Anthropic workspace they belong to and delete their user record. Confirm afterward that nothing is still assigned to them.

### Find API keys nobody has touched

Security. List every Anthropic API key with who created it, which workspace it lives in, and when it was last used. Rename or disable the stale ones on the spot.

### Stand up a workspace for a new project

Engineering. Create an Anthropic workspace, add the engineers who need it, and check the message usage report as the project ramps up. Archive it when the work is done.

### Answer who has access to what

Operations. Ask for every Anthropic user, their organization role, and the workspaces they belong to. Hand the list to an auditor or a manager without exporting anything by hand.

## Frequently asked questions

### How do I connect Anthropic to Claude?

Connecting Anthropic takes two steps. In Elaichi, choose the Anthropic connector and paste an admin API key from your Anthropic Console, which is the only sign-in step, with no OAuth application to register and no client ID or secret to generate. Then in Claude, open Customize, then Connectors, then Add, and paste https://api.elaichi.ai/mcp as the endpoint. Sign in to Elaichi when Claude asks and Anthropic is ready.

### Does Anthropic work with ChatGPT and Cursor as well as Claude?

Yes. Once Anthropic is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client, and the Elaichi Agent. You connect Anthropic once and every client you use picks it up.

### What can an AI agent actually do with my Anthropic data?

With Anthropic connected, an agent can list your organization's users and their roles, create and archive workspaces, add or remove workspace members, send and cancel organization invites, and review API keys and their status. It can also pull message usage reports and cost reports so you can see what each workspace consumed and what it cost. Because Anthropic exposes many actions, short concrete asks such as "show cost by workspace for March" work better than long paragraphs.

### Does connecting Anthropic give the AI everything in my organization?

No. Every call to Anthropic runs with the admin API key the person connected, so the agent can only reach what that key is allowed to reach in the Anthropic Console. Elaichi can narrow that further, for example to reports only, but it can never grant more than the key itself has.

### Can my team share one Anthropic connection?

Yes. One person connects Anthropic in Elaichi and shares the connection with a team, and nobody else ever sees or handles the API key. Each teammate still signs in to Elaichi as themselves, so the audit log names the actual person behind every user change, invite, or report pulled from Anthropic.

### Can I stop an agent from deleting or changing things in Anthropic?

Yes. Restrictions in Elaichi apply per action, so you can allow reading Anthropic users, workspaces, and cost reports while blocking anything that deletes a user, removes a workspace member, or changes an API key. A blocked action is never advertised to Claude, ChatGPT, or Cursor at all, so no prompt, however worded, can reach it.

### What happens to an Anthropic connection when someone leaves?

When you offboard a person in Elaichi, their access to the Anthropic connection ends at once, in every client they had set up. If the connection was shared, it keeps working for everyone else on the team. If you ever want Anthropic gone entirely, disconnecting it once in Elaichi removes it from Claude, ChatGPT, Cursor, and every other client together.

## All 43 Anthropic tools

Every tool below is callable through https://api.elaichi.ai/mcp once Anthropic is connected, subject to the toolbox it is in and the restrictions on the caller.

- **List all Anthropic users** (List). List users in Anthropic. Returns id, name, email, role, type, and added_at for each user. Also includes first_id, last_id, and has_more for pagination.
- **Get single Anthropic user by ID** (Get). Get details of a specific user in Anthropic. Requires id. Returns added_at (when user joined), email, id, name, role, and type (always 'user').
- **Update a Anthropic user by ID** (Update). Update user role in Anthropic. Requires id. Returns added_at (when user joined), email (user email), id (user identifier), name (user name), role (organization role), and type (always 'user').
- **Delete a Anthropic user by ID** (Delete). Delete a user in Anthropic. Requires id. Returns id of the deleted user and type confirming deletion as user_deleted.
- **List all Anthropic workspaces** (List). List workspaces in Anthropic. Returns id, name, display_color, created_at, archived_at, and type for each workspace, along with pagination fields first_id, last_id, and has_more.
- **Get single Anthropic workspace by ID** (Get). Get a workspace in Anthropic using id. Returns id, name, display_color, created_at, archived_at, and type fields in the response.
- **Create a Anthropic workspace** (Create). Create a workspace in Anthropic. Requires name. Returns id, name, created_at, archived_at, display_color, and type fields in the response.
- **Update a Anthropic workspace by ID** (Update). Update a workspace in Anthropic using id. Returns archived_at (when workspace was archived), created_at (when workspace was created), display_color (workspace color in console), id (workspace identifier), name (workspace name), and type (always workspace).
- **Anthropic workspaces archive** (Archive). Archive a workspace in Anthropic. Requires id. Returns archived_at (when the workspace was archived), created_at, display_color, id, name, and type.
- **List all Anthropic workspace members** (List). List workspace_members in Anthropic. Requires workspace_id. Returns type, user_id, workspace_id, and workspace_role for each member along with pagination fields first_id, last_id, and has_more.
- **Get single Anthropic workspace member by ID** (Get). Get a workspace member in Anthropic. Requires workspace_id and id. Returns type (always workspace_member), user_id (the user identifier), workspace_id (the workspace identifier), and workspace_role (member role).
- **Create a Anthropic workspace member** (Create). Create a workspace member in Anthropic. Requires workspace_id, user_id, and workspace_role. Returns type (always workspace_member), user_id, workspace_id, and workspace_role of the created member.
- **Update a Anthropic workspace member by ID** (Update). Update a workspace member in Anthropic. Requires workspace_id and id. Returns type (always workspace_member), user_id, workspace_id, and workspace_role indicating the updated role.
- **Delete a Anthropic workspace member by ID** (Delete). Delete a specific workspace member in Anthropic. Requires workspace_id and id. Returns type confirming deletion as workspace_member_deleted, user_id of the member removed, and workspace_id where the deletion occurred.
- **List all Anthropic organization** (List). Get details about the authenticated organization in Anthropic. Returns id (organization identifier), name (organization name), and type (always 'organization').
- **List all Anthropic organizations invites** (List). List invites in Anthropic. Returns id, email, invited_at, expires_at, role, status, and type for each invite. Also returns pagination fields first_id, last_id, and has_more.
- **Get single Anthropic organizations invite by ID** (Get). Get a specific invite in Anthropic. Requires id. Returns email of invited user, role assigned, status of the invite, when it was created (invited_at), when it expires (expires_at), and type (always 'invite').
- **Create a Anthropic organizations invite** (Create). Create an invite in Anthropic. Requires email and role. Returns id, email, role, status, invited_at, expires_at, and type fields in the response.
- **Delete a Anthropic organizations invite by ID** (Delete). Delete an invite in Anthropic. Requires id. Returns id of the deleted invite and type confirming invite_deleted.
- **List all Anthropic API keys** (List). List API keys in Anthropic. Returns id, name, created_at, created_by, status, partial_key_hint, workspace_id, and type for each API key.
- **Get single Anthropic API key by ID** (Get). Get details of a specific API key in Anthropic using id. Returns id, name, status, created_at, created_by, partial_key_hint, type, and workspace_id.
- **Update a Anthropic API key by ID** (Update). Update an API key in Anthropic. Requires id. Returns created_at (creation time), created_by (actor details), id (API key identifier), name (API key name), partial_key_hint (redacted hint), status (active/inactive/archived), type (always api_key), and workspace_id (associated workspace).
- **List all Anthropic message usage report** (List). Get message usage report in Anthropic. Requires starting_at. Returns time bucketed data with fields: starting_at, ending_at, uncached_input_tokens, cache_creation, cache_read_input_tokens, output_tokens, server_tool_use, api_key_id, workspace_id, model, service_tier, and context_window.
- **List all Anthropic cost report** (List). Get cost report in Anthropic. Requires starting_at. Returns time buckets with starting_at, ending_at, and results containing currency, amount, workspace_id, description, cost_type, context_window, model, service_tier, and token_type. Also returns has_more and next_page for pagination.
- **List all Anthropic claude code usage report** (List). Get the Claude Code usage report in Anthropic for a specific date using starting_at. Returns usage metrics including actor, core_metrics (commits, lines_of_code, sessions, pull_requests), model_breakdown with tokens and estimated_cost, organization_id, subscription_type, terminal_type, and tool_actions.
- **Create a Anthropic generate prompt** (Create). Generate a prompt in Anthropic by providing task. Returns messages containing generated prompt text for use with the Messages API, system placeholder, and usage details including input_tokens and output_tokens.
- **Create a Anthropic improve prompt** (Create). Create an improved prompt in Anthropic using messages as input. Returns messages containing the improved prompt text and optionally an assistant prefill, system as an empty string, and usage with input_tokens and output_tokens.
- **Create a Anthropic templatize prompt** (Create). Templatize a prompt in Anthropic by extracting variables from messages and system input. Returns messages with variables replaced, system prompt with placeholders, variable_values mapping original inputs, and usage with token counts.
- **Create a Anthropic message** (Create). Create a new message in Anthropic. Requires model, messages, and max_tokens. Returns id (unique identifier), role (assistant), content (generated text or tool use), model, stop_reason, stop_sequence, usage (token counts), and container details.
- **Anthropic messages count tokens** (Action). Count tokens in messages in Anthropic. Requires messages and model. Returns input_tokens representing the total number of tokens across messages, system prompt, and tools.
- **List all Anthropic models** (List). List available models in Anthropic. Returns id (unique model identifier), display_name (human-readable name), created_at (release time), and type (always 'model').
- **Get single Anthropic model by ID** (Get). Get a specific model in Anthropic using id. Returns created_at (release date), display_name (human-readable name), id (model identifier), and type (always 'model').
- **List all Anthropic message batches** (List). List all message batches in Anthropic. Returns id, created_at, processing_status, request_counts, results_url, and timing fields for each batch. Batches are returned with the most recently created first.
- **Get single Anthropic message batch by ID** (Get). Get details of a specific message-batch in Anthropic using id. Returns timestamps (created_at, ended_at, expires_at, archived_at, cancel_initiated_at), processing_status, request_counts for requests, results_url to fetch processed results, and type.
- **Create a Anthropic message batch** (Create). Create a Message Batch in Anthropic. Requires requests array with individual message request parameters. Returns id, created_at, processing_status, request_counts, results_url, and other timestamps for tracking batch processing.
- **Delete a Anthropic message batch by ID** (Delete). Delete a specific message-batch in Anthropic. Requires id. Only finished batches can be deleted; in-progress batches must be canceled first. Returns id of the deleted batch and type confirming deletion.
- **Anthropic message batches cancel** (Cancel). Cancel a message batch in Anthropic. Requires id. Returns id, processing_status, request_counts with tallies of canceled, succeeded, errored, expired, and processing requests, along with created_at, cancel_initiated_at, ended_at, expires_at, archived_at, results_url, and type. Cancellation is only effective before processing ends, and non-interruptible requests may still complete.
- **Anthropic message batches results** (Action). Get results of a specific message-batch in Anthropic. Requires id. Response returns each request's custom_id and result, where result can include a succeeded message with fields such as content, model, usage, and stop_reason, or error/cancellation details.
- **List all Anthropic files** (List). List files in Anthropic. Returns created_at (creation time), id (file identifier), filename, mime_type, size_bytes, type (always 'file'), and downloadable status for each file.
- **Get single Anthropic file by ID** (Get). Get metadata for a specific file in Anthropic using id. Returns created_at (file creation time), filename (original uploaded name), id (unique identifier), mime_type (file type), size_bytes (file size), downloadable (if file can be retrieved), and type (always 'file').
- **Create a Anthropic file** (Create). Create a file in Anthropic by uploading a binary file. Requires a multipart form-data request with file. Returns id, filename, mime_type, size_bytes, created_at, type, and whether the file is downloadable.
- **Delete a Anthropic file by ID** (Delete). Delete a file in Anthropic by id. Returns id of the deleted file and type confirming deletion (file_deleted).
- **Anthropic files download** (Download). Download the contents of a specific file in Anthropic. Requires id. Returns the raw file content as binary data.
