Quickly build and deploy a context agent that makes your company discoverable and accessible to AI agents.
This 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.
A context agent that enables AI systems to query your company for:
- Company overview and mission
- Areas of focus, expertise, and services
- Contact information and external links
- Investment, hiring, or partnership details
- Any custom fields you define
- Node.js 18+ installed
- Basic familiarity with editing JSON/TypeScript files
- A GitHub account (for deployment)
-
Fork or download this repository
-
Clone to your local machine:
git clone <your-repo-url> cd <your-repo-name>
-
Install dependencies:
npm install
Update these fields with your company info:
{
"name": "your-company-mcp-server", // β Change this
"description": "MCP server for Your Company information", // β Change this
"author": "Your Company Name", // β Change this
"keywords": [
"mcp",
"model-context-protocol",
"your-company-name", // β Change this
"ai",
"typescript"
]
}
This is the main file you need to customize. Find the COMPANY_INFO
section (around line 10) and replace with your details:
const COMPANY_INFO = {
name: "Your Company Name", // β Change this
description: `Write a compelling description of your company here.
What do you do? What's your mission? What makes you unique?
This will be the main overview that AI systems will see.`, // β Change this
focus_areas: [ // β Change these
"Your Main Service/Product Area",
"Another Key Focus Area",
"Technology Stack You Use",
"Industry You Serve",
"Your Expertise Areas"
],
stage: "Description of your company stage", // β Change this
// Examples: "Early-stage startup", "Established company", "Fortune 500", etc.
approach: "Your company's approach/methodology", // β Change this
// Examples: "Customer-first design", "Agile development", "Data-driven decisions"
network: "Your network/partnerships description", // β Change this
// Examples: "Global partner network", "Industry associations", "Client base"
website: "https://yourcompany.com", // β Change this
contact: "hello@yourcompany.com" // β Change this
};
Find the server creation section (around line 31) and update:
const server = new McpServer({
name: "your-company-server", // β Change this
version: "1.0.0"
});
Update the server name for MCP client integration:
{
"mcpServers": {
"your-company": { // β Change this
"comment": "Example configuration for MCP clients - update with your company details",
"command": "node",
"args": ["dist/index.js"],
"env": {
"PORT": "3000"
}
}
}
}
-
Build the project:
npm run build
-
Start the server:
npm start
-
Test it works:
npm test
You should see your company information displayed for different categories!
-
Open MCP Inspector:
npx @modelcontextprotocol/inspector
-
In the inspector interface:
- Transport Type:
Streamable HTTP
- URL:
http://localhost:3000/mcp
- Click Connect
- Transport Type:
-
Test the
requestinfo
tool:- Try different categories:
"overview"
,"focus"
,"contact"
,"all"
- Verify your company information appears correctly
- Try different categories:
- Create Railway account: railway.app
- Connect your GitHub repo
- Deploy automatically - Railway detects the configuration
- Get your URL - Use
https://your-app.railway.app/mcp
for AI integration
docker build -t your-company-mcp .
docker run -p 3000:3000 your-company-mcp
The server works on any platform that supports Node.js. See DEPLOYMENT.md
for detailed instructions.
Your deployed MCP server is now ready for AI systems to connect to at: https://your-deployed-url.com/mcp
For advanced users who want to integrate with AI systems, see the configuration examples in examples/mcp-client-config.json
.
In src/index.ts
, you can add more cases to the switch statement:
case "pricing":
responseText = `${COMPANY_INFO.name} Pricing Information:\n\n[Your pricing details]`;
break;
case "team":
responseText = `${COMPANY_INFO.name} Team:\n\n[Your team information]`;
break;
You can add additional tools beyond requestinfo
:
server.tool(
"get_case_studies",
{
industry: z.string().optional().describe("Filter by industry")
},
async ({ industry }) => {
// Your implementation here
return {
content: [{
type: "text",
text: "Your case studies information"
}]
};
}
);
βββ src/
β βββ index.ts # Main server code (CUSTOMIZE THIS)
βββ examples/
β βββ mcp-client-config.json # MCP client config (CUSTOMIZE THIS)
β βββ test-client.ts # Test script
βββ package.json # Project info (CUSTOMIZE THIS)
βββ tsconfig.json # TypeScript config (NO CHANGES NEEDED)
βββ Dockerfile # Docker config (NO CHANGES NEEDED)
βββ Procfile # Railway config (NO CHANGES NEEDED)
βββ README.md # This file
- Make sure you ran
npm install
- Check that Node.js 18+ is installed
- Try
npm run build
first
- Make sure server is running (
npm start
) - Use the correct URL:
http://localhost:3000/mcp
- Check the server logs for errors
- Verify the deployment URL works:
https://your-url.com/health
- Make sure you're using the
/mcp
endpoint - Check CORS settings if accessing from browser
- Keep descriptions clear and concise - AI systems work better with well-structured information
- Test thoroughly - Use the inspector and test client to verify everything works
- Start simple - Get the basic info working before adding advanced features
- Monitor logs - Check server logs to debug issues
Congratulations! You now have a working, deployed MCP server for your company! Your server is:
β
Live and accessible - Running on the web with a public URL
β
MCP compliant - Ready for AI systems to discover and use
β
Production ready - Includes health checks, error handling, and proper deployment
β
Customizable - Easy to extend with more tools and information
This creates new possibilities for integrating your company information with AI systems and building innovative applications.
Happy building! π
Made with β€οΈ for the developer community