trackmcp
Back to directory
todevelopers

fogbugz-mcp

View on GitHub

MCP server for FogBugz — supports both XML API (legacy) and JSON API (v9+) with auto-detection. Works with on-premise and on-demand installations.

2 stars TypeScriptOthers Updated Jul 22, 2026
claudeclaude-codeclaude-coworkclaude-desktopfogbugzissue-trackermcpmcp-servermodel-context-protocolproject-management

Documentation

FogBugz MCP Server

A Model Context Protocol (MCP) server that connects AI assistants to a live FogBugz instance. Search and manage cases, track history, assign and resolve — all from a natural language conversation. Works with on-premise and on-demand FogBugz installations.

Features

  • Search and list cases using FogBugz query syntax (e.g. `project:Website status:Active`)
  • Read case details including full event and comment history
  • Create and update cases — set title, project, area, milestone, priority, and comments
  • Full lifecycle management — assign, resolve, reopen, and close cases
  • User, project, and area discovery — list people, categories, projects, milestones, and statuses
  • Create new projects directly from the conversation
  • Automatic API selection — detects your FogBugz version and switches between XML and JSON API automatically

Requirements

  • FogBugz (on-premise or on-demand)
  • Node.js 20 or later
  • A FogBugz API token

Getting a FogBugz API Token

You need an API token to authenticate the MCP server with FogBugz. There are two ways to obtain one:

Via the web UI

Go to Account & Settings → User Options and click the Create API Token link.

See the official guide: Create API Token using the FogBugz UI

Via API request

Send the following request (replace placeholders with your values):

code
https://[your-fogbugz-server]/api.asp?cmd=logon&email=[your-email]&password=[your-password]

The response will contain your API token.

See the official guide: Get an API Token using FogBugz API commands


AI Client Setup

MCP is an open standard — this server works with any MCP-compatible AI client. Configuration varies by client.

Claude Desktop ✓ (tested)

One-click install: Download the latest `.mcpb` package from the Releases page and open it — Claude Desktop will install and configure the server automatically, prompting you for your FogBugz URL and API token.

Manual configuration: Add to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):

json
{
  "mcpServers": {
    "fogbugz": {
      "command": "npx",
      "args": ["-y", "@todevs/fogbugz-mcp"],
      "env": {
        "FOGBUGZ_URL": "https://your-fogbugz-server.com",
        "FOGBUGZ_API_KEY": "your-api-token"
      }
    }
  }
}

Claude Code ✓ (tested)

Add to `.mcp.json` in your project root:

json
{
  "mcpServers": {
    "fogbugz": {
      "command": "npx",
      "args": ["-y", "@todevs/fogbugz-mcp"],
      "env": {
        "FOGBUGZ_URL": "https://your-fogbugz-server.com",
        "FOGBUGZ_API_KEY": "your-api-token"
      }
    }
  }
}

Other MCP-compatible clients

Any client that supports MCP stdio servers should work. Consult your client's documentation for how to register a stdio MCP server with environment variables. The server entry point is `npx @todevs/fogbugz-mcp` (or `node /path/to/dist/index.js` for a local build).


Tools

Case Management

ToolDescription
`create_case`Create a new case
`update_case`Update an existing case (title, comment, project, area, milestone, priority)
`assign_case`Assign a case to a user
`resolve_case`Resolve (mark as fixed/completed) a case
`reopen_case`Reopen a resolved or closed case
`close_case`Close a case

Search & View

ToolDescription
`search_cases`Search using FogBugz query syntax (e.g. `project:Website status:Active`)
`list_my_cases`List cases assigned to a user (defaults to current user)
`get_case`Get detailed case info including full event/comment history
`get_case_link`Get a direct URL to a case

Reference Data

ToolDescription
`list_people`List all users with IDs, names, and emails
`list_categories`List case categories (Bug, Feature Request, etc.)
`list_projects`List all active projects with IDs and names
`list_milestones`List milestones/fix-fors, optionally by project
`list_statuses`List case statuses with resolved flags, optionally by category
`view_project`Get detailed project information
`view_area`Get detailed area information
`create_project`Create a new project

Advanced

ToolDescription
`api_request`Generic XML API escape-hatch for commands not covered by dedicated tools.⚠️ WARNING: can execute any API command the configured key permits, including destructive operations (delete, edit users, bulk modify).

Usage Examples

Example 1: Finding open bugs in a project

You: "Show me all open bugs in the Website project assigned to nobody."

Claude calls: `search_cases` with query `project:Website status:Active assignedTo:nobody category:Bug`.

Result: A list of unassigned bugs with their IDs, titles, and creation dates — ready to triage or assign.


Example 2: Creating a case from a bug report

You: "Create a bug in the Mobile project titled 'Login button unresponsive on iOS 17', assign it to alice, and set priority to 2."

Claude calls: `create_case` with project, title, assignee, and priority set in a single call, then `get_case_link` to return a direct URL.

Result: New case created. Claude confirms the case number and provides a link.


Example 3: Resolving a case with a closing comment

You: "Resolve case 1042 and add a comment saying the fix was deployed in v3.5.1."

Claude calls: `resolve_case` with the case ID and a comment describing the fix.

Result: Case resolved. Claude confirms the status change and the comment was saved.


Example 4: Reviewing your team's workload

You: "What open cases does bob have right now?"

Claude calls: `list_people` to find Bob's user ID, then `list_my_cases` filtered to that user.

Result: A summary of Bob's active cases grouped by project, with priorities and due dates.


Example 5: Updating a case after a code review

You: "Move case 987 to the Backend project, change the milestone to v4.0, and leave a comment saying it was re-scoped after the architecture review."

Claude calls: `update_case` with the new project, milestone, and comment all set in one call.

Result: Case updated. Claude confirms each field change.


How It Works

This server implements the Model Context Protocol over stdio. The AI client translates natural language requests into FogBugz queries or API calls, invokes the appropriate tool, and presents the results. The server is a thin proxy — it passes requests directly to your FogBugz instance and returns the response.

API Auto-Detection

At startup the server automatically selects the right API client for your FogBugz instance:

1. Probes `/api.xml` to read the FogBugz version number.

2. If version ≥ 9, attempts to reach the JSON API (`/f/api/0/jsonapi`) — uses `FogBugzJsonClient` on success.

3. Falls back to `FogBugzXmlClient` (XML API via `/api.asp`) for version Note on text formatting: Plain text only is supported in descriptions and comments when connected to FogBugz 8.x via the XML API. HTML and Markdown are stored and displayed literally.


Configuration Reference

VariableRequiredDescription
`FOGBUGZ_URL`YesBase URL of your FogBugz instance (e.g. `https://company.fogbugz.com`)
`FOGBUGZ_API_KEY`YesFogBugz API token

Installation

Via npx (no install needed)

bash
# Latest stable release
npx @todevs/fogbugz-mcp

# Latest dev build (pre-release)
npx @todevs/fogbugz-mcp@dev

From source

bash
git clone https://github.com/todevelopers/fogbugz-mcp.git
cd fogbugz-mcp
npm install
npm run build
node dist/index.js https://your-fogbugz-server.com your-api-token

Development

bash
npm run dev    # run via ts-node (no build needed)
npm run build  # compile TypeScript to dist/
npm test       # run all Jest tests

Compatibility

  • FogBugz on-premise and on-demand (tested with FogBugz 8.8.53 via XML API)
  • Node.js 20+

Privacy Policy

This server does not collect, store, or transmit any data to ToDevelopers or any third party. All communication is directly between your AI client and your own FogBugz instance using the URL and credentials you provide. No usage data, case content, or credentials are sent anywhere other than your configured FogBugz server.

For complete privacy information, see the FogBugz Privacy Policy.

Acknowledgements

This project is based on the original work by Sarasvati Akari Lara-Almeida — thank you for the foundation.

License

MIT © Tomáš Gažovič, ToDevelopers s.r.o.

Frequently asked questions

What is fogbugz-mcp?

fogbugz-mcp is MCP server for FogBugz — supports both XML API (legacy) and JSON API (v9+) with auto-detection. Works with on-premise and on-demand installations.

How do I install fogbugz-mcp?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is fogbugz-mcp open source?

Yes — it is hosted on GitHub at https://github.com/todevelopers/fogbugz-mcp and has 2 stars.

Related MCP tools

IvanMurzakUnity-MCP

AI Skills, MCP Tools, and CLI for Unity Engine. Full AI develop and test loop. Use cli for quick setup. Efficient token usage, advanced tools. Any C# method may be turned into a tool by a single line. Works with Claude Code, Gemini, Copilot, Cursor and any other absolutely for free.

4,137 C#
aiai-integrationgame-development+16
KnockOutEZwigolo

The go-to web for your AI coding agent — local-first search, fetch, crawl & research over MCP. No API keys, no cloud, $0/query. Public beta.

4,906 TypeScript
mcpagentai+17
AVIDS2memorix

Open-source cross-agent memory layer for coding agents via MCP. Compatible with Claude Code, Codex, Cursor, Windsurf, Gemini CLI, Antigravity, OpenClaw, Hermes Agent, Oh-my-Pi, Pi, Copilot, Kiro, OpenCode, and Trae.

721 TypeScript
ai-codingclaude-codecopilot+17
taylorwilsdongoogle_workspace_mcp

Control Gmail, Google Calendar, Docs, Sheets, Slides, Chat, Forms, Tasks, Search & Drive with AI - Comprehensive Google Workspace MCP Server & CLI Tool

3,117 Python
aigmailgoogle-calendar+17
jgravellejcodemunch-mcp

Cut AI token costs 95%+ on code exploration. The leading MCP server for precise, symbol-level GitHub code retrieval via tree-sitter AST. Works with Claude Code, Cursor & any MCP client. 313B+ tokens saved.

2,651 Python
claudeclaude-codeai-coding+17
riponcmprojectmem

Open-source coding agent memory. Records issues, attempts, fixes and decisions, then warns your agent before it repeats an approach that already failed. Native MCP server for Claude Code, Cursor, Antigravity and Codex. 100% local, no cloud, no telemetry. MIT.

796 Python
ai-agentsai-memoryai-tools+17

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP