# lawrencehui/Citio [Health: Active]

**Category:** 🤖 Coding Agents  
**Repository:** https://github.com/lawrencehui/Citio  
**GitHub Stars:** 2  
**npm Downloads (last month):** 38  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/lawrencehui-citio

## Description
Self-hosted AI teammate in Slack: @mention it and Claude Code or Codex investigates CloudWatch logs, runs tests, and opens pull requests. The bundled MCP server holds all credentials (GitHub, AWS, Slack) so the agent never sees keys. One-command deploy to your own AWS. MIT.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "citio": {
    "command": "npx",
    "args": ["-y","@lawrencehui/citio"]
  }
}
```

## Documentation

## What lawrencehui/Citio MCP server does

lawrencehui/Citio MCP server provides the tool boundary for a self-hosted engineering assistant operated through Slack. Users can send a direct message or mention the bot in a channel, then ask it to investigate a defect, inspect logs, modify a repository, run tests, or prepare a pull request.

The execution engine is either Claude Code or OpenAI Codex. Citio handles the Slack interaction, task orchestration, provider session management, workspace setup, and access to external systems. The agent works through MCP tools instead of receiving raw GitHub, AWS, or Slack credentials.

Supported tasks described by the project include codebase investigation, file reads and writes, branch creation, command execution, CI status checks, CloudWatch log queries, context recall, and pull request creation. Command execution is restricted by an allowlist, and shell metacharacters are rejected.

## How it works

A Slack adapter first normalizes an incoming message. An AgentRunner then serializes work and maintains the provider session; the documented runtime permits one active task per container. Citio starts the Claude Code or Codex CLI with an MCP configuration that points it to the bundled server.

The agent requests repository, logging, and workflow operations through that MCP layer. Citio performs those operations with the credentials held in its own environment, so the provider CLI does not directly handle the underlying secrets. Progress can be streamed back into Slack, with output redaction described as part of the Slack workflow.

Persistent storage is optional. When AWS EFS is enabled, repositories, sessions, memory, and provider authentication can survive container redeployments.

## Setup and configuration

lawrencehui/Citio MCP server is packaged as a self-hosted container. The supplied deployment path targets AWS ECS Fargate, using Fargate Spot by default. The project also describes deployment to other hosts as future roadmap work rather than a currently shipped path.

The installer requires Node.js 22 or newer, Docker, AWS CLI v2, and Git on the host. AWS credentials must be configured for an account where Citio can deploy its resources. The container includes the Claude and Codex CLIs, GitHub CLI, and jq, so those tools do not need to be installed locally.

Before installation, provide an eligible Claude Max or Pro subscription, or a ChatGPT Go, Plus, or Pro subscription for Codex. An API key can be used as a fallback. You also need a Slack app and target channel ID, plus a GitHub fine-grained personal access token with contents-write and pull-requests-write access to the repositories it will modify.

## Tools and capabilities

The documented MCP capabilities include:

- Investigating a codebase and reading or writing files
- Creating branches and pull requests
- Running allowlisted commands
- Checking CI status
- Querying CloudWatch logs
- Recalling stored context
- Sending progress updates through the Slack workflow

The exact tool set may include additional tools beyond the examples listed in the README. GitHub, AWS, and Slack access is mediated by Citio rather than exposed as unrestricted credentials to the agent.

## Limitations and notes

lawrencehui/Citio MCP server is marked pre-1.0. The documented native deployment option is AWS ECS Fargate, and the runtime model allows one active task per container. Other hosting targets and a pay-per-use serverless mode are listed as roadmap items.

The project does not describe a standalone hosted service. Operators are responsible for their AWS account, Slack app, GitHub token, provider subscription or key, and deployment configuration. EFS persistence is optional, so behavior across redeployments depends on whether persistent storage is enabled.

_Full upstream README: https://allmcps.com/mcp/lawrencehui-citio/readme_

