Skip to main content
Glama
NehharShah
by NehharShah
personas.py2.34 kB
"""MCP tools for persona management.""" from typing import Any, Dict from mcp.types import Tool as MCPTool from ._core.base import EnvironmentTokenProvider from ._core.handlers import ( generate_personas as _generate_personas, ) from ._core.handlers import ( get_experiment_personas as _get_experiment_personas, ) def generate_personas_tool() -> MCPTool: """Generate synthetic personas for experiments.""" return MCPTool( name="generate_personas", description=( "Generate synthetic personas based on experiment configuration. " "Returns persona definitions that can be used in experiments." ), inputSchema={ "type": "object", "properties": { "run_id": { "type": "string", "description": "The experiment run ID", }, "count": { "type": "integer", "description": "Number of personas to generate", "default": 5, "minimum": 1, "maximum": 20, }, }, "required": ["run_id"], }, ) async def handle_generate_personas(arguments: Dict[str, Any]) -> Dict[str, Any]: """Handle generate_personas tool execution.""" result = await _generate_personas(arguments, EnvironmentTokenProvider()) return result.to_dict() def get_experiment_personas_tool() -> MCPTool: """Get personas from a completed experiment.""" return MCPTool( name="get_experiment_personas", description=( "Retrieve synthetic personas generated for a specific experiment. " "Returns persona descriptions and demographics." ), inputSchema={ "type": "object", "properties": { "run_id": { "type": "string", "description": "The experiment run ID", } }, "required": ["run_id"], }, ) async def handle_get_experiment_personas(arguments: Dict[str, Any]) -> Dict[str, Any]: """Handle get_experiment_personas tool execution.""" result = await _get_experiment_personas(arguments, EnvironmentTokenProvider()) return result.to_dict()

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/NehharShah/mcp-subconscios'

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