dns/src/config/records.ts
David Soria Parra 43693809a4
Point .net and .org domains to mcp-redirect.pages.dev
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-02-17 23:01:24 +00:00

77 lines
3 KiB
TypeScript

import type { RecordType } from './utils';
export const DNS_RECORDS: Record<string, DnsRecordConfig[]> = {
'modelcontextprotocol.io': [
// Root domain
{ subdomain: '@', type: 'A', content: '76.76.21.21' },
// Spec subdomain
{ subdomain: 'spec', type: 'A', content: '76.76.21.21' },
// Registry
{ subdomain: 'registry', type: 'CNAME', content: 'prod.registry.modelcontextprotocol.io' },
{ subdomain: 'prod.registry', type: 'A', content: '34.61.200.254' },
{ subdomain: 'staging.registry', type: 'A', content: '35.222.36.75' },
{ subdomain: 'grafana.prod.registry', type: 'A', content: '34.61.200.254' },
{ subdomain: 'grafana.staging.registry', type: 'A', content: '35.222.36.75' },
// GitHub Pages sites
{ subdomain: 'blog', type: 'CNAME', content: 'modelcontextprotocol.github.io' },
{ subdomain: 'example-client', type: 'CNAME', content: 'modelcontextprotocol.github.io' },
{ subdomain: 'maintainers', type: 'CNAME', content: 'modelcontextprotocol.github.io' },
{ subdomain: 'static', type: 'CNAME', content: 'modelcontextprotocol.github.io' },
// Other subdomains
{ subdomain: 'example-server', type: 'CNAME', content: 'ghs.googlehosted.com' },
{ subdomain: 'meet', type: 'CNAME', content: 'mcp.meetable.org' },
// MX record for Google Workspace
{ subdomain: '@', type: 'MX', content: 'smtp.google.com', priority: 1 },
// SPF record
{ subdomain: '@', type: 'TXT', content: 'v=spf1 include:_spf.google.com ~all' },
// DKIM for Google Workspace
{
subdomain: 'google._domainkey',
type: 'TXT',
content:
'v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtwBNpASgdq3T9tXSFRh3tu9s6bLVBeGtug5Tv5f5D9K2G8n3Ov7KgR8IEyIgWaVuFf+z82NUBtXlDfKRxRu6s9ND+SqPkgVey2IVx4VuHHUJMAC1f4Wst7ZAUmyeo9lf6PpPb7xzr4nSVbN9jbIFDAajsCe+M9TYdkIU9PXdraYpIVc6b+vE7EaiaCdXNWHzIVjo4wFBz4UsNKG1UsO53GZNyXfnxFFPQppaNYEXOfblYtxgW4BhKpBQhT9fC07EKyoUApe2AC8rcX83HBOKKvISR6TbMruv5p82lz1veIcpixRkZfIFDlxMF66yzFs5qdfY8ztRHbri4kw4DVygmwIDAQAB',
},
// Google site verifications
{
subdomain: '@',
type: 'TXT',
content: 'google-site-verification=0jJ1JQ6pdBjRe2r6UCzi2RJbsjvglJUmekPb5rpUQXQ',
},
{
subdomain: '@',
type: 'TXT',
content: 'google-site-verification=UI0Tjq-ecUgNu3kFATkW87qcabX6kTljsbYjms2-FdQ',
},
// Other TXT verifications
{ subdomain: '@', type: 'TXT', content: 'czyymtp25a' },
{ subdomain: '_gh-modelcontextprotocol-o', type: 'TXT', content: '8f29e697fc' },
{
subdomain: '_github-pages-challenge-modelcontextprotocol.blog',
type: 'TXT',
content: '1d4b431f4dc23d532fd33da4596bcf',
},
],
'modelcontextprotocol.net': [
{ subdomain: '@', type: 'CNAME', content: 'mcp-redirect.pages.dev' },
],
'modelcontextprotocol.org': [
{ subdomain: '@', type: 'CNAME', content: 'mcp-redirect.pages.dev' },
],
};
interface DnsRecordConfig {
subdomain: string;
type: RecordType;
content: string;
ttl?: number;
priority?: number;
}