Development · MODEL CONTEXT PROTOCOL

gofireflyio firefly mcp

Firefly MCP

WHAT IT CONNECTS

What gofireflyio firefly mcp gives an AI Agent

  • 🔍 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
  • Node.js (v14 or higher)
  • npm or yarn
  • Firefly account with generated access keys
  • Using environment variables:
  • Using arguments:
  • Start the MCP server using one of the methods above
  • Use the Cursor extension to connect to the MCP server - see [Cursor Model Context Protocol documentation](https://docs.cursor.com/context/model-context-protocol)
  • Use natural language to query your resources
  • Fork the repository
  • Create your feature branch (`git checkout -b feature/amazing-feature`)
  • Commit your changes (`git commit -m 'feat: Add amazing feature'`)
  • Push to the branch (`git push origin feature/amazing-feature`)
  • Open a Pull Request

SECURITY

An MCP listing is not a security review

An MCP server may receive model context, credentials, local files, or permission to call external systems. Review its code, requested environment variables, network behavior, package provenance, and maintenance status before connecting it to an agent.

README

Repository documentation

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 (v20 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.

View README on GitHub

COMMUNITY

Save, rate, and discuss

Loading community data…