muse-glimmer-agent
Muse Glimmer + MCP + Langfuse (local)
Un agente mínimo de Pydantic AI que:
ejecuta
muse-glimmer(el modelo agéntico de Meta de 30B) a través de una instancia local de Ollama,tiene MCP habilitado: un servidor local de FastMCP (
mcp_server.py) conectado como subproceso stdio, que exponeget_weather,get_current_timeylist_ollama_modelscomo herramientas del agente,envía trazas completas (solicitudes de modelo, llamadas a herramientas, salidas) a una instancia local de Langfuse para la observabilidad.
Requisitos previos
Ollama en ejecución con el modelo descargado:
ollama pull muse-glimmerUna instancia local de Langfuse (p. ej., mediante
docker composedel repositorio de Langfuse) accesible enhttp://localhost:3000.uv (o usa
python3 -m venv+pip).
Related MCP server: MCP Ollama Consult Server
Configuración
cp .env.example .env # then fill in your Langfuse keys
uv sync # installs pydantic-ai, fastmcp, langfuse, ....env:
LANGFUSE_PUBLIC_KEY=pk-lf-...
LANGFUSE_SECRET_KEY=sk-lf-...
LANGFUSE_BASE_URL=http://localhost:3000
LANGFUSE_HOST=http://localhost:3000
OLLAMA_BASE_URL=http://localhost:11434/v1
OLLAMA_MODEL=muse-glimmerEjecución
uv run python agent.pyEl agente responde a tres indicaciones de demostración y llama a las herramientas MCP cuando sea necesario:
🧑 User: What is the weather in Paris today?
🤖 Agent: Weather in Paris: clear skies, 22°C, humidity 51%.
🧑 User: What time is it in Tokyo right now?
🤖 Agent: The current time in Asia/Tokyo is 2026-08-25 21:04:33 JST.
🧑 User: Which Ollama models are available locally?
🤖 Agent: NAME ID SIZE MODIFIED ...Observabilidad (Langfuse)
Abre http://localhost:3000 → Traces. Cada ejecución genera trazas llamadas muse-glimmer-mcp-agent, con spans para las peticiones al modelo (tokens de entrada/salida) y para cada llamada a herramienta MCP: inspecciona las entradas, salidas, latencias y costes.
Exponer el agente como servidor MCP
agent_mcp_server.py invierte la arquitectura: el propio agente se convierte en un servidor MCP que expone una herramienta — ask_agent(prompt) — para cualquier cliente MCP (Claude Desktop, VS Code, Cursor, otro agente de Pydantic AI, ...). Cada llamada ejecuta muse-glimmer a través de Ollama, conserva las herramientas MCP internas y queda registrada en Langfuse.
Ejecutar el servidor
uv run python agent_mcp_server.pyConfiguración del cliente
Configura cualquier cliente MCP para que apunte a este servidor usando el Python de tu venv gestionado por uv (también funciona uv run --project <repo> python). Ejemplos:
Claude Desktop — claude_desktop_config.json:
{
"mcpServers": {
"muse-glimmer-agent": {
"command": "/home/d3lee/.local/bin/uv",
"args": ["run", "--project", "/home/d3lee/my-repos/pydantic-ai-mcp-server-sample", "python", "agent_mcp_server.py"]
}
}
}VS Code — .vscode/mcp.json:
{
"servers": {
"muse-glimmer-agent": {
"type": "stdio",
"command": "uv",
"args": ["run", "--project", "/home/d3lee/my-repos/pydantic-ai-mcp-server-sample", "python", "agent_mcp_server.py"]
}
}
}Cursor — .cursor/mcp.json:
{
"mcpServers": {
"muse-glimmer-agent": {
"command": "uv",
"args": ["run", "--project", "/home/d3lee/my-repos/pydantic-ai-mcp-server-sample", "python", "agent_mcp_server.py"]
}
}
}Estructura
Archivo | Propósito |
| Agente de Pydantic AI: modelo Ollama + capacidad MCP + Langfuse |
| Servidor FastMCP (stdio) que expone las herramientas locales |
| Expone el propio agente como servidor MCP (herramienta |
| Configuración de Langfuse + Ollama |
pydantic-ai-mcp-server-sample
Available Tools
1 toolask_agentC
Ask the Muse Glimmer AI agent a question.
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavior. It states 'ask a question,' which implies a query or read operation, but it does not disclose any side effects, response format, permissions, or limitations. This is a significant gap for a tool with no annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, short sentence with no wasted words. The verb is front-loaded and the resource is clear. It is appropriately concise for a simple tool, though this brevity comes at the cost of detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has an output schema (not shown), so return values may be covered, but the description lacks any context about the nature of questions, expected inputs, or edge cases. An agent has no information about what kinds of prompts are valid or what the response will look like, making it incomplete for a one-parameter tool with no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, and the description does not mention the 'prompt' parameter at all. It adds no information about the expected format, content, or purpose of the prompt beyond what the parameter name itself implies. The description fails to compensate for the schema coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (ask) and the resource (Muse Glimmer AI agent). It is specific enough for a tool with no siblings, though it is generic and could be more detailed about the scope of questions. The verb+resource is clear and not tautological.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives, and there are no sibling tools. The description does not mention any prerequisites, context, or conditions for use, leaving the agent to infer that it should be used when a question needs answering.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v0.1.0- First observed
ask_agent
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or misselection. The tool 'ask_agent' has a clearly distinct purpose as the sole entry point for questioning the agent.
The single tool name 'ask_agent' follows a consistent verb_noun pattern, aligned with its singular function. Naming is clear and predictable.
The server has only one tool, which feels thin but is appropriate for its narrow purpose of asking a question. It is not an extreme mismatch, but it borders on insufficient for broader agent workflows.
The domain is defined as asking the Muse Glimmer agent a question, and the single tool fully covers this operation. There are no obvious gaps within the stated scope.
Maintenance
Related MCP Connectors
Discover and call AI agents via MCP. Supports A2A agents and platform agents with async tasks.
LLM Orchestration Agent (Opentelemetry Api)
MCP-Native LLM Orchestration Agent
Hosted MCP runtime where your agent publishes its own tools by tool call and keeps working.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables seamless integration between Ollama's local LLM models and MCP-compatible applications, supporting model management and chat interactions.13689 npm176AGPL 3.0
- AlicenseBqualityFmaintenanceEnables consulting with local Ollama models for reasoning from alternative viewpoints. Supports sending prompts to Ollama models and listing available models on your local Ollama instance.51MIT
- AlicenseAqualityDmaintenanceIntegrates Ollama's local AI models with MCP clients, enabling listing models, viewing model details, and asking questions to models.3MIT
- FlicenseNot gradedqualityDmaintenanceExposes system tools (disk usage, file listing) and weather information via Open-Meteo to MCP-compatible LLMs.-