Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ANAM_API_KEYYesYour Anam API key
ANAM_API_URLNoAPI base URL (for staging)https://api.anam.ai
MEET_PAGE_URLNoAvatar meet page URLhttps://meet.anam.ai
RECALL_API_KEYNoRecall AI API key (for meeting avatars)
TEXT_TO_AVATAR_URLNoText-to-avatar service URL (early access)https://anam-org--text-to-avatar-api.modal.run

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_personasA

List all personas in your Anam account.

Returns a formatted summary of personas with their IDs, names, and avatars.

Args: page: Page number (default: 1) per_page: Items per page (default: 100)

get_personaA

Get details of a specific persona by ID.

Args: persona_id: The UUID of the persona to retrieve

create_personaA

Create a new Anam persona with specified avatar, voice, and personality.

Args: name: Display name for the persona (e.g., "Customer Support Agent") avatar_id: UUID of the avatar. Use list_avatars or search_avatars to find one. voice_id: UUID of the voice. Use list_voices or search_voices to find one. system_prompt: Instructions defining the persona's personality and behavior. llm_id: UUID of the LLM. Defaults to Anam's standard LLM.

update_personaA

Update an existing persona. Only provide the fields you want to change.

Args: persona_id: The UUID of the persona to update name: New display name avatar_id: New avatar UUID voice_id: New voice UUID system_prompt: New personality instructions llm_id: New LLM UUID

delete_personaA

Delete a persona by ID. This action cannot be undone.

Args: persona_id: The UUID of the persona to delete

list_avatarsA

List all available avatars.

Returns a formatted summary of avatars with IDs, names, variants, and type (stock/custom).

Args: page: Page number (default: 1) per_page: Items per page (default: 100)

search_avatarsA

Search avatars by name.

Fetches all avatars and filters by name match. Use this to find avatars like "Cara", "Mia", "Gabriel", etc.

Args: query: Name to search for (case-insensitive, partial match) stock_only: If True, only return stock avatars (not custom)

create_avatarA

Create a custom avatar from an image URL.

Note: This feature is only available for enterprise and pro plans.

Args: name: Display name for the avatar image_url: URL of the image to use

get_avatarB

Get details of a specific avatar by ID.

Args: avatar_id: The UUID of the avatar to retrieve

update_avatarA

Update a custom avatar. Only provide the fields you want to change.

Args: avatar_id: The UUID of the avatar to update name: New internal name display_name: New display name

delete_avatarA

Delete a custom avatar by ID. Cannot delete stock avatars.

Args: avatar_id: The UUID of the avatar to delete

list_voicesB

List all available voices.

Returns a formatted summary of voices with IDs, names, and languages. Over 400 voices available in 50+ languages.

Args: page: Page number (default: 1) per_page: Items per page (default: 100)

search_voicesA

Search voices by name, country, or gender.

Fetches all voices and filters by the specified criteria.

Args: query: Name to search for (case-insensitive, partial match) country: Country code to filter by (e.g., "US", "GB", "FR", "DE", "PT") gender: Gender to filter by ("MALE" or "FEMALE")

get_voiceA

Get details of a specific voice by ID.

Args: voice_id: The UUID of the voice to retrieve

create_voiceB

Create a custom voice configuration.

Args: display_name: Display name for the voice provider: Voice provider (e.g., "cartesia", "elevenlabs") provider_voice_id: The voice ID from the provider gender: Gender of the voice ("MALE" or "FEMALE") country: Country code (e.g., "US", "GB") description: Optional description

update_voiceA

Update a voice configuration. Only provide the fields you want to change.

Args: voice_id: The UUID of the voice to update display_name: New display name description: New description

delete_voiceB

Delete a voice by ID.

Args: voice_id: The UUID of the voice to delete

list_toolsA

List all tools in your organization.

Returns webhook tools, knowledge tools, and client tools that can be attached to personas.

Args: page: Page number (default: 1) per_page: Items per page (default: 100)

create_webhook_toolA

Create a webhook tool for personas to call external APIs.

Args: name: Tool name in snake_case (e.g., "check_order_status") description: When the LLM should call this tool. Be specific. url: The HTTP endpoint to call method: HTTP method (GET, POST, PUT, PATCH, DELETE) await_response: Wait for response (False for fire-and-forget)

create_knowledge_toolA

Create a knowledge tool for RAG (document search).

Args: name: Tool name in snake_case (e.g., "search_product_docs") description: When the LLM should use this tool folder_ids: List of knowledge folder UUIDs to search

get_toolA

Get details of a specific tool by ID.

Args: tool_id: The UUID of the tool to retrieve

update_toolA

Update a tool. Only provide the fields you want to change.

Args: tool_id: The UUID of the tool to update name: New tool name description: New description url: New webhook URL (for webhook tools) method: New HTTP method (for webhook tools) await_response: Whether to wait for response (for webhook tools)

delete_toolC

Delete a tool by ID.

Args: tool_id: The UUID of the tool to delete

create_session_tokenA

Create a session token for the Anam client SDK.

Use EITHER persona_id (for saved personas) OR individual config fields (ephemeral).

Args: persona_id: UUID of a saved persona (recommended for production) name: Persona name (ephemeral mode) avatar_id: Avatar UUID (ephemeral). Use search_avatars to find one. voice_id: Voice UUID (ephemeral). Use search_voices to find one. system_prompt: Personality instructions (ephemeral) llm_id: LLM UUID (ephemeral, defaults to GPT-4o-mini) avatar_model: Avatar model ("cara-2" or "cara-3", default: cara-3) max_session_length_seconds: Session timeout skip_greeting: Skip the initial greeting (default: False)

list_sessionsA

List all sessions in your account.

Args: page: Page number (default: 1) per_page: Items per page (default: 100)

get_sessionA

Get details of a specific session by ID.

Args: session_id: The UUID of the session to retrieve

get_session_recordingB

Get recording information for a session.

Args: session_id: The UUID of the session

list_knowledge_foldersA

List all knowledge folders in your organization.

Knowledge folders contain documents for RAG capabilities.

create_knowledge_folderB

Create a new knowledge folder for documents.

After creating, upload documents via Anam Lab UI or API.

Args: name: Folder name (e.g., "Product Documentation") description: Optional description

get_knowledge_groupA

Get details of a specific knowledge group by ID.

Args: group_id: The UUID of the knowledge group to retrieve

update_knowledge_groupB

Update a knowledge group. Only provide the fields you want to change.

Args: group_id: The UUID of the knowledge group to update name: New name description: New description

delete_knowledge_groupA

Delete a knowledge group by ID. This will also delete all documents in the group.

Args: group_id: The UUID of the knowledge group to delete

search_knowledge_groupC

Search within a knowledge group for relevant documents.

Args: group_id: The UUID of the knowledge group to search query: Search query limit: Maximum number of results

list_knowledge_documentsA

List all documents in a knowledge group.

Args: group_id: The UUID of the knowledge group page: Page number (default: 1) per_page: Items per page (default: 100)

get_knowledge_documentA

Get details of a specific knowledge document by ID.

Args: document_id: The UUID of the document to retrieve

get_knowledge_document_downloadC

Get download URL for a knowledge document.

Args: document_id: The UUID of the document

upload_knowledge_documentB

Upload a document to a knowledge group.

Args: group_id: The UUID of the knowledge group name: Document name content: Document content (text) content_type: MIME type (default: text/plain)

update_knowledge_documentB

Update a knowledge document.

Args: document_id: The UUID of the document to update name: New document name

delete_knowledge_documentB

Delete a knowledge document by ID.

Args: document_id: The UUID of the document to delete

list_llmsB

List all available LLMs.

Args: page: Page number (default: 1) per_page: Items per page (default: 100)

get_llmB

Get details of a specific LLM by ID.

Args: llm_id: The UUID of the LLM to retrieve

create_llmB

Create a custom LLM configuration.

Args: name: Display name for the LLM provider: LLM provider (e.g., "openai", "anthropic") model: Model name (e.g., "gpt-4", "claude-3") api_key: API key for the provider base_url: Custom base URL (for self-hosted models) temperature: Sampling temperature max_tokens: Maximum output tokens

update_llmA

Update an LLM configuration. Only provide the fields you want to change.

Args: llm_id: The UUID of the LLM to update name: New display name temperature: New sampling temperature max_tokens: New maximum output tokens

delete_llmB

Delete an LLM by ID.

Args: llm_id: The UUID of the LLM to delete

list_share_linksB

List all share links in your organization.

Args: page: Page number (default: 1) per_page: Items per page (default: 100)

get_share_linkA

Get details of a specific share link by ID.

Args: link_id: The UUID of the share link to retrieve

create_share_linkB

Create a new share link for a persona.

Args: persona_id: The UUID of the persona to share name: Optional name for the link expires_at: Expiration timestamp (ISO 8601) max_uses: Maximum number of uses

update_share_linkA

Update a share link. Only provide the fields you want to change.

Args: link_id: The UUID of the share link to update name: New name expires_at: New expiration timestamp (ISO 8601) max_uses: New maximum number of uses is_active: Whether the link is active

delete_share_linkB

Delete a share link by ID.

Args: link_id: The UUID of the share link to delete

generate_avatar_videoA

Generate an avatar video from a text script.

INTERNAL TESTING ONLY - This feature is in early access. Contact support@anam.ai for access.

Creates an MP4 video of an avatar speaking the provided script. The video generation runs asynchronously and may take 30-120 seconds depending on script length.

Args: script: The text for the avatar to speak persona_id: Use a saved persona (provide this OR avatar_id + voice_id) avatar_id: Avatar ID for ephemeral session (requires voice_id) voice_id: Voice ID for ephemeral session (requires avatar_id) avatar_model: Avatar model to use (default: cara-3) poll_interval: Seconds between status checks (default: 3.0) max_wait: Maximum seconds to wait for completion (default: 600.0)

Stock Avatars (use with voice_id): Female: - Liv: 071b0286-4cce-4808-bee2-e642f1062de3 - Mia: edf6fdcb-acab-44b8-b974-ded72665ee26 - Sophie: 6dbc1e47-7768-403e-878a-94d7fcc3677b - Bella: dc9aa3e1-32f2-499e-9921-ecabac1076fc - Julia: edcb8f1a-334f-4cdb-871c-5c513db806a7 - Anne: 27e12daa-50fc-4384-93c2-ebca73f1f78d - Layla: ae2ea8c1-db28-47e3-b6ea-493e4ed3c554 Male: - Gabriel: 6cc28442-cccd-42a8-b6e4-24b7210a09c5 - Finn: 8a339c9f-0666-46bd-ab27-e90acd0409dc - Hunter: ecfb2ddb-80ec-4526-88a7-299a4738957c - Kevin: ccf00c0e-7302-455b-ace2-057e0cf58127 - Richard: 19d18eb0-5346-4d50-a77f-26b3723ed79d - William: 81b70170-2e80-4e4b-a6fb-e04ac110dc4b

Recommended Voices: Female: Jessica - b138c2a2-ba66-4887-95d5-1a57093fc92d Male: Adam - e54745c7-9439-44c3-b61a-193b42cce5bd

Returns: Download URL for the generated video, or error message

add_avatar_to_meetingA

Add an Anam avatar to a video meeting (Zoom, Google Meet, Teams).

Creates an ephemeral session and deploys a Recall bot that shows the avatar as its camera feed. The avatar can hear and respond to meeting participants.

Args: meeting_url: Video conference URL (e.g., https://meet.google.com/abc-defg-hij) avatar_id: Anam avatar ID. Use search_avatars to find one. voice_id: Anam voice ID. Use search_voices to find one. system_prompt: Instructions for the avatar's personality and behavior. bot_name: Name shown in the meeting participant list (default: "Anam Avatar") llm_id: Optional LLM ID. Defaults to GPT-4o-mini. avatar_model: Avatar model ("cara-2" or "cara-3", default: cara-3)

Returns: Bot ID and status information

get_meeting_bot_statusA

Check the status of a Recall meeting bot.

Args: bot_id: The Recall bot ID returned by add_avatar_to_meeting

Returns: Bot status including meeting URL, join status, etc.

remove_avatar_from_meetingA

Remove an avatar from a video meeting.

Makes the Recall bot leave the meeting gracefully.

Args: bot_id: The Recall bot ID returned by add_avatar_to_meeting

list_meeting_botsB

List all Recall meeting bots.

Shows recent bots including their status and meeting URLs.

Args: limit: Maximum number of bots to return (default: 20)

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/anam-org/anam-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server