io.github.chrischall/ioffice-mcp
iOffice workspace management for Claude — book rooms, manage visitors, maintenance tickets
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
ioffice-mcpclaude mcp add ioffice-mcp -e 'IOFFICE_HOST=<IOFFICE_HOST>' -e 'IOFFICE_TOKEN=<your ioffice_token>' -e 'IOFFICE_USERNAME=<IOFFICE_USERNAME>' -e 'IOFFICE_PASSWORD=<your ioffice_password>' -- npx -y ioffice-mcp@3.2.6
{
"mcpServers": {
"ioffice-mcp": {
"command": "npx",
"args": [
"-y",
"ioffice-mcp@3.2.6"
],
"env": {
"IOFFICE_HOST": "<IOFFICE_HOST>",
"IOFFICE_TOKEN": "<your ioffice_token>",
"IOFFICE_USERNAME": "<IOFFICE_USERNAME>",
"IOFFICE_PASSWORD": "<your ioffice_password>"
}
}
}
}
Environment variables
IOFFICE_HOSTrequired Your iOffice tenant hostname (e.g. yourcompany.ioffice.com)IOFFICE_TOKENsecret Your iOffice API token (preferred over username/password)IOFFICE_USERNAMEYour iOffice username (used if no API token)IOFFICE_PASSWORDsecret Your iOffice password (used if no API token)
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
ioffice-mcp
iOffice MCP server for Claude — developed and maintained by AI (Claude Code)
Confirmations
Every write and state-changing tool (34 of them) asks the user to confirm first.
A client that can show a confirmation prompt (Claude Code) gets the real prompt
unless MCP_CONFIRM_ELICITATION=off.
On one that cannot (claude.ai, Claude Desktop), the first call writes nothing and
returns a preview — the method, path and exact body that would be sent — plus a
single-use confirmToken; only a repeat call with that token performs the write,
and a token is refused if any argument changed in between.
An update, delete, io_cancel_move or io_return_mail first reads the record it
targets, so its preview (and prompt) names what will change — Delete iOffice
user 42 (Alice Smith) with her email, not just the id — and a token is also
refused if that record was modified after the preview. An id that does not exist
fails at that read, before anything is previewed.
| variable | default | |
|---|---|---|
MCP_CONFIRM_MODE | ask-user | What a write does on a client that cannot show a confirmation prompt (claude.ai, Claude Desktop). ask-user: two steps — the first call writes nothing and returns a preview plus a token, and the model must get your approval in chat before calling again with it. auto: the same two steps, but the model may use the token after reviewing the preview itself. refuse: writes are refused on such clients. A client that can show prompts (Claude Code) always gets the real prompt, unless MCP_CONFIRM_ELICITATION=off. An unrecognised value is treated as refuse. |
MCP_CONFIRM_ELICITATION | on | off never shows a confirmation prompt, so every client gets the MCP_CONFIRM_MODE behaviour. Set it for a client that says it can show prompts but never does (the write hangs — opencode 2.0.x). Any other value is treated as on, with a warning on stderr. |
MCP_CONFIRM_TTL_SECONDS | 600 | How long a token stays valid. |
MCP_CONFIRM_SECRET | random per process | Signing key; set it only if tokens must survive a server restart. |
Frequently asked questions
What is io.github.chrischall/ioffice-mcp?
iOffice workspace management for Claude — book rooms, manage visitors, maintenance tickets
How do I install io.github.chrischall/ioffice-mcp?
It runs on your machine. In Claude Code: claude mcp add ioffice-mcp -e 'IOFFICE_HOST=<IOFFICE_HOST>' -e 'IOFFICE_TOKEN=<your ioffice_token>' -e 'IOFFICE_USERNAME=<IOFFICE_USERNAME>' -e 'IOFFICE_PASSWORD=<your ioffice_password>' -- npx -y ioffice-mcp@3.2.6. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.chrischall/ioffice-mcp need an API key?
Yes. It expects IOFFICE_HOST, IOFFICE_TOKEN, IOFFICE_PASSWORD, which you set in its configuration.
Is io.github.chrischall/ioffice-mcp open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains io.github.chrischall/ioffice-mcp?
It is published by chrischall. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.