Agentic AI For Good Website
Agentic AI For Good Website
Ask AI about Agentic AI For Good Website
Powered by Claude Β· Grounded in docs
I know everything about Agentic AI For Good Website. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
Agentic AI For Good
π Live site: agenticaiforgood.com
What Is This?
Two things in one repo:
- Web catalog β Browse and search 100+ curated AI agent tools by use case, category, and stack
- MCP server β Search the catalog directly from Claude Desktop or Claude Code
The catalog lives in tools/*.yaml β anyone can add a tool via pull request.
Architecture
tools/*.yaml (open catalog)
β
GitHub Actions CI (validate + embed)
β
Supabase (PostgreSQL + pgvector)
β
Next.js 16 on Vercel
β
Claude via MCP (HTTP or npx)
Project Structure
Agentic-AI-For-Good-Website/
βββ tools/ # Open catalog β YAML files for each tool
βββ src/
β βββ app/ # Next.js App Router pages
β β βββ api/mcp/ # Hosted MCP server endpoint
β β βββ api/tools/ # Tool search & fetch APIs
β βββ components/ # React components (shadcn/ui)
β βββ lib/ # Supabase client, utils
β βββ views/ # Page-level view components
βββ scripts/ # Supabase sync, validation, embedding
βββ agentic-ai-for-good-mcp/ # npm package for MCP server
βββ supabase/migrations/ # Database schema (tools table, RLS, pgvector)
βββ .github/workflows/ # CI: validate-pr.yml, sync-on-merge.yml
Local Development
Prerequisites
- Node.js 20+
- Supabase free tier account
- OpenAI API key (optional β search falls back to keyword mode without it)
Setup
-
Clone and install
git clone https://github.com/nimit2801/Agentic-AI-For-Good-Website.git cd Agentic-AI-For-Good-Website npm install -
Environment variables
cp .env.example .env.localThen fill in
.env.local:Variable Where to get it Required? NEXT_PUBLIC_SUPABASE_URLSupabase dashboard β Settings β API β Yes NEXT_PUBLIC_SUPABASE_ANON_KEYSupabase dashboard β Settings β API β Yes SUPABASE_SERVICE_ROLE_KEYSupabase dashboard β Settings β API (keep secret) β Yes (for sync scripts) OPENAI_API_KEYhttps://platform.openai.com/api-keys β No (search falls back to keyword) NEXT_PUBLIC_SITE_URLhttp://localhost:3000(dev) or your production URLβ Yes (for MCP server) RESEND_API_KEYhttps://resend.com/api-keys β No (email features disabled without it) CRON_SECRETAny random string (for Vercel cron protection) β No (only needed in production) π‘ Minimum viable setup: Just the 3 Supabase vars +
NEXT_PUBLIC_SITE_URL. WithoutOPENAI_API_KEY, search uses PostgreSQL full-text search (verified insrc/app/api/tools/search/route.tsβ 3-tier fallback: semantic βkeyword_search_toolsRPC βilike). -
Set up Supabase
Run the schema SQL in your Supabase SQL editor (or use
supabase db pushif you have the CLI):# Copy the contents of supabase/migrations/*.sql and run in Supabase SQL EditorThis creates:
toolstable with pgvector column for embeddingskeyword_search_toolsRPC function for full-text search- Row Level Security policies
-
Seed tools (optional)
npx tsx scripts/sync-to-supabase.tsThis reads
tools/*.yaml, generates embeddings (ifOPENAI_API_KEYis set), and inserts into Supabase. -
Start dev server
npm run dev
Running Tests
npm test # Run all 49 tests
npm run test:coverage # With coverage report
Tests use Vitest + @testing-library/react.
MCP Server
The catalog is accessible via the Model Context Protocol:
Claude CLI (recommended)
Add at user level (global across all projects):
claude mcp add --scope user --transport http agenticaiforgood https://agenticaiforgood.com/api/mcp
Or add at project level only:
claude mcp add --scope project --transport http agenticaiforgood https://agenticaiforgood.com/api/mcp
Hosted HTTP (manual config)
Add to Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on Mac):
{
"mcpServers": {
"agentic-ai-for-good": {
"url": "https://agenticaiforgood.com/api/mcp"
}
}
}
Or Claude Code config (~/.claude/settings.json):
{
"mcpServers": {
"agentic-ai-for-good": {
"url": "https://agenticaiforgood.com/api/mcp"
}
}
}
npx (local fallback)
{
"mcpServers": {
"agentic-ai-for-good": {
"command": "npx",
"args": ["-y", "agentic-ai-for-good-mcp"]
}
}
}
Available MCP Tools
| Tool | Description |
|---|---|
search_tools | Semantic or keyword search across the catalog |
get_tool_detail | Fetch full details for a specific tool by slug |
suggest_for_stack | Get tool recommendations based on your tech stack description |
whats_new | List recently added tools (default: last 7 days) |
Contributing
Adding a Tool (5 min)
See CONTRIBUTING.md for the full guide. Quick version:
- Fork this repo
- Create
tools/your-tool-name.yaml(copy an existing file as a template) - Fill in: name, description, category, tags, URLs, pricing
- Run
npm testto validate - Create PR to
mainβ use the "Add a tool" PR template
Bug Reports / Feature Requests
Open an issue: https://github.com/nimit2801/Agentic-AI-For-Good-Website/issues
Code Contributions
- Fork β create branch from
main - Make changes β
npm testmust pass - Create PR
See CODE_OF_CONDUCT.md for community guidelines.
Tech Stack
| Layer | Technology |
|---|---|
| Framework | Next.js 16 (App Router, Turbopack) |
| Styling | Tailwind CSS 4 + shadcn/ui |
| Database | Supabase (PostgreSQL + pgvector) |
| Search | OpenAI embeddings + pgvector (falls back to PostgreSQL FTS) |
| MCP Transport | HTTP (stateless) via @modelcontextprotocol/sdk |
| Resend + React Email | |
| Tests | Vitest + @testing-library/react |
| Deployment | Vercel |
Deployment
One-Click Deploy
Manual Setup Checklist
- Create Vercel project linked to your fork
- Add environment variables in Vercel dashboard (all 7 from
.env.example) - Set GitHub Actions secrets (for CI):
SUPABASE_URL(β οΈ noNEXT_PUBLIC_prefix for Actions)SUPABASE_SERVICE_ROLE_KEYOPENAI_API_KEYRESEND_API_KEY
- Deploy
β οΈ Gotchas for Forks
- GitHub Actions secret name mismatch: CI uses
secrets.SUPABASE_URL(no prefix), but the browser/Next.js app usesNEXT_PUBLIC_SUPABASE_URL. Set both in their respective places (GitHub secrets vs Vercel env vars). - Supabase image hostname:
next.config.tshardcodesosgxxcxbmwoprjbjgifm.supabase.coinimages.remotePatterns. Update this to your own Supabase project ID if you're using your own Supabase instance.
License
This project uses a split license:
- Source code: MIT License β see LICENSE-CODE
- Tool catalog (
tools/): Creative Commons BY-NC-SA 4.0 β see LICENSE-CATALOG
TL;DR:
- β Use the code however you want (including commercially)
- β Share and adapt the catalog for non-commercial use
- β Can't resell the catalog or embed it in commercial products without permission
See LICENSE for full details and what this means for developers, researchers, and companies.
Security
See SECURITY.md for vulnerability reporting.
Built with β€οΈ to make AI agent development more accessible.
