Skip to main content
Glama

manage-contact

Destructive

Manage your Outlook contacts: list, search, create, update, or permanently delete entries in your personal address book.

Instructions

Full CRUD over the signed-in user's personal Outlook contacts (destructive: covers delete action). action=list (default) returns contacts with pagination via skip/count (default 50). action=search returns contacts matching query against name/email (default 25). action=get returns full contact detail by id. action=create adds a new contact and returns its id. action=update patches the given fields by id (only fields passed are changed). action=delete permanently removes the contact by id. Use outputVerbosity (minimal/standard/full) on list/search to control field count. Prefer search-people for cross-source relevance ranking (contacts + directory + recent comms) — this tool only searches your personal contact store.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idNoContact ID (action=get/update/delete, required)
skipNoPagination offset for action=list (default: 0). Use the value suggested by the previous page response.
countNoNumber of results (action=list default: 50, action=search default: 25)
emailNoPrimary email address (action=create/update)
notesNoPersonal notes (action=create/update)
queryNoSearch query for name or email (action=search, required)
actionNoAction to perform (default: list)
emailsNoMultiple email addresses (action=create/update). First entry is primary.
folderNoContact folder ID (action=list)
jobTitleNoJob title (action=create/update)
lastNameNoSurname (action=create/update). Maps to Graph `surname`.
firstNameNoGiven name (action=create/update). Maps to Graph `givenName`. If displayName not provided, will be combined with lastName.
companyNameNoCompany name (action=create/update)
displayNameNoFull name (action=create/update)
mobilePhoneNoMobile phone number (action=create/update)
outputVerbosityNoOutput detail level (action=list/search, default: standard)
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description openly discloses destructive behavior ('destructive: covers `delete` action', 'permanently removes the contact') and patch semantics ('only fields passed are changed'). It also explains pagination behavior, default result counts, and output verbosity, adding substantial context beyond the annotations' destructiveHint.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but well-structured, covering all six actions in a logical order with defaults and side effects. Every sentence contributes needed information; there is no fluff or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 16 parameters, no output schema, and a wide CRUD range, the description is remarkably complete. It covers action semantics, defaults, pagination, destructive behavior, and alternative tools, leaving virtually no ambiguity for an agent deciding to invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for every parameter. The description adds action-specific meaning (which params apply to which action), clarifies defaults, and notes that the first email entry is primary and that displayName combines with lastName when not provided. This enriches the schema descriptions, though some grouping of params by action is only implicit.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource: 'Full CRUD over the signed-in user's personal Outlook contacts'. It clearly defines the tool's scope and distinguishes it from the sibling 'search-people' tool by noting this tool only searches the personal contact store.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit action-by-action usage (list, search, get, create, update, delete) with defaults and parameter applicability. States when to prefer the alternative 'search-people' for cross-source relevance ranking, giving clear when-to-use vs. when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/littlebearapps/outlook-mcp'

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