MCP Tools Reference
Complete reference for all NoLag MCP tools available to AI assistants.
Project Management
nolag_create_project
Creates a new NoLag project within your organization.
{
"name": "nolag_create_project",
"description": "Create a new NoLag project",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Project name"
},
"description": {
"type": "string",
"description": "Project description"
},
"environment": {
"type": "string",
"enum": ["production", "staging", "development"],
"description": "Project environment"
}
},
"required": ["name"]
}
}nolag_list_projects
Lists all projects in your organization.
{
"name": "nolag_list_projects",
"description": "List all NoLag projects",
"inputSchema": {
"type": "object",
"properties": {
"environment": {
"type": "string",
"enum": ["production", "staging", "development"],
"description": "Filter by environment"
}
}
}
}App Management
nolag_create_app
Creates a new app within a project.
{
"name": "nolag_create_app",
"description": "Create a new app in a project",
"inputSchema": {
"type": "object",
"properties": {
"projectId": {
"type": "string",
"description": "Project ID"
},
"name": {
"type": "string",
"description": "App name"
},
"blueprintId": {
"type": "string",
"description": "Optional blueprint to use"
}
},
"required": ["projectId", "name"]
}
}nolag_get_app
Gets details about a specific app.
{
"name": "nolag_get_app",
"description": "Get app details",
"inputSchema": {
"type": "object",
"properties": {
"appId": {
"type": "string",
"description": "App ID"
}
},
"required": ["appId"]
}
}Topic Management
nolag_create_topic
Creates a new topic with optional access control.
{
"name": "nolag_create_topic",
"description": "Create a topic with ACL configuration",
"inputSchema": {
"type": "object",
"properties": {
"appId": {
"type": "string",
"description": "App ID"
},
"name": {
"type": "string",
"description": "Topic name (e.g., 'chat/general')"
},
"description": {
"type": "string",
"description": "Topic description"
},
"acl": {
"type": "object",
"description": "Access control configuration",
"properties": {
"publish": {
"type": "string",
"enum": ["all", "authenticated", "none"],
"description": "Who can publish"
},
"subscribe": {
"type": "string",
"enum": ["all", "authenticated", "none"],
"description": "Who can subscribe"
}
}
}
},
"required": ["appId", "name"]
}
}nolag_list_topics
Lists all topics in an app.
{
"name": "nolag_list_topics",
"description": "List all topics in an app",
"inputSchema": {
"type": "object",
"properties": {
"appId": {
"type": "string",
"description": "App ID"
}
},
"required": ["appId"]
}
}Messaging
nolag_publish
Publishes a message to a topic.
{
"name": "nolag_publish",
"description": "Publish a message to a topic",
"inputSchema": {
"type": "object",
"properties": {
"appId": {
"type": "string",
"description": "App ID"
},
"topic": {
"type": "string",
"description": "Topic name"
},
"data": {
"type": "object",
"description": "Message payload"
},
"qos": {
"type": "number",
"enum": [0, 1, 2],
"description": "Quality of Service level"
}
},
"required": ["appId", "topic", "data"]
}
}nolag_subscribe
Subscribes to a topic and returns recent messages.
{
"name": "nolag_subscribe",
"description": "Subscribe to a topic and get recent messages",
"inputSchema": {
"type": "object",
"properties": {
"appId": {
"type": "string",
"description": "App ID"
},
"topic": {
"type": "string",
"description": "Topic name"
},
"limit": {
"type": "number",
"description": "Max messages to return",
"default": 10
}
},
"required": ["appId", "topic"]
}
}Presence
nolag_get_presence
Gets the list of users present on a topic.
{
"name": "nolag_get_presence",
"description": "Get users currently present on a topic",
"inputSchema": {
"type": "object",
"properties": {
"appId": {
"type": "string",
"description": "App ID"
},
"topic": {
"type": "string",
"description": "Topic name"
}
},
"required": ["appId", "topic"]
}
}Code Generation
nolag_generate_code
Generates SDK client code for a specific use case.
{
"name": "nolag_generate_code",
"description": "Generate client code for NoLag SDK",
"inputSchema": {
"type": "object",
"properties": {
"appId": {
"type": "string",
"description": "App ID"
},
"language": {
"type": "string",
"enum": ["typescript", "javascript", "python", "go"],
"description": "Target language"
},
"framework": {
"type": "string",
"enum": ["react", "vue", "svelte", "vanilla", "node"],
"description": "Target framework"
},
"useCase": {
"type": "string",
"description": "Describe what the code should do"
},
"topics": {
"type": "array",
"items": { "type": "string" },
"description": "Topics to include"
}
},
"required": ["appId", "language", "useCase"]
}
}Monitoring
nolag_get_metrics
Gets metrics and statistics for an app.
{
"name": "nolag_get_metrics",
"description": "Get app metrics and statistics",
"inputSchema": {
"type": "object",
"properties": {
"appId": {
"type": "string",
"description": "App ID"
},
"metric": {
"type": "string",
"enum": ["connections", "messages", "bandwidth", "errors"],
"description": "Metric type"
},
"period": {
"type": "string",
"enum": ["1h", "24h", "7d", "30d"],
"description": "Time period"
}
},
"required": ["appId"]
}
}nolag_get_connections
Gets active connections for an app.
{
"name": "nolag_get_connections",
"description": "Get active connections",
"inputSchema": {
"type": "object",
"properties": {
"appId": {
"type": "string",
"description": "App ID"
},
"topic": {
"type": "string",
"description": "Filter by topic"
}
},
"required": ["appId"]
}
}Webhooks
nolag_configure_webhooks
Configures hydration and trigger webhooks for an app. Hydration webhooks are called when actors subscribe to pre-populate state. Trigger webhooks are called when messages are published.
{
"name": "nolag_configure_webhooks",
"description": "Configure webhooks for an app",
"inputSchema": {
"type": "object",
"properties": {
"appId": {
"type": "string",
"description": "App ID"
},
"hydrationWebhook": {
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Webhook URL (can include query params)"
},
"headers": {
"type": "object",
"description": "Custom headers"
}
}
},
"triggerWebhook": {
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Webhook URL"
},
"headers": {
"type": "object",
"description": "Custom headers"
}
}
}
},
"required": ["appId"]
}
}nolag_get_webhook_config
Gets the current webhook configuration for an app.
{
"name": "nolag_get_webhook_config",
"description": "Get webhook configuration for an app",
"inputSchema": {
"type": "object",
"properties": {
"appId": {
"type": "string",
"description": "App ID"
}
},
"required": ["appId"]
}
}nolag_list_webhook_dlq
Lists failed webhook requests in the Dead Letter Queue.
{
"name": "nolag_list_webhook_dlq",
"description": "List failed webhook requests",
"inputSchema": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": ["pending", "failed", "dead"],
"description": "Filter by status"
},
"type": {
"type": "string",
"enum": ["trigger", "hydration"],
"description": "Filter by webhook type"
},
"limit": {
"type": "number",
"description": "Max entries to return"
}
}
}
}nolag_retry_webhook_dlq
Retries a failed webhook from the Dead Letter Queue.
{
"name": "nolag_retry_webhook_dlq",
"description": "Retry a failed webhook",
"inputSchema": {
"type": "object",
"properties": {
"dlqId": {
"type": "string",
"description": "DLQ entry ID"
}
},
"required": ["dlqId"]
}
}