Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
TEAMS_AUTHNoAuthentication mode override: interactive, client-credentials, or token
TEAMS_MODENoAccess mode: read-only, read-write, or adminread-only
TEAMS_TOKENNoPre-obtained Microsoft Graph bearer token for token-based authentication
TEAMS_DRY_RUNNoIf set, validate and log writes without executing them
TEAMS_AUDIT_LOGNoIf set, emit a JSON audit line per guarded operationtrue
TEAMS_CLIENT_IDNoAzure AD application (client) ID for the app registration
TEAMS_TENANT_IDNoAzure AD tenant ID (default: common)common
TEAMS_ALLOW_SENDNoSet to enable sending messages (requires read-write mode)
TEAMS_ALLOW_DELETENoSet to enable message deletion (requires admin mode)
TEAMS_CLIENT_SECRETNoClient secret for client-credentials (app-only) authentication
TEAMS_TEAM_ALLOWLISTNoComma-separated list of team IDs that can be posted to
TEAMS_PROTECTED_TEAMSNoComma-separated list of team IDs that are read-only/protected

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
whoamiA

Return the signed-in user's identity (display name, user principal name, id). Use this to confirm which account the server is operating as before reading or posting.

list_teamsA

List the teams the signed-in user is a member of, with their ids, display names, and descriptions. Start here to get a team id for list_channels.

list_channelsA

List the channels in a team, with their ids, display names, and membership type (standard/private/shared).

list_team_membersA

List the members of a team (display name, email, roles).

list_channel_messagesA

List the top-level messages in a channel, most recent first. Returns compact summaries (id, from, created, body, webUrl). Use list_message_replies for a message's thread.

get_channel_messageA

Fetch a single channel message by id, with its full body and metadata.

list_message_repliesA

List the replies in a channel message's thread, most recent first.

list_chatsA

List the signed-in user's 1:1 and group chats (id, topic, type, last updated). Use a chat id with list_chat_messages.

list_chat_messagesA

List the messages in a 1:1 or group chat, most recent first. Returns compact summaries.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.1/5.0

Scored across 9 tools

Disambiguation5/5

Each tool targets a distinct Teams entity and action: identity, teams, channels, members, channel messages, replies, and chats. The potentially similar message tools are clearly separated by scope (channel vs. chat vs. reply) and by singular vs. plural retrieval.

Naming Consistency4/5

The naming is overwhelmingly consistent with a list_* / get_* verb-noun pattern. The main deviation is whoami, which is a common standard command, and the distinction between list and get is semantically clear.

Tool Count5/5

Nine tools is well-scoped for a read-only Microsoft Teams server. Every tool earns its place by covering a distinct read operation without unnecessary redundancy or bloat.

Completeness4/5

Core read workflows are covered well: identity, teams, channels, members, channel messages with replies, and chats. The main gaps are the lack of a full get_chat_message equivalent, no search capability, and no write actions, but these are workable for a listing-focused server.

Maintenance

ActivityMaintained
ResponsivenessNo issues