UNPKG

@superadnim/osint-mcp-server

Version:

Professional OSINT MCP Server for intelligence gathering with privacy protection

261 lines 6.4 kB
export interface OSINTTool { name: string; description: string; inputSchema: Record<string, unknown>; } export interface OSINTMCPServer { name: '@osint-tools/mcp-server'; version: '1.0.0'; capabilities: { tools: OSINTTool[]; notifications: boolean; logging: boolean; }; } export interface DataSource { id: string; name: string; type: 'people' | 'phone' | 'email' | 'domain' | 'social' | 'vehicle' | 'address'; tier: 1 | 2 | 3; rateLimit: RateLimitConfig; apiKey?: string; baseUrl: string; endpoints: SourceEndpoint[]; } export interface RateLimitConfig { requestsPerMinute: number; requestsPerHour: number; requestsPerDay: number; concurrent: number; } export interface SourceEndpoint { path: string; method: 'GET' | 'POST' | 'PUT' | 'DELETE'; parameters: Record<string, string>; rateLimit?: RateLimitConfig; } export interface PeopleSearchResult { target: { query: string; detected_type: string; confidence: number; }; demographics: { names: NameVariation[]; age_range?: string; gender?: string; ethnicity?: string; }; contact_info: { phones: PhoneNumber[]; emails: EmailAddress[]; addresses: Address[]; }; relatives: Person[]; associates: Person[]; social_profiles: SocialProfile[]; sources: DataSource[]; investigation_id: string; timestamp: string; } export interface NameVariation { first_name: string; middle_name?: string; last_name: string; full_name: string; nickname?: string; confidence: number; } export interface PhoneNumber { number: string; formatted: string; international: string; type: 'mobile' | 'landline' | 'voip' | 'toll_free'; confidence: number; last_seen?: string; } export interface EmailAddress { address: string; domain: string; is_valid: boolean; confidence: number; last_seen?: string; } export interface Address { street: string; city: string; state: string; zip_code: string; country: string; full_address: string; type: 'current' | 'previous' | 'business'; confidence: number; date_range?: string; } export interface Person { name: string; relationship?: string; age?: number; phones?: PhoneNumber[]; addresses?: Address[]; confidence: number; } export interface SocialProfile { platform: string; username: string; url: string; profile_data?: Record<string, unknown>; last_activity?: string; verification_status: boolean; confidence: number; } export interface PhoneLookupResult { phone_number: { original: string; formatted: string; international: string; national: string; e164: string; }; carrier_info: { name: string; type: 'mobile' | 'landline' | 'voip' | 'toll_free'; country: string; network_code?: string; }; location: { country: string; region: string; city?: string; timezone: string; coordinates?: { latitude: number; longitude: number; }; }; reputation: { spam_score: number; scam_reports: number; whitelist_status: boolean; last_reported: string; }; associated_accounts: SocialAccount[]; registered_services: string[]; historical_data: PhoneHistory[]; } export interface SocialAccount { platform: string; account_exists: boolean; profile_url?: string; confidence: number; } export interface PhoneHistory { carrier: string; date_range: string; confidence: number; } export interface EmailIntelResult { email_address: { address: string; local_part: string; domain: string; is_valid: boolean; is_disposable: boolean; is_business: boolean; }; domain_analysis: { mx_records: string[]; organization: string; creation_date: string; registrar: string; reputation_score: number; }; breach_analysis: { total_breaches: number; breaches: BreachRecord[]; exposed_data_types: string[]; latest_breach: string; risk_level: 'low' | 'medium' | 'high' | 'critical'; }; account_enumeration: { confirmed_accounts: PlatformAccount[]; possible_accounts: PlatformAccount[]; total_platforms_checked: number; }; deliverability: { accepts_mail: boolean; mailbox_full: boolean; catch_all: boolean; role_account: boolean; }; } export interface BreachRecord { name: string; date: string; description: string; data_types: string[]; verified: boolean; confidence: number; } export interface PlatformAccount { platform: string; username?: string; profile_url?: string; confirmed: boolean; confidence: number; last_seen?: string; } export interface InvestigationNode { id: string; type: string; content: string; metadata: Record<string, unknown>; confidence: number; source: string; timestamp: string; } export interface InvestigationConnection { id: string; from_node: string; to_node: string; relationship: string; strength: number; evidence: string[]; timestamp: string; } export interface Investigation { id: string; name: string; description?: string; nodes: InvestigationNode[]; connections: InvestigationConnection[]; created_at: string; updated_at: string; metadata: Record<string, unknown>; } export interface OSINTConfig { api: { timeout: number; retries: number; rateLimitEnabled: boolean; maxConcurrentRequests: number; }; privacy: { redactSSN: boolean; redactFinancial: boolean; gdprCompliance: boolean; dataRetentionHours: number; investigationTTL: number; }; logging: { level: 'debug' | 'info' | 'warn' | 'error'; structured: boolean; auditEnabled: boolean; }; sources: { apiKeys: Record<string, string>; enabledSources: string[]; tierLimits: Record<number, number>; }; } //# sourceMappingURL=osint-types.d.ts.map