MCP Tools Reference
Complete documentation for all 10 MCP tools available to AI assistants.
Observe
View service status, logs, and configuration
get_services
List all services with their current status, ports, and health information.
Returns
Array of service objects with name, status, port, and health fields
Example
"What services are running?" [
{
"name": "web",
"status": "running",
"port": 3000,
"health": "healthy"
},
{
"name": "api",
"status": "running",
"port": 8080,
"health": "unhealthy"
}
] Use Cases
- Check which services are currently running
- Identify unhealthy services
- Get port numbers for debugging
get_service_logs
Retrieve logs from a specific service, with optional filtering by time range and log level.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
service | string | Yes | Name of the service |
lines | number | No | Number of lines to return (default: 100) |
level | string | No | Filter by log level: error, warn, info, debug |
since | string | No | Time filter, e.g., '5m', '1h', '2024-01-01' |
Returns
Array of log entries with timestamp, level, and message
Example
"Show me errors from the API in the last 10 minutes" [
{
"timestamp": "2024-01-15T10:32:15Z",
"level": "error",
"message": "Connection refused to database at localhost:5432"
},
{
"timestamp": "2024-01-15T10:32:45Z",
"level": "error",
"message": "Failed to process request: DatabaseError"
}
] Use Cases
- Find errors causing service failures
- Debug performance issues
- Track request patterns
get_project_info
Get project configuration from azure.yaml including services, dependencies, and settings.
Returns
Project configuration object with services, name, and metadata
Example
"What's configured in this project?" {
"name": "my-app",
"services": {
"web": {
"project": "./src/web",
"language": "js",
"host": "appservice"
},
"api": {
"project": "./src/api",
"language": "python",
"host": "containerapp"
}
}
} Use Cases
- Understand project architecture
- Verify service configuration
- Debug configuration issues
Operate
Start, stop, and manage services
run_services
Start all services or specific services by name.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
services | string[] | No | Optional list of service names to start |
Returns
Status of started services
Example
"Start all services" {
"started": ["web", "api", "worker"],
"status": "running"
} Use Cases
- Start development environment
- Restart after code changes
- Start specific services for testing
stop_services
Stop all running services or specific services by name.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
services | string[] | No | Optional list of service names to stop |
Returns
Status of stopped services
Example
"Stop the worker service" {
"stopped": ["worker"],
"status": "stopped"
} Use Cases
- Stop services before making changes
- Free up system resources
- Isolate services for debugging
restart_service
Restart a specific service to apply configuration changes or recover from errors.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
service | string | Yes | Name of the service to restart |
Returns
Restart status with timing information
Example
"Restart the API service" {
"service": "api",
"status": "restarted",
"duration": "2.3s"
} Use Cases
- Apply code changes without full restart
- Recover from transient errors
- Reset service state
install_dependencies
Install dependencies for all services based on their project type (npm, pip, etc.).
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
service | string | No | Optional specific service to install deps for |
Returns
Installation status for each service
Example
"Install all dependencies" {
"web": { "status": "installed", "packages": 145 },
"api": { "status": "installed", "packages": 32 }
} Use Cases
- Initial project setup
- After pulling new changes
- Fix missing dependency errors
Configure
Check requirements and manage environment
check_requirements
Verify that all prerequisites for the project are installed (Node.js, Python, Docker, etc.).
Returns
Requirements check results with version information
Example
"Are all requirements met?" {
"passed": true,
"requirements": [
{ "name": "Node.js", "required": ">=18", "installed": "20.10.0", "met": true },
{ "name": "Python", "required": ">=3.9", "installed": "3.11.0", "met": true },
{ "name": "Docker", "required": ">=20", "installed": "24.0.7", "met": true }
]
} Use Cases
- Initial project setup verification
- Troubleshoot why services won't start
- Check versions before upgrade
get_environment_variables
Get environment variables for a service. Sensitive values are redacted.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
service | string | Yes | Name of the service |
Returns
Environment variables with sensitive values redacted
Example
"What environment variables does the API use?" {
"service": "api",
"variables": {
"DATABASE_URL": "postgresql://localhost:5432/mydb",
"API_KEY": "[REDACTED]",
"LOG_LEVEL": "debug",
"PORT": "8080"
}
} Use Cases
- Verify environment configuration
- Debug configuration issues
- Check for missing variables
set_environment_variable
Set an environment variable for a service. Takes effect on next restart.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
service | string | Yes | Name of the service |
name | string | Yes | Variable name |
value | string | Yes | Variable value |
Returns
Confirmation of the variable being set
Example
"Set LOG_LEVEL to debug for the API" {
"service": "api",
"variable": "LOG_LEVEL",
"value": "debug",
"status": "set",
"note": "Restart the service for changes to take effect"
} Use Cases
- Enable debug logging
- Configure feature flags
- Set development overrides