{"id":28544123,"url":"https://github.com/aidecentralized/hackathon","last_synced_at":"2025-07-27T10:17:14.730Z","repository":{"id":297639923,"uuid":"997057937","full_name":"aidecentralized/hackathon","owner":"aidecentralized","description":null,"archived":false,"fork":false,"pushed_at":"2025-06-06T14:38:15.000Z","size":41,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-06T15:35:20.659Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aidecentralized.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-05T22:17:29.000Z","updated_at":"2025-06-06T14:38:17.000Z","dependencies_parsed_at":"2025-06-06T15:47:29.277Z","dependency_job_id":null,"html_url":"https://github.com/aidecentralized/hackathon","commit_stats":null,"previous_names":["aidecentralized/hackathon"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidecentralized%2Fhackathon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidecentralized%2Fhackathon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidecentralized%2Fhackathon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidecentralized%2Fhackathon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aidecentralized","download_url":"https://codeload.github.com/aidecentralized/hackathon/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aidecentralized%2Fhackathon/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":258963771,"owners_count":22784879,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-06-09T22:06:50.275Z","updated_at":"2025-06-10T23:02:00.292Z","avatar_url":"https://github.com/aidecentralized.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Launch a Context Agent for Your Company via MCP and the NANDA Registry\n\n## **Company Agent Template**  \nQuickly build and deploy a context agent that makes your company discoverable and accessible to AI agents.\n\nThis template helps you create a context agent—a structured, AI-readable server that provides key information about your company. Once deployed, you can register it on the NANDA registry to make it accessible across the agentic web.\n\n## **What You’ll Build**  \nA context agent that enables AI systems to query your company for:\n\n- Company overview and mission  \n- Areas of focus, expertise, and services  \n- Contact information and external links  \n- Investment, hiring, or partnership details  \n- Any custom fields you define  \n\n## 📋 Prerequisites\n\n- Node.js 18+ installed\n- Basic familiarity with editing JSON/TypeScript files\n- A GitHub account (for deployment)\n\n## 🛠 Step-by-Step Setup Guide\n\n### Step 1: Get the Template\n\n1. **Fork or download this repository**\n2. **Clone to your local machine:**\n   ```bash\n   git clone \u003cyour-repo-url\u003e\n   cd \u003cyour-repo-name\u003e\n   ```\n\n3. **Install dependencies:**\n   ```bash\n   npm install\n   ```\n\n### Step 2: Customize for Your Company\n\n#### 📝 **File 1: `package.json` - Project Information**\n\nUpdate these fields with your company info:\n\n```json\n{\n  \"name\": \"your-company-mcp-server\",           // ← Change this\n  \"description\": \"MCP server for Your Company information\",  // ← Change this\n  \"author\": \"Your Company Name\",               // ← Change this\n  \"keywords\": [\n    \"mcp\",\n    \"model-context-protocol\", \n    \"your-company-name\",                       // ← Change this\n    \"ai\",\n    \"typescript\"\n  ]\n}\n```\n\n#### 🏢 **File 2: `src/index.ts` - Company Information**\n\nThis is the main file you need to customize. Find the `COMPANY_INFO` section (around line 10) and replace with your details:\n\n```typescript\nconst COMPANY_INFO = {\n  name: \"Your Company Name\",                   // ← Change this\n  \n  description: `Write a compelling description of your company here. \n  What do you do? What's your mission? What makes you unique? \n  This will be the main overview that AI systems will see.`,  // ← Change this\n  \n  focus_areas: [                               // ← Change these\n    \"Your Main Service/Product Area\",\n    \"Another Key Focus Area\", \n    \"Technology Stack You Use\",\n    \"Industry You Serve\",\n    \"Your Expertise Areas\"\n  ],\n  \n  stage: \"Description of your company stage\",  // ← Change this\n  // Examples: \"Early-stage startup\", \"Established company\", \"Fortune 500\", etc.\n  \n  approach: \"Your company's approach/methodology\",  // ← Change this\n  // Examples: \"Customer-first design\", \"Agile development\", \"Data-driven decisions\"\n  \n  network: \"Your network/partnerships description\",  // ← Change this\n  // Examples: \"Global partner network\", \"Industry associations\", \"Client base\"\n  \n  website: \"https://yourcompany.com\",          // ← Change this\n  contact: \"hello@yourcompany.com\"             // ← Change this\n};\n```\n\n#### 🤖 **File 3: `src/index.ts` - Server Name**\n\nFind the server creation section (around line 31) and update:\n\n```typescript\nconst server = new McpServer({\n  name: \"your-company-server\",                 // ← Change this\n  version: \"1.0.0\"\n});\n```\n\n#### 📱 **File 4: `examples/mcp-client-config.json` - MCP Client Configuration**\n\nUpdate the server name for MCP client integration:\n\n```json\n{\n  \"mcpServers\": {\n    \"your-company\": {                          // ← Change this\n      \"comment\": \"Example configuration for MCP clients - update with your company details\",\n      \"command\": \"node\",\n      \"args\": [\"dist/index.js\"],\n      \"env\": {\n        \"PORT\": \"3000\"\n      }\n    }\n  }\n}\n```\n\n### Step 3: Test Your Server\n\n1. **Build the project:**\n   ```bash\n   npm run build\n   ```\n\n2. **Start the server:**\n   ```bash\n   npm start\n   ```\n\n3. **Test it works:**\n   ```bash\n   npm test\n   ```\n\n   You should see your company information displayed for different categories!\n\n### Step 4: Test with MCP Inspector\n\n1. **Open MCP Inspector:**\n   ```bash\n   npx @modelcontextprotocol/inspector\n   ```\n\n2. **In the inspector interface:**\n   - Transport Type: `Streamable HTTP`\n   - URL: `http://localhost:3000/mcp`\n   - Click **Connect**\n\n3. **Test the `requestinfo` tool:**\n   - Try different categories: `\"overview\"`, `\"focus\"`, `\"contact\"`, `\"all\"`\n   - Verify your company information appears correctly\n\n## 🚀 Deployment Options\n\n### Option 1: Railway (Recommended - Free \u0026 Easy)\n\n1. **Create Railway account:** [railway.app](https://railway.app)\n2. **Connect your GitHub repo**\n3. **Deploy automatically** - Railway detects the configuration\n4. **Get your URL** - Use `https://your-app.railway.app/mcp` for AI integration\n\n### Option 2: Docker\n\n```bash\ndocker build -t your-company-mcp .\ndocker run -p 3000:3000 your-company-mcp\n```\n\n### Option 3: Other Platforms\n\nThe server works on any platform that supports Node.js. See `DEPLOYMENT.md` for detailed instructions.\n\n## 🤖 Ready for AI Integration\n\nYour deployed MCP server is now ready for AI systems to connect to at: `https://your-deployed-url.com/mcp`\n\nFor advanced users who want to integrate with AI systems, see the configuration examples in `examples/mcp-client-config.json`.\n\n## 🎨 Advanced Customization\n\n### Adding More Information Categories\n\nIn `src/index.ts`, you can add more cases to the switch statement:\n\n```typescript\ncase \"pricing\":\n  responseText = `${COMPANY_INFO.name} Pricing Information:\\n\\n[Your pricing details]`;\n  break;\n  \ncase \"team\":\n  responseText = `${COMPANY_INFO.name} Team:\\n\\n[Your team information]`;\n  break;\n```\n\n### Adding More Tools\n\nYou can add additional tools beyond `requestinfo`:\n\n```typescript\nserver.tool(\n  \"get_case_studies\",\n  {\n    industry: z.string().optional().describe(\"Filter by industry\")\n  },\n  async ({ industry }) =\u003e {\n    // Your implementation here\n    return {\n      content: [{\n        type: \"text\", \n        text: \"Your case studies information\"\n      }]\n    };\n  }\n);\n```\n\n## 📁 Project Structure\n\n```\n├── src/\n│   └── index.ts          # Main server code (CUSTOMIZE THIS)\n├── examples/\n│   ├── mcp-client-config.json # MCP client config (CUSTOMIZE THIS)\n│   └── test-client.ts     # Test script\n├── package.json           # Project info (CUSTOMIZE THIS)\n├── tsconfig.json         # TypeScript config (NO CHANGES NEEDED)\n├── Dockerfile            # Docker config (NO CHANGES NEEDED)\n├── Procfile             # Railway config (NO CHANGES NEEDED)\n└── README.md            # This file\n```\n\n## 🆘 Troubleshooting\n\n### Server won't start\n- Make sure you ran `npm install`\n- Check that Node.js 18+ is installed\n- Try `npm run build` first\n\n### Inspector can't connect\n- Make sure server is running (`npm start`)\n- Use the correct URL: `http://localhost:3000/mcp`\n- Check the server logs for errors\n\n### AI can't access deployed server\n- Verify the deployment URL works: `https://your-url.com/health`\n- Make sure you're using the `/mcp` endpoint\n- Check CORS settings if accessing from browser\n\n## 💡 Tips for Success\n\n1. **Keep descriptions clear and concise** - AI systems work better with well-structured information\n2. **Test thoroughly** - Use the inspector and test client to verify everything works\n3. **Start simple** - Get the basic info working before adding advanced features\n4. **Monitor logs** - Check server logs to debug issues\n\n## 🎉 You're Done!\n\nCongratulations! You now have a working, deployed MCP server for your company! Your server is:\n\n✅ **Live and accessible** - Running on the web with a public URL  \n✅ **MCP compliant** - Ready for AI systems to discover and use  \n✅ **Production ready** - Includes health checks, error handling, and proper deployment  \n✅ **Customizable** - Easy to extend with more tools and information\n\nThis creates new possibilities for integrating your company information with AI systems and building innovative applications.\n\n## 📚 Learn More\n\n- [Model Context Protocol Documentation](https://modelcontextprotocol.io/)\n- [MCP TypeScript SDK](https://github.com/modelcontextprotocol/typescript-sdk)\n- [NANDA: The Internet of AI Agents](https://nanda.media.mit.edu)\n\n---\n\n**Happy building! 🚀**\n\n*Made with ❤️ for the developer community* \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faidecentralized%2Fhackathon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faidecentralized%2Fhackathon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faidecentralized%2Fhackathon/lists"}