Mcp Servers
Create Mcp Server
Get Mcp Server
Update Mcp Server
Connect Mcp Server
Refresh Mcp Server Tools
ModelsExpand Collapse
class CreateSseMcpServer: …
Create a new SSE MCP server
server_name: str
The name of the server
server_url: str
The URL of the server
auth_header: Optional[str]
The name of the authentication header (e.g., 'Authorization')
auth_token: Optional[str]
The authentication token or API key value
custom_headers: Optional[Dict[str, str]]
Custom HTTP headers to include with requests
type: Optional[Literal["sse", "stdio", "streamable_http"]]
class CreateStdioMcpServer: …
Create a new Stdio MCP server
args: List[str]
The arguments to pass to the command
command: str
The command to run (MCP 'local' client will run this command)
server_name: str
The name of the server
env: Optional[Dict[str, str]]
Environment variables to set
type: Optional[Literal["sse", "stdio", "streamable_http"]]
class CreateStreamableHTTPMcpServer: …
Create a new Streamable HTTP MCP server
server_name: str
The name of the server
server_url: str
The URL of the server
auth_header: Optional[str]
The name of the authentication header (e.g., 'Authorization')
auth_token: Optional[str]
The authentication token or API key value
custom_headers: Optional[Dict[str, str]]
Custom HTTP headers to include with requests
type: Optional[Literal["sse", "stdio", "streamable_http"]]
class McpToolExecuteRequest: …
Request to execute an MCP tool by IDs.
args: Optional[Dict[str, object]]
Arguments to pass to the MCP tool
class SseMcpServer: …
An SSE MCP server
server_name: str
The name of the server
server_url: str
The URL of the server
id: Optional[str]
The human-friendly ID of the Mcp_server
auth_header: Optional[str]
The name of the authentication header (e.g., 'Authorization')
auth_token: Optional[str]
The authentication token or API key value
custom_headers: Optional[Dict[str, str]]
Custom HTTP headers to include with requests
type: Optional[Literal["sse", "stdio", "streamable_http"]]
class StdioMcpServer: …
A Stdio MCP server
args: List[str]
The arguments to pass to the command
command: str
The command to run (MCP 'local' client will run this command)
server_name: str
The name of the server
id: Optional[str]
The human-friendly ID of the Mcp_server
env: Optional[Dict[str, str]]
Environment variables to set
type: Optional[Literal["sse", "stdio", "streamable_http"]]
class StreamableHTTPMcpServer: …
A Streamable HTTP MCP server
server_name: str
The name of the server
server_url: str
The URL of the server
id: Optional[str]
The human-friendly ID of the Mcp_server
auth_header: Optional[str]
The name of the authentication header (e.g., 'Authorization')
auth_token: Optional[str]
The authentication token or API key value
custom_headers: Optional[Dict[str, str]]
Custom HTTP headers to include with requests
type: Optional[Literal["sse", "stdio", "streamable_http"]]
class ToolExecutionResult: …
status: Literal["success", "error"]
The status of the tool execution and return object
agent_state: Optional[AgentState]
Representation of an agent's state. This is the state of the agent at a given time, and is persisted in the DB backend. The state has all the information needed to recreate a persisted agent.
id: str
The id of the agent. Assigned by the database.
The type of agent.
The memory blocks used by the agent.
value: str
Value of the block.
id: Optional[str]
The human-friendly ID of the Block
base_template_id: Optional[str]
The base template id of the block.
created_by_id: Optional[str]
The id of the user that made this Block.
deployment_id: Optional[str]
The id of the deployment.
description: Optional[str]
Description of the block.
entity_id: Optional[str]
The id of the entity within the template.
hidden: Optional[bool]
If set to True, the block will be hidden.
is_template: Optional[bool]
Whether the block is a template (e.g. saved human/persona options).
label: Optional[str]
Label of the block (e.g. 'human', 'persona') in the context window.
last_updated_by_id: Optional[str]
The id of the user that last updated this Block.
limit: Optional[int]
Character limit of the block.
metadata: Optional[Dict[str, object]]
Metadata of the block.
preserve_on_migration: Optional[bool]
Preserve the block on template migration.
project_id: Optional[str]
The associated project id.
read_only: Optional[bool]
Whether the agent has read-only access to the block.
template_id: Optional[str]
The id of the template.
template_name: Optional[str]
Name of the block if it is a template.
Deprecated: Use embedding field instead. The embedding configuration used by the agent.
embedding_dim: int
The dimension of the embedding.
embedding_endpoint_type: Literal["openai", "anthropic", "bedrock", 16 more]
The endpoint type for the model.
embedding_model: str
The model for the embedding.
azure_deployment: Optional[str]
The Azure deployment for the model.
azure_endpoint: Optional[str]
The Azure endpoint for the model.
azure_version: Optional[str]
The Azure version for the model.
batch_size: Optional[int]
The maximum batch size for processing embeddings.
embedding_chunk_size: Optional[int]
The chunk size of the embedding.
embedding_endpoint: Optional[str]
The endpoint for the model (None if local).
handle: Optional[str]
The handle for this config, in the format provider/model-name.
Deprecated: Use model field instead. The LLM configuration used by the agent.
context_window: int
The context window size for the model.
model: str
LLM model name.
model_endpoint_type: Literal["openai", "anthropic", "google_ai", 18 more]
The endpoint type for the model.
compatibility_type: Optional[Literal["gguf", "mlx"]]
The framework compatibility type for the model.
display_name: Optional[str]
A human-friendly display name for the model.
enable_reasoner: Optional[bool]
Whether or not the model should use extended thinking if it is a 'reasoning' style model
frequency_penalty: Optional[float]
Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model's likelihood to repeat the same line verbatim. From OpenAI: Number between -2.0 and 2.0.
handle: Optional[str]
The handle for this config, in the format provider/model-name.
max_reasoning_tokens: Optional[int]
Configurable thinking budget for extended thinking. Used for enable_reasoner and also for Google Vertex models like Gemini 2.5 Flash. Minimum value is 1024 when used with enable_reasoner.
max_tokens: Optional[int]
The maximum number of tokens to generate. If not set, the model will use its default value.
model_endpoint: Optional[str]
The endpoint for the model.
model_wrapper: Optional[str]
The wrapper for the model.
parallel_tool_calls: Optional[bool]
If set to True, enables parallel tool calling. Defaults to False.
provider_category: Optional[ProviderCategory]
The provider category for the model.
provider_name: Optional[str]
The provider name for the model.
put_inner_thoughts_in_kwargs: Optional[bool]
Puts 'inner_thoughts' as a kwarg in the function call if this is set to True. This helps with function calling performance and also the generation of inner thoughts.
reasoning_effort: Optional[Literal["minimal", "low", "medium", "high"]]
The reasoning effort to use when generating text reasoning models
temperature: Optional[float]
The temperature to use when generating text with the model. A higher temperature will result in more random text.
tier: Optional[str]
The cost tier for the model (cloud only).
verbosity: Optional[Literal["low", "medium", "high"]]
Soft control for how verbose model output should be, used for GPT-5 models.
Deprecatedmemory: Memory
Deprecated: Use blocks field instead. The in-context memory of the agent.
Memory blocks contained in the agent's in-context memory
value: str
Value of the block.
id: Optional[str]
The human-friendly ID of the Block
base_template_id: Optional[str]
The base template id of the block.
created_by_id: Optional[str]
The id of the user that made this Block.
deployment_id: Optional[str]
The id of the deployment.
description: Optional[str]
Description of the block.
entity_id: Optional[str]
The id of the entity within the template.
hidden: Optional[bool]
If set to True, the block will be hidden.
is_template: Optional[bool]
Whether the block is a template (e.g. saved human/persona options).
label: Optional[str]
Label of the block (e.g. 'human', 'persona') in the context window.
last_updated_by_id: Optional[str]
The id of the user that last updated this Block.
limit: Optional[int]
Character limit of the block.
metadata: Optional[Dict[str, object]]
Metadata of the block.
preserve_on_migration: Optional[bool]
Preserve the block on template migration.
project_id: Optional[str]
The associated project id.
read_only: Optional[bool]
Whether the agent has read-only access to the block.
template_id: Optional[str]
The id of the template.
template_name: Optional[str]
Name of the block if it is a template.
Agent type controlling prompt rendering.
Literal["memgpt_agent", "memgpt_v2_agent", "letta_v1_agent", 6 more]
file_blocks: Optional[List[MemoryFileBlock]]
Special blocks representing the agent's in-context memory of an attached file
file_id: str
Unique identifier of the file.
is_open: bool
True if the agent currently has the file open.
source_id: str
Unique identifier of the source.
value: str
Value of the block.
id: Optional[str]
The human-friendly ID of the Block
base_template_id: Optional[str]
The base template id of the block.
created_by_id: Optional[str]
The id of the user that made this Block.
deployment_id: Optional[str]
The id of the deployment.
description: Optional[str]
Description of the block.
entity_id: Optional[str]
The id of the entity within the template.
hidden: Optional[bool]
If set to True, the block will be hidden.
is_template: Optional[bool]
Whether the block is a template (e.g. saved human/persona options).
label: Optional[str]
Label of the block (e.g. 'human', 'persona') in the context window.
last_accessed_at: Optional[datetime]
UTC timestamp of the agent’s most recent access to this file. Any operations from the open, close, or search tools will update this field.
last_updated_by_id: Optional[str]
The id of the user that last updated this Block.
limit: Optional[int]
Character limit of the block.
metadata: Optional[Dict[str, object]]
Metadata of the block.
preserve_on_migration: Optional[bool]
Preserve the block on template migration.
project_id: Optional[str]
The associated project id.
read_only: Optional[bool]
Whether the agent has read-only access to the block.
template_id: Optional[str]
The id of the template.
template_name: Optional[str]
Name of the block if it is a template.
prompt_template: Optional[str]
Deprecated. Ignored for performance.
name: str
The name of the agent.
sources: List[Source]
The sources used by the agent.
id: str
The human-friendly ID of the Source
The embedding configuration used by the source.
embedding_dim: int
The dimension of the embedding.
embedding_endpoint_type: Literal["openai", "anthropic", "bedrock", 16 more]
The endpoint type for the model.
embedding_model: str
The model for the embedding.
azure_deployment: Optional[str]
The Azure deployment for the model.
azure_endpoint: Optional[str]
The Azure endpoint for the model.
azure_version: Optional[str]
The Azure version for the model.
batch_size: Optional[int]
The maximum batch size for processing embeddings.
embedding_chunk_size: Optional[int]
The chunk size of the embedding.
embedding_endpoint: Optional[str]
The endpoint for the model (None if local).
handle: Optional[str]
The handle for this config, in the format provider/model-name.
name: str
The name of the source.
created_at: Optional[datetime]
The timestamp when the source was created.
created_by_id: Optional[str]
The id of the user that made this Tool.
description: Optional[str]
The description of the source.
instructions: Optional[str]
Instructions for how to use the source.
last_updated_by_id: Optional[str]
The id of the user that made this Tool.
metadata: Optional[Dict[str, object]]
Metadata associated with the source.
updated_at: Optional[datetime]
The timestamp when the source was last updated.
vector_db_provider: Optional[VectorDBProvider]
The vector database provider used for this source's passages
system: str
The system prompt used by the agent.
tags: List[str]
The tags associated with the agent.
The tools used by the agent.
id: str
The human-friendly ID of the Tool
args_json_schema: Optional[Dict[str, object]]
The args JSON schema of the function.
created_by_id: Optional[str]
The id of the user that made this Tool.
default_requires_approval: Optional[bool]
Default value for whether or not executing this tool requires approval.
description: Optional[str]
The description of the tool.
enable_parallel_execution: Optional[bool]
If set to True, then this tool will potentially be executed concurrently with other tools. Default False.
json_schema: Optional[Dict[str, object]]
The JSON schema of the function.
last_updated_by_id: Optional[str]
The id of the user that made this Tool.
metadata: Optional[Dict[str, object]]
A dictionary of additional metadata for the tool.
name: Optional[str]
The name of the function.
Optional list of npm packages required by this tool.
name: str
Name of the npm package.
version: Optional[str]
Optional version of the package, following semantic versioning.
Optional list of pip packages required by this tool.
name: str
Name of the pip package.
version: Optional[str]
Optional version of the package, following semantic versioning.
return_char_limit: Optional[int]
The maximum number of characters in the response.
source_code: Optional[str]
The source code of the function.
source_type: Optional[str]
The type of the source code.
tags: Optional[List[str]]
Metadata tags.
tool_type: Optional[ToolType]
The type of the tool.
base_template_id: Optional[str]
The base template id of the agent.
created_at: Optional[datetime]
The timestamp when the object was created.
created_by_id: Optional[str]
The id of the user that made this object.
deployment_id: Optional[str]
The id of the deployment.
description: Optional[str]
The description of the agent.
embedding: Optional[Embedding]
Schema for defining settings for an embedding model
model: str
The name of the model.
provider: Literal["openai", "ollama"]
The provider of the model.
enable_sleeptime: Optional[bool]
If set to True, memory management will move to a background agent thread.
entity_id: Optional[str]
The id of the entity within the template.
hidden: Optional[bool]
If set to True, the agent will be hidden.
The identities associated with this agent.
id: str
The human-friendly ID of the Identity
Deprecatedagent_ids: List[str]
The IDs of the agents associated with the identity.
Deprecatedblock_ids: List[str]
The IDs of the blocks associated with the identity.
identifier_key: str
External, user-generated identifier key of the identity.
The type of the identity.
name: str
The name of the identity.
project_id: Optional[str]
The project id of the identity, if applicable.
List of properties associated with the identity
key: str
The key of the property
type: Literal["string", "number", "boolean", "json"]
The type of the property
value: Union[str, float, bool, Dict[str, object]]
The value of the property
Deprecatedidentity_ids: Optional[List[str]]
Deprecated: Use identities field instead. The ids of the identities associated with this agent.
last_run_completion: Optional[datetime]
The timestamp when the agent last completed a run.
last_run_duration_ms: Optional[int]
The duration in milliseconds of the agent's last run.
last_stop_reason: Optional[StopReasonType]
The stop reason from the agent's last run.
last_updated_by_id: Optional[str]
The id of the user that made this object.
managed_group: Optional[Group]
The multi-agent group that this agent manages
id: str
The id of the group. Assigned by the database.
base_template_id: Optional[str]
The base template id.
deployment_id: Optional[str]
The id of the deployment.
hidden: Optional[bool]
If set to True, the group will be hidden.
max_message_buffer_length: Optional[int]
The desired maximum length of messages in the context window of the convo agent. This is a best effort, and may be off slightly due to user/assistant interleaving.
min_message_buffer_length: Optional[int]
The desired minimum length of messages in the context window of the convo agent. This is a best effort, and may be off-by-one due to user/assistant interleaving.
project_id: Optional[str]
The associated project id.
template_id: Optional[str]
The id of the template.
max_files_open: Optional[int]
Maximum number of files that can be open at once for this agent. Setting this too high may exceed the context window, which will break the agent.
message_buffer_autoclear: Optional[bool]
If set to True, the agent will not remember previous messages (though the agent will still retain state via core memory blocks and archival/recall memory). Not recommended unless you have an advanced use case.
message_ids: Optional[List[str]]
The ids of the messages in the agent's in-context memory.
metadata: Optional[Dict[str, object]]
The metadata of the agent.
model: Optional[Model]
Schema for defining settings for a model
model: str
The name of the model.
max_output_tokens: Optional[int]
The maximum number of tokens the model can generate.
parallel_tool_calls: Optional[bool]
Whether to enable parallel tool calling.
Deprecatedmulti_agent_group: Optional[Group]
Deprecated: Use managed_group field instead. The multi-agent group that this agent manages.
id: str
The id of the group. Assigned by the database.
base_template_id: Optional[str]
The base template id.
deployment_id: Optional[str]
The id of the deployment.
hidden: Optional[bool]
If set to True, the group will be hidden.
max_message_buffer_length: Optional[int]
The desired maximum length of messages in the context window of the convo agent. This is a best effort, and may be off slightly due to user/assistant interleaving.
min_message_buffer_length: Optional[int]
The desired minimum length of messages in the context window of the convo agent. This is a best effort, and may be off-by-one due to user/assistant interleaving.
project_id: Optional[str]
The associated project id.
template_id: Optional[str]
The id of the template.
per_file_view_window_char_limit: Optional[int]
The per-file view window character limit for this agent. Setting this too high may exceed the context window, which will break the agent.
project_id: Optional[str]
The id of the project the agent belongs to.
response_format: Optional[ResponseFormat]
The response format used by the agent
class TextResponseFormat: …
Response format for plain text responses.
type: Optional[Literal["text"]]
The type of the response format.
class JsonSchemaResponseFormat: …
Response format for JSON schema-based responses.
json_schema: Dict[str, object]
The JSON schema of the response.
type: Optional[Literal["json_schema"]]
The type of the response format.
class JsonObjectResponseFormat: …
Response format for JSON object responses.
type: Optional[Literal["json_object"]]
The type of the response format.
The environment variables for tool execution specific to this agent.
agent_id: str
The ID of the agent this environment variable belongs to.
key: str
The name of the environment variable.
value: str
The value of the environment variable.
id: Optional[str]
The human-friendly ID of the Agent-env
created_at: Optional[datetime]
The timestamp when the object was created.
created_by_id: Optional[str]
The id of the user that made this object.
description: Optional[str]
An optional description of the environment variable.
last_updated_by_id: Optional[str]
The id of the user that made this object.
updated_at: Optional[datetime]
The timestamp when the object was last updated.
value_enc: Optional[str]
Encrypted secret value (stored as encrypted string)
template_id: Optional[str]
The id of the template the agent belongs to.
timezone: Optional[str]
The timezone of the agent (IANA format).
Deprecated: use secrets field instead.
agent_id: str
The ID of the agent this environment variable belongs to.
key: str
The name of the environment variable.
value: str
The value of the environment variable.
id: Optional[str]
The human-friendly ID of the Agent-env
created_at: Optional[datetime]
The timestamp when the object was created.
created_by_id: Optional[str]
The id of the user that made this object.
description: Optional[str]
An optional description of the environment variable.
last_updated_by_id: Optional[str]
The id of the user that made this object.
updated_at: Optional[datetime]
The timestamp when the object was last updated.
value_enc: Optional[str]
Encrypted secret value (stored as encrypted string)
tool_rules: Optional[List[ToolRule]]
The list of tool rules.
class ChildToolRule: …
A ToolRule represents a tool that can be invoked by the agent.
children: List[str]
The children tools that can be invoked.
tool_name: str
The name of the tool. Must exist in the database for the user's organization.
child_arg_nodes: Optional[List[ChildArgNode]]
Optional list of typed child argument overrides. Each node must reference a child in 'children'.
name: str
The name of the child tool to invoke next.
args: Optional[Dict[str, object]]
Optional prefilled arguments for this child tool. Keys must match the tool's parameter names and values must satisfy the tool's JSON schema. Supports partial prefill; non-overlapping parameters are left to the model.
prompt_template: Optional[str]
Optional template string (ignored).
type: Optional[Literal["constrain_child_tools"]]
class InitToolRule: …
Represents the initial tool rule configuration.
tool_name: str
The name of the tool. Must exist in the database for the user's organization.
args: Optional[Dict[str, object]]
Optional prefilled arguments for this tool. When present, these values will override any LLM-provided arguments with the same keys during invocation. Keys must match the tool's parameter names and values must satisfy the tool's JSON schema. Supports partial prefill; non-overlapping parameters are left to the model.
prompt_template: Optional[str]
Optional template string (ignored). Rendering uses fast built-in formatting for performance.
type: Optional[Literal["run_first"]]
class TerminalToolRule: …
Represents a terminal tool rule configuration where if this tool gets called, it must end the agent loop.
tool_name: str
The name of the tool. Must exist in the database for the user's organization.
prompt_template: Optional[str]
Optional template string (ignored).
type: Optional[Literal["exit_loop"]]
class ConditionalToolRule: …
A ToolRule that conditionally maps to different child tools based on the output.
child_output_mapping: Dict[str, str]
The output case to check for mapping
tool_name: str
The name of the tool. Must exist in the database for the user's organization.
default_child: Optional[str]
The default child tool to be called. If None, any tool can be called.
prompt_template: Optional[str]
Optional template string (ignored).
require_output_mapping: Optional[bool]
Whether to throw an error when output doesn't match any case
type: Optional[Literal["conditional"]]
class ContinueToolRule: …
Represents a tool rule configuration where if this tool gets called, it must continue the agent loop.
tool_name: str
The name of the tool. Must exist in the database for the user's organization.
prompt_template: Optional[str]
Optional template string (ignored).
type: Optional[Literal["continue_loop"]]
class RequiredBeforeExitToolRule: …
Represents a tool rule configuration where this tool must be called before the agent loop can exit.
tool_name: str
The name of the tool. Must exist in the database for the user's organization.
prompt_template: Optional[str]
Optional template string (ignored).
type: Optional[Literal["required_before_exit"]]
class MaxCountPerStepToolRule: …
Represents a tool rule configuration which constrains the total number of times this tool can be invoked in a single step.
max_count_limit: int
The max limit for the total number of times this tool can be invoked in a single step.
tool_name: str
The name of the tool. Must exist in the database for the user's organization.
prompt_template: Optional[str]
Optional template string (ignored).
type: Optional[Literal["max_count_per_step"]]
class ParentToolRule: …
A ToolRule that only allows a child tool to be called if the parent has been called.
children: List[str]
The children tools that can be invoked.
tool_name: str
The name of the tool. Must exist in the database for the user's organization.
prompt_template: Optional[str]
Optional template string (ignored).
type: Optional[Literal["parent_last_tool"]]
class RequiresApprovalToolRule: …
Represents a tool rule configuration which requires approval before the tool can be invoked.
tool_name: str
The name of the tool. Must exist in the database for the user's organization.
prompt_template: Optional[str]
Optional template string (ignored). Rendering uses fast built-in formatting for performance.
type: Optional[Literal["requires_approval"]]
updated_at: Optional[datetime]
The timestamp when the object was last updated.
func_return: Optional[object]
The function return object
sandbox_config_fingerprint: Optional[str]
The fingerprint of the config for the sandbox
stderr: Optional[List[str]]
Captured stderr from the function invocation
stdout: Optional[List[str]]
Captured stdout (prints, logs) from function invocation
class UpdateSseMcpServer: …
Update schema for SSE MCP server - all fields optional
token: Optional[str]
The authentication token (internal)
auth_header: Optional[str]
The name of the authentication header (e.g., 'Authorization')
auth_token: Optional[str]
The authentication token or API key value
custom_headers: Optional[Dict[str, str]]
Custom headers to send with requests
server_name: Optional[str]
The name of the MCP server
server_url: Optional[str]
The URL of the SSE MCP server
class UpdateStdioMcpServer: …
Update schema for Stdio MCP server - all fields optional
args: Optional[List[str]]
The arguments to pass to the command
command: Optional[str]
The command to run the MCP server
env: Optional[Dict[str, str]]
Environment variables to set
server_name: Optional[str]
The name of the MCP server
class UpdateStreamableHTTPMcpServer: …
Update schema for Streamable HTTP MCP server - all fields optional
token: Optional[str]
The authentication token (internal)
auth_header: Optional[str]
The name of the authentication header (e.g., 'Authorization')
auth_token: Optional[str]
The authentication token or API key value
custom_headers: Optional[Dict[str, str]]
Custom headers to send with requests
server_name: Optional[str]
The name of the MCP server
server_url: Optional[str]
The URL of the Streamable HTTP MCP server