firefly-mcp

MCP.Pizza Chef: gofireflyio

Firefly MCP is a TypeScript-based server that integrates with the Firefly platform to discover, manage, and convert cloud and SaaS resources into Infrastructure as Code. It supports secure authentication and seamless integration with LLMs like Claude and Cursor, enabling efficient resource management across multiple accounts.

Use This MCP server To

Discover resources across multiple cloud and SaaS accounts Convert discovered resources into Infrastructure as Code automatically Manage cloud and SaaS resources securely with access keys Integrate resource data with LLMs like Claude and Cursor Automate infrastructure documentation from live resource states

README

Firefly

Firefly MCP Server

The Firefly MCP (Model Context Protocol) server is a TypeScript-based server that enables seamless integration with the Firefly platform. It allows you to discover, manage, and codify resources across your Cloud and SaaS accounts connected to Firefly.

Features

  • 🔍 Resource Discovery: Find any resource in your Cloud and SaaS accounts
  • 📝 Resource Codification: Convert discovered resources into Infrastructure as Code
  • 🔐 Secure Authentication: Uses FIREFLY_ACCESS_KEY and FIREFLY_SECRET_KEY for secure communication
  • 🚀 Easy Integration: Works seamlessly with Claude and Cursor

Prerequisites

  • Node.js (v14 or higher)
  • npm or yarn
  • Firefly account with generated access keys

Installation

You can run the Firefly MCP server directly using NPX:

npx @fireflyai/firefly-mcp

Environment Variables

You can provide your Firefly credentials in two ways:

  1. Using environment variables:
FIREFLY_ACCESS_KEY=your_access_key FIREFLY_SECRET_KEY=your_secret_key npx @fireflyai/firefly-mcp
  1. Using arguments:
npx @fireflyai/firefly-mcp --access-key your_access_key --secret-key your_secret_key

Usage

Stdio

Update the mcp.json file with the following:

{
  "mcpServers": {
    "firefly": {
      "command": "npx",
      "args": ["-y", "@fireflyai/firefly-mcp"],
      "env": {
        "FIREFLY_ACCESS_KEY": "your_access_key",
        "FIREFLY_SECRET_KEY": "your_secret_key"
      }
    }
  }
}

Run the MCP server using one of the methods above with the following command:

npx @fireflyai/firefly-mcp --sse --port 6001

Update the mcp.json file with the following:

{
  "mcpServers": {
    "firefly": {
      "url": "http://localhost:6001/sse"
    }
  }
}

Using with Cursor

  1. Start the MCP server using one of the methods above
  2. Use the Cursor extension to connect to the MCP server - see Cursor Model Context Protocol documentation
  3. Use natural language to query your resources

Example:

Prompt
Find all "ubuntu-prod" EC2 instance in 123456789012 AWS account and codify it into Terraform
Response
resource "aws_instance" "ubuntu-prod" {
  ami           = "ami-0c55b159cbfafe1f0"
  instance_type = "t3.micro"
}

Demo

Demo.mov

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'feat: Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

For support, please visit Firefly's documentation or create an issue in this repository.

firefly-mcp FAQ

How do I install the Firefly MCP server?
You can install and run it directly using NPX with the command `npx @fireflyai/firefly-mcp`.
What are the prerequisites for running Firefly MCP?
You need Node.js v14 or higher, npm or yarn, and a Firefly account with access keys.
How does Firefly MCP authenticate securely?
It uses FIREFLY_ACCESS_KEY and FIREFLY_SECRET_KEY environment variables for secure communication.
Can Firefly MCP integrate with multiple LLM providers?
Yes, it works seamlessly with Claude, Cursor, and can be adapted for others like OpenAI and Gemini.
What programming language is Firefly MCP built with?
It is built using TypeScript for robust and scalable server implementation.
How does Firefly MCP help with Infrastructure as Code?
It codifies discovered cloud and SaaS resources into Infrastructure as Code automatically.
Is Firefly MCP suitable for managing multi-cloud environments?
Yes, it is designed to discover and manage resources across various cloud and SaaS accounts.
What environment variables are required to run Firefly MCP?
You must set FIREFLY_ACCESS_KEY and FIREFLY_SECRET_KEY for authentication.