Home

PromptEasy Server

v1.0.0

This server provides access to the PromptEasy prompt management system. Use this server to list vaults, search prompts, and retrieve specific prompt templates. For general setup see documentation.

Tools

list_vaults

TOOLlist_vaults

List all vaults the current user has access to.

Returns

vaultsArray<object>required

A list of accessible vaults.

Show child attributes
idintegerrequired

The vault ID.

namestringrequired

The vault name.

list_vaults
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "list_vaults",
    "arguments": {}
  }
}
const result = await client.callTool("list_vaults", {});
result = await session.call_tool("list_vaults", arguments={})
Response
{
  "vaults": [
    {
      "id": 0,
      "name": "string"
    }
  ]
}

search_prompts

TOOLsearch_prompts

Search for prompts within accessible vaults.

Parameters

querystringrequiredargument

The search query string.

vault_idintegerargument

Optional vault ID to filter by.

Returns

promptsArray<object>required

A list of matching prompts.

Show child attributes
idintegerrequired

The prompt ID.

titlestringrequired

The prompt title.

keywordsstringrequired

Keywords associated with the prompt.

categoriesstringrequired

Comma-separated list of category names.

vaultobjectrequired
Show child attributes
idintegerrequired

The vault ID.

namestringrequired

The vault name.

search_prompts
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "search_prompts",
    "arguments": {
        "query": "string",
        "vault_id": 0
      }
  }
}
const result = await client.callTool("search_prompts", {
  "query": "string",
  "vault_id": 0
});
result = await session.call_tool("search_prompts", arguments={
  "query": "string",
  "vault_id": 0
})
Response
{
  "prompts": [
    {
      "id": 0,
      "title": "string",
      "keywords": "string",
      "categories": "string",
      "vault": {
        "id": 0,
        "name": "string"
      }
    }
  ]
}

get_prompt

TOOLget_prompt

Get details of a specific prompt by its ID.

Parameters

idstringrequiredargument

The UUID of the prompt to retrieve.

parametersobjectargument

Optional key-value parameters to replace in the prompt template on-the-fly.

prompt_versionintegerargument

Optional version number of the prompt template to retrieve.

team_idintegerargument

Optional team ID override for execution telemetry.

expected_llm_modelstringargument

Optional expected LLM model override for execution telemetry.

Returns

execution_idstring

The execution UUID for telemetry tracking.

idstringrequired

The prompt ID.

titlestringrequired

The prompt title.

promptstringrequired

The prompt content.

llm_modelstringrequired

The LLM model used.

llm_system_messagestringrequired

The system message for the LLM.

llm_settingsobjectrequired

Settings for the LLM.

parametersArray<string>required

Parameters for the prompt.

prompt_versionintegerrequired

The version number of the prompt.

categoriesstringrequired

Comma-separated list of category names.

created_atstringrequired

Creation timestamp.

vaultobjectrequired
Show child attributes
idintegerrequired

The vault ID.

namestringrequired

The vault name.

get_prompt
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "get_prompt",
    "arguments": {
        "id": "string",
        "parameters": {},
        "prompt_version": 0,
        "team_id": 0,
        "expected_llm_model": "string"
      }
  }
}
const result = await client.callTool("get_prompt", {
  "id": "string",
  "parameters": {},
  "prompt_version": 0,
  "team_id": 0,
  "expected_llm_model": "string"
});
result = await session.call_tool("get_prompt", arguments={
  "id": "string",
  "parameters": {},
  "prompt_version": 0,
  "team_id": 0,
  "expected_llm_model": "string"
})
Response
{
  "execution_id": "string",
  "id": "string",
  "title": "string",
  "prompt": "string",
  "llm_model": "string",
  "llm_system_message": "string",
  "llm_settings": {},
  "parameters": [
    "string"
  ],
  "prompt_version": 0,
  "categories": "string",
  "created_at": "string",
  "vault": {
    "id": 0,
    "name": "string"
  }
}

report_execution_telemetry

TOOLreport_execution_telemetry

Report execution telemetry metrics (token usage, latency, finish reason, and status) for a completed prompt execution.

Parameters

execution_idstringrequiredargument

The UUID of the prompt execution returned by get_prompt.

actual_llm_modelstringargument

Optional actual LLM model string executed (e.g. claude-3-5-sonnet-20241022).

prompt_tokensintegerargument

Optional count of prompt/input tokens used.

completion_tokensintegerargument

Optional count of completion/output tokens used.

cached_prompt_tokensintegerargument

Optional count of cached prompt tokens used.

reasoning_tokensintegerargument

Optional count of reasoning/thinking tokens used.

latency_msintegerargument

Optional execution latency in milliseconds.

ttft_msintegerargument

Optional time-to-first-token in milliseconds.

finish_reasonstringargument

Optional execution finish reason (e.g. stop, length).

statusintegerargument

Optional execution status code: 1 = COMPLETED (default), 2 = FAILED, 3 = TIMEOUT/CANCELLED.

Returns

messagestringrequired

Confirmation message.

execution_idstringrequired

The execution UUID.

has_telemetrybooleanrequired

Flag indicating telemetry was saved.

statusintegerrequired

Execution status code.

report_execution_telemetry
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "report_execution_telemetry",
    "arguments": {
        "execution_id": "string",
        "actual_llm_model": "string",
        "prompt_tokens": 0,
        "completion_tokens": 0,
        "cached_prompt_tokens": 0,
        "reasoning_tokens": 0,
        "latency_ms": 0,
        "ttft_ms": 0,
        "finish_reason": "string",
        "status": 0
      }
  }
}
const result = await client.callTool("report_execution_telemetry", {
  "execution_id": "string",
  "actual_llm_model": "string",
  "prompt_tokens": 0,
  "completion_tokens": 0,
  "cached_prompt_tokens": 0,
  "reasoning_tokens": 0,
  "latency_ms": 0,
  "ttft_ms": 0,
  "finish_reason": "string",
  "status": 0
});
result = await session.call_tool("report_execution_telemetry", arguments={
  "execution_id": "string",
  "actual_llm_model": "string",
  "prompt_tokens": 0,
  "completion_tokens": 0,
  "cached_prompt_tokens": 0,
  "reasoning_tokens": 0,
  "latency_ms": 0,
  "ttft_ms": 0,
  "finish_reason": "string",
  "status": 0
})
Response
{
  "message": "string",
  "execution_id": "string",
  "has_telemetry": true,
  "status": 0
}