Firefly MCP Server
by gofireflyio
The Firefly MCP (Model Context Protocol) server 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.
Last updated: N/A
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:
- Using environment variables:
FIREFLY_ACCESS_KEY=your_access_key FIREFLY_SECRET_KEY=your_secret_key npx @fireflyai/firefly-mcp
- 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
- 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
- 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
https://github.com/user-attachments/assets/0986dff5-d433-4d82-9564-876b8215b61e
Contributing
- 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
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.