MCP 서버

together-ai

io.usefulapi/together-ai
AI 및 에이전트 개발자 도구 공개 · 연결 가능 MCP 2026-07-28

이 MCP로 할 수 있는 일

Runs Together AI chat, embeddings, image generation, batch inference, fine-tuning, evaluations, model discovery, and dedicated endpoint management.

together_cancel_batch
Cancel a batch job
Cancel a batch job that has not finished. Together: POST /batches/{id}/cancel.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['batch_id'], 'properties': {'batch_id': {'type': 'string', 'minLength': 1, 'description': 'The batch job id.'}}}
together_cancel_fine_tune
Cancel a fine-tuning job
Cancel a running fine-tuning job. Cannot be resumed, but a new job can continue from its last checkpoint via from_checkpoint. Together: POST /fine-tunes/{id}/cancel.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['fine_tune_id'], 'properties': {'fine_tune_id': {'type': 'string', 'minLength': 1, 'description': 'The job id, e.g. ft-abc123.'}}}
together_chat_completion
Chat completion
Run a chat completion on a Together model (billed per token). Non-streaming. For a dedicated endpoint pass its `<project_slug>/<endpoint_slug>` as the model. Together: POST /chat/completions.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['model', 'messages'], 'properties': {'seed': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Seed for reproducible sampling.'}, 'stop': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Stop sequences.'}, 'model': {'type': 'string', 'minLength': 1, 'description': 'Model name, e.g. meta-llama/Llama-3.3-70B-Instruct-Turbo.'}, 'top_k': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'top_p': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'messages': {'type': 'array', 'items': {'type': 'object', 'required': ['role', 'content'], 'properties': {'role': {'enum': ['system', 'user', 'assistant', 'tool'], 'type': 'string'}, 'content': {'type': 'string'}}}, 'minItems': 1, 'description': 'The conversation so far.'}, 'max_tokens': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Maximum tokens to generate.'}, 'temperature': {'type': 'number', 'maximum': 2, 'minimum': 0}, 'reasoning_effort': {'enum': ['low', 'medium', 'high'], 'type': 'string', 'description': 'Reasoning effort for reasoning models that support it.'}, 'repetition_penalty': {'type': 'number'}}}
together_create_batch
Create a batch job
Start an asynchronous batch job over an uploaded JSONL input file (purpose batch-api), at a discount to real-time inference. Together: POST /batches.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['input_file_id', 'endpoint'], 'properties': {'endpoint': {'enum': ['/v1/chat/completions', '/v1/audio/transcriptions', '/v1/audio/translations'], 'type': 'string', 'description': 'The API each line of the input file is sent to.'}, 'model_id': {'type': 'string', 'description': 'Model to process the requests with.'}, 'priority': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Processing priority.'}, 'input_file_id': {'type': 'string', 'minLength': 1, 'description': 'File id of the uploaded JSONL request file.'}, 'completion_window': {'type': 'string', 'description': 'Time window for completion, e.g. 24h.'}}}
together_create_embeddings
Create embeddings
Generate vector embeddings for one or more texts (billed per token). Together: POST /embeddings.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['model', 'input'], 'properties': {'input': {'anyOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1}], 'description': 'A text, or a list of texts, to embed.'}, 'model': {'type': 'string', 'minLength': 1, 'description': 'Embedding model, e.g. BAAI/bge-large-en-v1.5.'}}}
together_create_endpoint
Create a dedicated endpoint
Deploy a model on dedicated GPUs. The endpoint STARTS AUTOMATICALLY and bills per minute of uptime until stopped — set inactive_timeout to auto-stop it, and use together_list_hardware for valid hardware ids. Together: POST /endpoints.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['model', 'hardware', 'autoscaling'], 'properties': {'model': {'type': 'string', 'minLength': 1, 'description': 'The model to deploy.'}, 'state': {'enum': ['STARTED', 'STOPPED'], 'type': 'string', 'description': 'Initial state. Pass STOPPED to create without starting (and without billing).'}, 'hardware': {'type': 'string', 'minLength': 1, 'description': 'Hardware id, e.g. 1x_nvidia_a100_80gb_sxm.'}, 'autoscaling': {'type': 'object', 'required': ['min_replicas', 'max_replicas'], 'properties': {'max_replicas': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Maximum replicas to scale up to under load.'}, 'min_replicas': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Replicas kept running even with no load.'}}, 'description': 'Replica bounds for autoscaling.'}, 'display_name': {'type': 'string', 'description': 'Human-readable name.'}, 'inactive_timeout': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Minutes of inactivity before auto-stop; 0 disables it.'}, 'availability_zone': {'type': 'string', 'description': 'Availability zone, e.g. us-central-4b.'}, 'disable_speculative_decoding': {'type': 'boolean'}}}
together_create_fine_tune
Create a fine-tuning job
Start a fine-tuning job on an uploaded training file (billed per token processed). Stop it with together_cancel_fine_tune. Together: POST /fine-tunes.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['model', 'training_file'], 'properties': {'model': {'type': 'string', 'minLength': 1, 'description': 'Base model to fine-tune.'}, 'suffix': {'type': 'string', 'maxLength': 64, 'description': "Suffix for the fine-tuned model's name (max 64 chars)."}, 'n_evals': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Evaluations on the validation set during training.'}, 'n_epochs': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Passes over the training data.'}, 'batch_size': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}, {'type': 'string', 'const': 'max'}], 'description': "Batch size, or 'max' (the default)."}, 'warmup_ratio': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'learning_rate': {'type': 'number', 'exclusiveMinimum': 0}, 'n_checkpoints': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Intermediate checkpoints to save.'}, 'training_file': {'type': 'string', 'minLength': 1, 'description': 'File id of an uploaded training file (purpose fine-tune).'}, 'training_type': {'oneOf': [{'type': 'object', 'required': ['type'], 'properties': {'type': {'type': 'string', 'const': 'Full'}}}, {'type': 'object', 'required': ['type', 'lora_r', 'lora_alpha'], 'properties': {'type': {'type': 'string', 'const': 'Lora'}, 'lora_r': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Rank of the LoRA adapter matrices.'}, 'lora_alpha': {'type': 'number', 'description': 'Scaling factor applied to the LoRA adapter weights.'}, 'lora_dropout': {'type': 'number', 'maximum': 1, 'minimum': 0, 'description': 'Dropout on LoRA adapter inputs.'}, 'lora_trainable_modules': {'type': 'string', 'description': 'Comma-separated target modules, or all-linear for the model defaults.'}}}], 'description': 'Full fine-tune or LoRA. Together defaults to LoRA when omitted.'}, 'max_seq_length': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1}, 'from_checkpoint': {'type': 'string', 'description': 'Continue from a previous job: <job_id>, <output_model_name>, optionally with :<step>.'}, 'training_method': {'oneOf': [{'type': 'object', 'required': ['method', 'train_on_inputs'], 'properties': {'method': {'type': 'string', 'const': 'sft'}, 'train_on_inputs': {'anyOf': [{'type': 'boolean'}, {'type': 'string', 'const': 'auto'}], 'description': "Whether prompt/user tokens contribute to the loss; 'auto' lets Together decide."}}}, {'type': 'object', 'required': ['method'], 'properties': {'method': {'type': 'string', 'const': 'dpo'}, 'dpo_beta': {'type': 'number'}, 'rpo_alpha': {'type': 'number'}, 'simpo_gamma': {'type': 'number'}, 'dpo_reference_free': {'type': 'boolean'}, 'dpo_normalize_logratios_by_length': {'type': 'boolean'}}}], 'description': 'Supervised fine-tuning (sft, the default) or preference tuning (dpo).'}, 'validation_file': {'type': 'string', 'description': 'File id of an uploaded validation file.'}}}
together_generate_image
Generate an image
Generate images from a prompt (billed per image/megapixel). Returns image URLs by default rather than base64, to keep responses small. Together: POST /images/generations.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['model', 'prompt'], 'properties': {'n': {'type': 'integer', 'maximum': 4, 'minimum': 1, 'description': 'Number of images.'}, 'seed': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'model': {'type': 'string', 'minLength': 1, 'description': 'Image model, e.g. black-forest-labs/FLUX.1-schnell.'}, 'steps': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 1, 'description': 'Number of generation steps.'}, 'width': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 64, 'description': 'Width in pixels.'}, 'height': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 64, 'description': 'Height in pixels.'}, 'prompt': {'type': 'string', 'minLength': 1, 'description': 'What to draw.'}, 'image_url': {'type': 'string', 'description': 'Input image URL, for models that support editing.'}, 'output_format': {'enum': ['jpeg', 'png'], 'type': 'string'}, 'guidance_scale': {'type': 'number', 'description': 'Prompt adherence; higher is more literal.'}, 'negative_prompt': {'type': 'string', 'description': 'What to steer away from.'}, 'response_format': {'enum': ['url', 'base64'], 'type': 'string', 'description': 'url (default here) or base64. base64 can be very large.'}}}
together_get_batch
Get one batch job
Fetch one batch job: status (VALIDATING, IN_PROGRESS, COMPLETED, FAILED, EXPIRED, CANCELLED), progress, and the output_file_id / error_file_id once done. Together: GET /batches/{id}.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['batch_id'], 'properties': {'batch_id': {'type': 'string', 'minLength': 1, 'description': 'The batch job id.'}}}
together_get_endpoint
Get one endpoint
Fetch one dedicated endpoint: state, model, hardware, autoscaling bounds and display name. Together: GET /endpoints/{endpointId}.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['endpoint_id'], 'properties': {'endpoint_id': {'type': 'string', 'minLength': 1, 'description': 'The endpoint id, e.g. endpoint-d23901de-....'}}}
together_get_file
Get one file
Fetch one file's metadata, including its processing_status and validation_report (why a fine-tune training file was rejected). Together: GET /files/{id}.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['file_id'], 'properties': {'file_id': {'type': 'string', 'minLength': 1, 'description': 'The file id, e.g. file-abc123.'}}}
together_get_fine_tune
Get one fine-tuning job
Fetch one fine-tuning job: status, progress, hyperparameters, token counts, cost and the output model name. Together: GET /fine-tunes/{id}.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['fine_tune_id'], 'properties': {'fine_tune_id': {'type': 'string', 'minLength': 1, 'description': 'The job id, e.g. ft-abc123.'}}}
together_list_batches
List batch jobs
List batch inference jobs with status, progress, model and input/output/error file ids. Together: GET /batches.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
together_list_endpoints
List endpoints
List endpoints with model, owner and state (PENDING, STARTING, STARTED, STOPPING, STOPPED, ERROR). Use mine=true and type=dedicated to see what is running on your account and billing by the minute. Together: GET /endpoints.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'mine': {'type': 'boolean', 'description': 'Only endpoints owned by the caller.'}, 'type': {'enum': ['dedicated', 'serverless'], 'type': 'string', 'description': 'Filter by endpoint type.'}, 'usage_type': {'enum': ['on-demand', 'reserved'], 'type': 'string', 'description': 'Filter by usage type.'}}}
together_list_evaluations
List evaluation jobs
List LLM-as-a-judge evaluation jobs (classify, score, compare) with status, parameters and results once completed. Together: GET /evaluation.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'limit': {'type': 'integer', 'maximum': 1000, 'minimum': 1, 'description': 'Maximum number of jobs to return.'}, 'status': {'type': 'string', 'description': 'Filter by status: pending, queued, running, completed, error, user_error.'}}}
together_list_files
List files
List uploaded data files (fine-tune, eval and batch-api inputs, plus job outputs) with size, type, purpose and validation status. Together: GET /files.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
together_list_fine_tune_events
List a fine-tuning job's events
List the event log of one fine-tuning job (queued, started, checkpoint saved, epoch completed, errors). The first place to look when a job failed. Together: GET /fine-tunes/{id}/events.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['fine_tune_id'], 'properties': {'fine_tune_id': {'type': 'string', 'minLength': 1, 'description': 'The job id, e.g. ft-abc123.'}}}
together_list_fine_tunes
List fine-tuning jobs
List fine-tuning jobs with status, base model, output model name and training settings. Together: GET /fine-tunes.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
together_list_hardware
List hardware
List hardware configurations for dedicated endpoints with GPU type/count/memory and price in cents per minute. Pass a model to get only compatible configurations with live availability. Together: GET /hardware.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'model': {'type': 'string', 'description': 'Only hardware compatible with this model, with availability.'}}}
together_list_models
List models
List Together's models with type (chat, language, code, image, embedding, moderation, rerank), context length, organization, license and per-token pricing. Together: GET /models.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'dedicated': {'type': 'boolean', 'description': 'Only return models that can run on dedicated endpoints.'}}}
together_start_endpoint
Start a dedicated endpoint
Start a stopped dedicated endpoint. It bills per minute of uptime until stopped. Reversible with together_stop_endpoint. Together: PATCH /endpoints/{endpointId} with state=STARTED.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['endpoint_id'], 'properties': {'endpoint_id': {'type': 'string', 'minLength': 1, 'description': 'The endpoint id.'}}}
together_stop_endpoint
Stop a dedicated endpoint
Stop a running dedicated endpoint, which stops its per-minute billing. Requests to it fail until it is started again. Together: PATCH /endpoints/{endpointId} with state=STOPPED.
파괴적 작업
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['endpoint_id'], 'properties': {'endpoint_id': {'type': 'string', 'minLength': 1, 'description': 'The endpoint id.'}}}
together_whoami
Who am I
Identify the API key: its organization, project and project slug. The project slug forms the `<project_slug>/<endpoint_slug>` model name for dedicated-endpoint inference. A cheap way to confirm the key works. Together: GET /whoami.
읽기 전용
입력 스키마
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
변경됨
together_stop_endpoint
2026년 10월 2일 2:40 AM
변경됨
together_start_endpoint
2026년 10월 2일 2:40 AM
변경됨
together_create_endpoint
2026년 10월 2일 2:40 AM
변경됨
together_cancel_batch
2026년 10월 2일 2:40 AM
변경됨
together_create_batch
2026년 10월 2일 2:40 AM
변경됨
together_cancel_fine_tune
2026년 10월 2일 2:40 AM
변경됨
together_create_fine_tune
2026년 10월 2일 2:40 AM
변경됨
together_generate_image
2026년 10월 2일 2:40 AM
변경됨
together_create_embeddings
2026년 10월 2일 2:40 AM
변경됨
together_chat_completion
2026년 10월 2일 2:40 AM
변경됨
together_list_evaluations
2026년 10월 2일 2:40 AM
변경됨
together_list_hardware
2026년 10월 2일 2:40 AM
변경됨
together_get_endpoint
2026년 10월 2일 2:40 AM
변경됨
together_list_endpoints
2026년 10월 2일 2:40 AM
변경됨
together_get_batch
2026년 10월 2일 2:40 AM
변경됨
together_list_batches
2026년 10월 2일 2:40 AM
변경됨
together_list_fine_tune_events
2026년 10월 2일 2:40 AM
변경됨
together_get_fine_tune
2026년 10월 2일 2:40 AM
변경됨
together_list_fine_tunes
2026년 10월 2일 2:40 AM
변경됨
together_get_file
2026년 10월 2일 2:40 AM
변경됨
together_list_files
2026년 10월 2일 2:40 AM
변경됨
together_list_models
2026년 10월 2일 2:40 AM
변경됨
together_whoami
2026년 10월 2일 2:40 AM
추가됨
together_stop_endpoint
2026년 9월 30일 2:40 AM
추가됨
together_start_endpoint
2026년 9월 30일 2:40 AM
추가됨
together_create_endpoint
2026년 9월 30일 2:40 AM
추가됨
together_cancel_batch
2026년 9월 30일 2:40 AM
추가됨
together_create_batch
2026년 9월 30일 2:40 AM
추가됨
together_cancel_fine_tune
2026년 9월 30일 2:40 AM
추가됨
together_create_fine_tune
2026년 9월 30일 2:40 AM